SlideShare a Scribd company logo
1 of 21
Download to read offline
Sistemas de Información II
Tema 7. Almacenamiento
físico
Bibliografía:
Elmasri y Navathe: “Fundamentos de Sistemas de Bases de
  Datos”
      3ª edición, 2002 (Capítulo 5).
Garcia-Molina, Ullman y Widom: “Database systems: the
  complete book”. Prentice-Hall (Capítulo 11).

                       Carlos Castillo
                         UPF – 2007

                                                          1
Almacenamiento físico
Objetivo DBMS = almacenar datos
Implementación
 Requiere conocer en detalle el
 almacenamiento de datos en un computador




                                        2
Medios de almacenamiento
Primario
  Registros de CPU
  Caché de CPU
  Memoria volátil
Secundario
  Discos magnéticos
  Discos ópticos
Terciario
  Cinta y bancos de cinta


                             3
Jerarquía de memoria

                  Más barato (por byte)
                  Más lento
     Cinta
                  Persistente
 Disco óptico


Disco magnético


 Memoria RAM

                  Más costoso (por byte)
 Memoria caché
                  Más rápido
                  Volátil               4
En el caso de una BD


     Cinta
                  Respaldos de los datos
 Disco óptico

                  Log de transacciones
Disco magnético   Datos de las tablas

 Memoria RAM
                  Optimización de consultas
                  Copia del esquema
 Memoria caché

                                           5
Disco y memoria



         Disco magnético
Memoria virtual – Sistema de Archivos




           Memoria RAM




                                        6
Buffers
  Tamaño de página = 4Kb


                            Páginas de disco



                            Buffers en memoria




Desde memoria secundaria es imposible leer
           físicamente 1 bit

                                                 7
Discos magnéticos




                    8
Disco magnético
            (platter)

                          Cara del disc




Metal                        Plástico




                                   9
Velocidad de rotación
Velocidad rotacional es constante (7k-
10k rpm)
  La aguja va más rápido en el borde del disco
  La densidad de información es menor en el
  borde
  La tasa de transferencia es igual para todas
  las pistas




                                                 10
Paquete de discos (ej.: 5­10)
                                      Pista
                                      Track

                                      Cilindro=
                                      Pista en
                                      todos los
                                      discos




      Gira completo al mismo tiempo
                                              11
Cabezal lectura/escritura




                            12
Sectores y clusters




Sectores incluyen gaps, alrededor del 10% del disco
que no está magnetizado y ayuda a encontrar los secto
                                                  13
Tiempo lectura
 Latencia
   15-45 mseg
   Tiempo de búsqueda (mover cabezal) 10-
   40ms
   Tiempo de rotación (esperar disco) 5ms
 Transferencia
   1-2 mseg por bloque


Tiempo escritura = Tiempo lectura
Tiempo modificación = 2 x Tiempo lectura
                                            14
Fragmentación
Bloques definidos durante el formateo
Se busca localizar contiguamente los
bloques en disco




Estrategia en memoria secundaria:
       evitar acceso aleatorio

                                        15
Ejemplo: ordenar en disco
Supuesto: registros en disco
  Fichero 'datos.dat'
  10.000.000 de registros, cada registro de
  1Kb, total 10 Gb de datos
  Tenemos solo 1Gb de memoria
¿Qué hacer?
  Usar quicksort => acceso aleatorio a disco




                                               16
Ordenar fragmentos
Idea: leer 1Gb de datos a la vez a
memoria
  Leer 1.000.000 de registros a la vez
  Ordenarlos en memoria usando quicksort
  Generar archivos temporales
  independientes
    sort01.dat ... sort10.dat
¿Y ahora?
  No podemos leer sort01.dat y
  sort02.dat a la vez y mezclarlos ... cada
  uno pesa 1Gb
                                              17
Mezclar fragmentos
Memoria




          01   02   03   04                10
 Disco




           Los primeros 100Kb de cada fichero
           elegir mayor valor y grabar a disco

                                                 18
Costo en tiempo
 Leer cada bloque desde disco, secuencial =
 1
 Ordenar en memoria = 0
   El tiempo que demora eso es mucho menor
 Grabar cada bloque a disco, secuencial = 1
 Leer la parte superior de cada bloque = 1
   No es exactamente secuencial
 Escribir a disco, secuencial = 1
Costo tiempo aprox. 4 veces lo que tarda
          leer el fichero original
                                             19
Costo en espacio
Espacio original: no se cuenta
Espacio para archivos temporales
  1 vez tamaño del original
Espacio para archivo de salida
  1 vez tamaño del original
   Costo espacio aprox. 2 veces el
     tamaño del fichero original
      ¡20Gb libres para ordenar 10Gb!
Podríamos ahorrar (ej.: borrar el original
una vez que tenemos los temporales) –
aunque es un poco arriesgado                 20
Resumen
Leer y escribir en disco es lo más lento
  Evitar acceso aleatorio
  Usar acceso secuencial




                                           21

More Related Content

What's hot

Mapa mental de memoria virtual
Mapa mental de memoria virtualMapa mental de memoria virtual
Mapa mental de memoria virtual
jorge77712
 
Servicios de los Sistemas Operativos para la Gestion de Procesos
Servicios de los Sistemas Operativos para la Gestion de ProcesosServicios de los Sistemas Operativos para la Gestion de Procesos
Servicios de los Sistemas Operativos para la Gestion de Procesos
Amandita_Jiss
 
Administración de memoria con listas enlazadas
Administración de memoria con listas enlazadasAdministración de memoria con listas enlazadas
Administración de memoria con listas enlazadas
69johan69
 
Gestion de memoria
Gestion de memoriaGestion de memoria
Gestion de memoria
ALASBLANKS
 
SICRONIZACION DE PROCESOS
SICRONIZACION DE PROCESOSSICRONIZACION DE PROCESOS
SICRONIZACION DE PROCESOS
lorenapardo
 
Sistemas operativos ciclo 2 - capítulo 3
Sistemas operativos   ciclo 2 - capítulo 3Sistemas operativos   ciclo 2 - capítulo 3
Sistemas operativos ciclo 2 - capítulo 3
Ing. Alexis Rocha, MGTI
 

What's hot (20)

Mapa mental de memoria virtual
Mapa mental de memoria virtualMapa mental de memoria virtual
Mapa mental de memoria virtual
 
Système RAID
Système RAIDSystème RAID
Système RAID
 
Servicios de los Sistemas Operativos para la Gestion de Procesos
Servicios de los Sistemas Operativos para la Gestion de ProcesosServicios de los Sistemas Operativos para la Gestion de Procesos
Servicios de los Sistemas Operativos para la Gestion de Procesos
 
Tema manejo de la entrada
Tema manejo de la entradaTema manejo de la entrada
Tema manejo de la entrada
 
Cache memory
Cache memoryCache memory
Cache memory
 
Base De Datos Activas Pro
Base De Datos Activas ProBase De Datos Activas Pro
Base De Datos Activas Pro
 
Cache memory
Cache memory Cache memory
Cache memory
 
Administración de memoria con listas enlazadas
Administración de memoria con listas enlazadasAdministración de memoria con listas enlazadas
Administración de memoria con listas enlazadas
 
2.2 y 2.3
2.2 y 2.32.2 y 2.3
2.2 y 2.3
 
Gestion de memoria
Gestion de memoriaGestion de memoria
Gestion de memoria
 
SICRONIZACION DE PROCESOS
SICRONIZACION DE PROCESOSSICRONIZACION DE PROCESOS
SICRONIZACION DE PROCESOS
 
Relojes
RelojesRelojes
Relojes
 
Gestion memoria windows
Gestion memoria windowsGestion memoria windows
Gestion memoria windows
 
Magnetic disk
Magnetic diskMagnetic disk
Magnetic disk
 
Unidad 2 concepto de Programa,Proceso y Procesador
Unidad 2  concepto de Programa,Proceso y ProcesadorUnidad 2  concepto de Programa,Proceso y Procesador
Unidad 2 concepto de Programa,Proceso y Procesador
 
Sistemas operativos ciclo 2 - capítulo 3
Sistemas operativos   ciclo 2 - capítulo 3Sistemas operativos   ciclo 2 - capítulo 3
Sistemas operativos ciclo 2 - capítulo 3
 
deadlok- interbloqueos
deadlok- interbloqueosdeadlok- interbloqueos
deadlok- interbloqueos
 
Operating Systems Part III-Memory Management
Operating Systems Part III-Memory ManagementOperating Systems Part III-Memory Management
Operating Systems Part III-Memory Management
 
Magnetic disk
Magnetic diskMagnetic disk
Magnetic disk
 
Operaciones Sobre Procesos
Operaciones Sobre ProcesosOperaciones Sobre Procesos
Operaciones Sobre Procesos
 

Viewers also liked (11)

Almacenamiento en bases de datos
Almacenamiento en bases de datosAlmacenamiento en bases de datos
Almacenamiento en bases de datos
 
estructuras de almacenamiento y diferentes medios de almacenamiento de datos.
estructuras de almacenamiento y diferentes medios de almacenamiento de datos.estructuras de almacenamiento y diferentes medios de almacenamiento de datos.
estructuras de almacenamiento y diferentes medios de almacenamiento de datos.
 
Almacenamiento De Datos
Almacenamiento De DatosAlmacenamiento De Datos
Almacenamiento De Datos
 
Almacenamiento en servicios de alimentación
Almacenamiento  en servicios de alimentaciónAlmacenamiento  en servicios de alimentación
Almacenamiento en servicios de alimentación
 
Buenas practicas de almacenamiento
Buenas practicas de almacenamiento Buenas practicas de almacenamiento
Buenas practicas de almacenamiento
 
¡Que es el marketing?
¡Que es el marketing?¡Que es el marketing?
¡Que es el marketing?
 
Qué es marketing?
Qué es marketing?Qué es marketing?
Qué es marketing?
 
Power-Point-Marketing I
Power-Point-Marketing IPower-Point-Marketing I
Power-Point-Marketing I
 
Marketing ppt
Marketing pptMarketing ppt
Marketing ppt
 
Tipos de almacenamiento
Tipos de almacenamientoTipos de almacenamiento
Tipos de almacenamiento
 
Metodos de almacenamiento
Metodos de almacenamientoMetodos de almacenamiento
Metodos de almacenamiento
 

Similar to Bases de Datos - Parte 7/10 Almacenamiento físico

Similar to Bases de Datos - Parte 7/10 Almacenamiento físico (20)

Diseño fisico bases datos 2
Diseño fisico bases datos 2Diseño fisico bases datos 2
Diseño fisico bases datos 2
 
Almacenamieto magnetico
Almacenamieto magneticoAlmacenamieto magnetico
Almacenamieto magnetico
 
Disco duro bases datos
Disco duro bases datosDisco duro bases datos
Disco duro bases datos
 
disco duro
disco durodisco duro
disco duro
 
Unidad de disco duro
Unidad de disco duroUnidad de disco duro
Unidad de disco duro
 
Disco Duro
Disco DuroDisco Duro
Disco Duro
 
Disco Duro
Disco DuroDisco Duro
Disco Duro
 
Disco Duro
Disco DuroDisco Duro
Disco Duro
 
Francisco chiluisa
Francisco chiluisaFrancisco chiluisa
Francisco chiluisa
 
Discos duros
Discos durosDiscos duros
Discos duros
 
Disco duro 11°C Tecnología.pptx
Disco duro 11°C Tecnología.pptxDisco duro 11°C Tecnología.pptx
Disco duro 11°C Tecnología.pptx
 
Disco rigidos gala.
Disco rigidos gala.Disco rigidos gala.
Disco rigidos gala.
 
PresentacióN Lleli Disco Duro
PresentacióN Lleli Disco DuroPresentacióN Lleli Disco Duro
PresentacióN Lleli Disco Duro
 
Disco rígido... mariana
Disco rígido... marianaDisco rígido... mariana
Disco rígido... mariana
 
Jonathan 103
Jonathan 103Jonathan 103
Jonathan 103
 
Unidades de Almacenamiento - Arquitectura de PC
Unidades de Almacenamiento - Arquitectura de PCUnidades de Almacenamiento - Arquitectura de PC
Unidades de Almacenamiento - Arquitectura de PC
 
Disco duro
Disco duroDisco duro
Disco duro
 
Dispositivos de almacenamiento
Dispositivos de almacenamientoDispositivos de almacenamiento
Dispositivos de almacenamiento
 
Medios de almacenamiento
Medios de almacenamientoMedios de almacenamiento
Medios de almacenamiento
 
N4 lección09
N4 lección09N4 lección09
N4 lección09
 

More from Carlos Castillo (ChaTo)

More from Carlos Castillo (ChaTo) (20)

Finding High Quality Content in Social Media
Finding High Quality Content in Social MediaFinding High Quality Content in Social Media
Finding High Quality Content in Social Media
 
When no clicks are good news
When no clicks are good newsWhen no clicks are good news
When no clicks are good news
 
Socia Media and Digital Volunteering in Disaster Management @ DSEM 2017
Socia Media and Digital Volunteering in Disaster Management @ DSEM 2017Socia Media and Digital Volunteering in Disaster Management @ DSEM 2017
Socia Media and Digital Volunteering in Disaster Management @ DSEM 2017
 
Detecting Algorithmic Bias (keynote at DIR 2016)
Detecting Algorithmic Bias (keynote at DIR 2016)Detecting Algorithmic Bias (keynote at DIR 2016)
Detecting Algorithmic Bias (keynote at DIR 2016)
 
Discrimination Discovery
Discrimination DiscoveryDiscrimination Discovery
Discrimination Discovery
 
Fairness-Aware Data Mining
Fairness-Aware Data MiningFairness-Aware Data Mining
Fairness-Aware Data Mining
 
Big Crisis Data for ISPC
Big Crisis Data for ISPCBig Crisis Data for ISPC
Big Crisis Data for ISPC
 
Databeers: Big Crisis Data
Databeers: Big Crisis DataDatabeers: Big Crisis Data
Databeers: Big Crisis Data
 
Observational studies in social media
Observational studies in social mediaObservational studies in social media
Observational studies in social media
 
Natural experiments
Natural experimentsNatural experiments
Natural experiments
 
Content-based link prediction
Content-based link predictionContent-based link prediction
Content-based link prediction
 
Link prediction
Link predictionLink prediction
Link prediction
 
Recommender Systems
Recommender SystemsRecommender Systems
Recommender Systems
 
Graph Partitioning and Spectral Methods
Graph Partitioning and Spectral MethodsGraph Partitioning and Spectral Methods
Graph Partitioning and Spectral Methods
 
Finding Dense Subgraphs
Finding Dense SubgraphsFinding Dense Subgraphs
Finding Dense Subgraphs
 
Graph Evolution Models
Graph Evolution ModelsGraph Evolution Models
Graph Evolution Models
 
Link-Based Ranking
Link-Based RankingLink-Based Ranking
Link-Based Ranking
 
Text Indexing / Inverted Indices
Text Indexing / Inverted IndicesText Indexing / Inverted Indices
Text Indexing / Inverted Indices
 
Indexing
IndexingIndexing
Indexing
 
Text Summarization
Text SummarizationText Summarization
Text Summarization
 

Bases de Datos - Parte 7/10 Almacenamiento físico

  • 1. Sistemas de Información II Tema 7. Almacenamiento físico Bibliografía: Elmasri y Navathe: “Fundamentos de Sistemas de Bases de Datos” 3ª edición, 2002 (Capítulo 5). Garcia-Molina, Ullman y Widom: “Database systems: the complete book”. Prentice-Hall (Capítulo 11). Carlos Castillo UPF – 2007 1
  • 2. Almacenamiento físico Objetivo DBMS = almacenar datos Implementación Requiere conocer en detalle el almacenamiento de datos en un computador 2
  • 3. Medios de almacenamiento Primario Registros de CPU Caché de CPU Memoria volátil Secundario Discos magnéticos Discos ópticos Terciario Cinta y bancos de cinta 3
  • 4. Jerarquía de memoria Más barato (por byte) Más lento Cinta Persistente Disco óptico Disco magnético Memoria RAM Más costoso (por byte) Memoria caché Más rápido Volátil 4
  • 5. En el caso de una BD Cinta Respaldos de los datos Disco óptico Log de transacciones Disco magnético Datos de las tablas Memoria RAM Optimización de consultas Copia del esquema Memoria caché 5
  • 6. Disco y memoria Disco magnético Memoria virtual – Sistema de Archivos Memoria RAM 6
  • 7. Buffers Tamaño de página = 4Kb Páginas de disco Buffers en memoria Desde memoria secundaria es imposible leer físicamente 1 bit 7
  • 9. Disco magnético (platter) Cara del disc Metal Plástico 9
  • 10. Velocidad de rotación Velocidad rotacional es constante (7k- 10k rpm) La aguja va más rápido en el borde del disco La densidad de información es menor en el borde La tasa de transferencia es igual para todas las pistas 10
  • 11. Paquete de discos (ej.: 5­10) Pista Track Cilindro= Pista en todos los discos Gira completo al mismo tiempo 11
  • 13. Sectores y clusters Sectores incluyen gaps, alrededor del 10% del disco que no está magnetizado y ayuda a encontrar los secto 13
  • 14. Tiempo lectura Latencia 15-45 mseg Tiempo de búsqueda (mover cabezal) 10- 40ms Tiempo de rotación (esperar disco) 5ms Transferencia 1-2 mseg por bloque Tiempo escritura = Tiempo lectura Tiempo modificación = 2 x Tiempo lectura 14
  • 15. Fragmentación Bloques definidos durante el formateo Se busca localizar contiguamente los bloques en disco Estrategia en memoria secundaria: evitar acceso aleatorio 15
  • 16. Ejemplo: ordenar en disco Supuesto: registros en disco Fichero 'datos.dat' 10.000.000 de registros, cada registro de 1Kb, total 10 Gb de datos Tenemos solo 1Gb de memoria ¿Qué hacer? Usar quicksort => acceso aleatorio a disco 16
  • 17. Ordenar fragmentos Idea: leer 1Gb de datos a la vez a memoria Leer 1.000.000 de registros a la vez Ordenarlos en memoria usando quicksort Generar archivos temporales independientes sort01.dat ... sort10.dat ¿Y ahora? No podemos leer sort01.dat y sort02.dat a la vez y mezclarlos ... cada uno pesa 1Gb 17
  • 18. Mezclar fragmentos Memoria 01 02 03 04 10 Disco Los primeros 100Kb de cada fichero elegir mayor valor y grabar a disco 18
  • 19. Costo en tiempo Leer cada bloque desde disco, secuencial = 1 Ordenar en memoria = 0 El tiempo que demora eso es mucho menor Grabar cada bloque a disco, secuencial = 1 Leer la parte superior de cada bloque = 1 No es exactamente secuencial Escribir a disco, secuencial = 1 Costo tiempo aprox. 4 veces lo que tarda leer el fichero original 19
  • 20. Costo en espacio Espacio original: no se cuenta Espacio para archivos temporales 1 vez tamaño del original Espacio para archivo de salida 1 vez tamaño del original Costo espacio aprox. 2 veces el tamaño del fichero original ¡20Gb libres para ordenar 10Gb! Podríamos ahorrar (ej.: borrar el original una vez que tenemos los temporales) – aunque es un poco arriesgado 20
  • 21. Resumen Leer y escribir en disco es lo más lento Evitar acceso aleatorio Usar acceso secuencial 21