Está en la página 1de 25

1

UNIDAD 1
ALMACENAMIENTO DE
DATOS
2
1.1 Dispositivos de Almacenamiento
1.2 Discos Magnéticos
1.3 Representación de Datos
Temario
3
Memoria Caché
Memoria Principal
Discos Magnéticos
Almacenamiento Terciario
Dispositivos de Almacenamiento
Jerarquía de Almacenamiento
4
Dispositivos de Almacenamiento
Jerarquía de Almacenamiento
Memoria Caché
• Forma de almacenamiento más rápida y costosa.
• Tamaño pequeño.
• Responsabilidad del sistema operativo.
5
Memoria Principal
• Memoria rápida, dirigida a satisfacer los pedidos de
la CPU.
• Es el lugar de almacenamiento que se emplea para
los datos a procesar.
Dispositivos de Almacenamiento
Jerarquía de Almacenamiento
6
Discos Magnéticos
• Usados, por lo general, para guardar datos a largo
plazo.
• Su contenido debe trasladarse a la memoria
principal para su procesamiento. Luego, son
devueltos al disco de ser necesarios.
• Son dispositivos de acceso aleatorio.
Dispositivos de Almacenamiento
Jerarquía de Almacenamiento
2
7
Discos Magnéticos: tres razones por las cuales es
necesario usarlo en lugar de la RAM.
• Capacidad limitada de la RAM.
• Memoria RAM más cara.
• Memoria RAM es volátil.
Dispositivos de Almacenamiento
Jerarquía de Almacenamiento
8
Discos Magnéticos: dos desventajas respecto de la
memoria principal…
• Necesita mucho más tiempo para tener acceso a los
datos.
• El costo de la recuperación depende de donde
queden almacenados los datos dentro del dispositivo.
Dispositivos de Almacenamiento
Jerarquía de Almacenamiento
9
Almacenamiento Terciario:
• Engloba dispositivos que han sido diseñados para
soportar grandes volúmenes de datos, incluso del
orden de los terabytes.
• Dichos dispositivos tienen tiempos de acceso
significativamente mayores, en comparación a un
disco magnético.
Dispositivos de Almacenamiento
Jerarquía de Almacenamiento
10
Almacenamiento Terciario: (cont.)
• No obstante, tienen mayor capacidad de
almacenamiento y la relación $/byte es menor.
Dispositivos de Almacenamiento
Jerarquía de Almacenamiento
11
Almacenamiento Terciario: considera...
• (Racks de) Discos Ópticos.
• Cintas.
• Silos de Cintas.
Dispositivos de Almacenamiento
Jerarquía de Almacenamiento
12
Dispositivos de Almacenamiento
Discos Ópticos
• Racks de Discos Ópticos: dotados de un brazo que
se encarga de extraer un CD y moverlo al lector.
• A la fecha, usados preferentemente para respaldos,
publicación y difusión, más que un medio de
almacenamiento de datos.
3
13
Dispositivos de Almacenamiento
Discos Ópticos
Organización Física:
• Fabricado sobre un substrato de policarbonato,
recubierto por una lámina reflectante de aluminio, y
bañado con una laca protectora.
• Dimensiones:
• 120 milímetros de diámetro total
• 15 milímetros de diámetro del agujero central.
• 1,2 milímetros de grosor.
14
Dispositivos de Almacenamiento
Discos Ópticos
Organización Física:
• El disco contiene una pista en espiral, igual que los
discos de audio, que empieza en el centro del disco y
termina en la parte exterior del mismo.
• Esta pista tiene una anchura de unas 0,6 micras
(0,0000006 metros), estando separadas las vueltas
adyacentes 1,6 micras (0,0000016 metros).
15
Dispositivos de Almacenamiento
Discos Ópticos
Organización Física:
• Lo anterior nos da una idea de la densidad del disco:
aproximadamente 6.300 pistas por centímetro.
• Si se extendiese la pista en espiral a lo largo de una
línea recta, la longitud total de la misma se
aproximaría a los 5 km.
16
Dispositivos de Almacenamiento
Discos Ópticos
Almacenamiento de Datos:
• Los datos se almacenan dentro la pista en espiral, la
cual tiene numerosos agujeros (hoyos, pits) en toda
su longitud.
• Estos agujeros tienen una profundidad que pueden
alcanzar hasta 0,12 micras (0,00000012 metros) y 0,6
micras de anchura. Entre los agujeros existen zonas
planas llamadas también mesetas (pisos, lands).
17
Dispositivos de Almacenamiento
Discos Ópticos
18
Dispositivos de Almacenamiento
Discos Ópticos
Acceso a los Datos:
• Cuando se lee la copia, se dirige un rayo láser sobre
la pista, mientras se mueve sobre el lente óptico.
• Los agujeros dispersan la luz, pero los pisos reflejan
casi todo de vuelta al lente.
• Este patrón alternante de intensidades altas y bajas,
de luz reflejada, es la señal para reconstruir la
información original.
4
19
Dispositivos de Almacenamiento
Discos Ópticos
20
Dispositivos de Almacenamiento
Discos Ópticos
Acceso a los Datos (continuación):
• El esquema de codificación usado no es 1 para la
hendidura y 0 para un suelo .
• En su lugar, los bits 1 son representados por las
transiciones hendidura-suelo y viceversa.
• La cantidad de tiempo entre transiciones representa
el número de bits 0.
21
Dispositivos de Almacenamiento
Discos Ópticos
Acceso a los Datos (continuación):
• Con esta codificación, no es posibles dos bits 1
adyacentes….debido a la resolución del lente óptico,
debe haber dos valores 0 entre cualquier par de 1.
• Esto significa que el patrón de valores 0 y 1 debe
ser traducido para conseguir los patrones de 8 bits del
byte original.
22
Dispositivos de Almacenamiento
Discos Ópticos
Acceso a los Datos (continuación):
• Lo anterior considera la utilización de una Tabla de
Codificación EFM:
23
Dispositivos de Almacenamiento
Discos Ópticos
Acceso a los Datos (continuación):
• Disco Magnético: esquema de velocidad angular
constante (CAV) .
• Disco Compacto: esquema de velocidad lineal
constante (CLV).
24
Dispositivos de Almacenamiento
Discos Ópticos
5
25
Dispositivos de Almacenamiento
Discos Ópticos
Organización física (continuación):
• Esquema CAV: desperdicia espacio de
almacenamiento en las pistas exteriores, pero permite
que el disco gire a la misma velocidad.
• Esquema CLV: no entrega una forma adecuada para
llegar a una localización específica, porque necesita
cambiar la velocidad de rotación, pero aprovecha
mejor el espacio.
26
Dispositivos de Almacenamiento
Discos Ópticos
Capacidad de Almacenamiento:
• La organización CLV no permite el típico modo de
direccionamiento (cilindro, pista, sector).
• En su lugar, cada segundo de reproducción es
dividido en 75 sectores, cada uno de los cuales
guarda 2 KB de datos.
27
Dispositivos de Almacenamiento
Discos Ópticos
Capacidad de Almacenamiento: (cont.)
• Luego, para un CD con 74 minutos de
reproducción…
• 74 minutos * 60 segundos/minuto * 75 sectores/segundo =
333.000 sectores
• 333.000 sectores * 2 KB/sector = 666.000 KB ≈ 650 MB
28
Dispositivos de Almacenamiento
Discos Ópticos
Estructura de un Sector:
• La frecuencia de muestreo de un CD es de 44.1
kilohertz (44.100 veces por segundo).
• Así, se pueden registrar sonidos con frecuencias
que variarán hasta los 20 kilohertz…el límite superior
audible por el oído humano.
29
Dispositivos de Almacenamiento
Discos Ópticos
Estructura de un Sector:
• Un muestreo como el anterior, unido a una
representación de 16 bits, requiere almacenar 88.200
bytes por segundo.
• Grabar sonido estéreo significa duplicar la cantidad
anterior, subiendo a 176.400 bytes por segundo.
30
Dispositivos de Almacenamiento
Discos Ópticos
Estructura de un Sector:
• Al dividir los 176.400 bytes por los 75 sectores por
segundo, se tienen 2.352 bytes por sectores, de los
cuales 2.048 bytes son de datos, y el resto:
• Sincronización
• ID Sector
• Detección y Corrección de errores
• Nulos
6
31
Dispositivos de Almacenamiento
Discos Ópticos
Velocidad de lectura:
• Una unidad de velocidad simple (1X); 150 KB por
segundo.
• Luego, una unidad de NX lee a (N * 150) KB por
segundo.
32
Dispositivos de Almacenamiento
Discos Ópticos
DVD
• Digital Video (Versatile) Disc
• Emplea un láser de lectura con una longitud de onda
de 650 nm (en el caso de los CDs, es de 780 nm)
• La densidad de datos física real se incrementa en un
factor de 3,3
33
Dispositivos de Almacenamiento
Discos Ópticos
DVD
• El DVD usa un método de codificación más eficiente
en la capa física:
•EFM es reemplazado por EFMPlus, con las
mismas características que el EFM clásico
•El subcódigo de CD fue eliminado
•Resultado, el formato DVD es un 47% más
eficiente que el CD-ROM
34
Dispositivos de Almacenamiento
Discos Ópticos
DVD-5
• El tipo mas sencillo de DVD
• Posee datos en un solo lado y una única capa reflectiva
• Almacena un total de 4.38 GB reales. Es el mas similar al
CD
35
Dispositivos de Almacenamiento
Discos Ópticos
DVD-9
• Posee dos capas de material reflectivo del mismo lado del
disco, legibles de forma independiente (7.92 GB efectivos)
• Capacidad menor que el doble de la versión simple capa
(utiliza surcos 10% mas extensos para facilitar la lectura)
36
Dispositivos de Almacenamiento
Discos Ópticos
DVD-10
• Poseen datos en ambos lados porque utilizan ambos
substratos, cada uno de ellos con una única capa
• Doble de capacidad del DVD-5
• Reproducción de ambos lados dando vuelta el disco
7
37
Dispositivos de Almacenamiento
Discos Ópticos
DVD-14 / DVD-18
• El DVD-18 es el de mayor capacidad, dado que usa ambos
lados y cada uno posee dos capas reflectivas
• Casi 16 GB reales para almacenamiento de datos
• Es el tipo mas difícil de manufacturar, muy poco común
38
Dispositivos de Almacenamiento
Discos Ópticos
Fortalezas y debilidades:
• Rendimiento del Tiempo de Búsqueda: problema en
el acceso aleatorio, por su lentitud.
• Tasa de Transferencia de Datos: modesta…un orden
de magnitud más lento que discos duros.
39
Dispositivos de Almacenamiento
Discos Ópticos
Fortalezas y debilidades: (cont.)
• Capacidad de Almacenamiento: amplia.
• Acceso de sólo Lectura: en algunos casos.
• Escritura y Lectura Asimétricas para los Discos
Ópticos: una escritura, muchas lecturas.
40
Almacenamiento Terciario: considera...
• (Racks de) Discos Ópticos.
• Cintas.
• Silos de Cintas
Dispositivos de Almacenamiento
Jerarquía de Almacenamiento
41
Dispositivos de Almacenamiento
Jerarquía de Almacenamiento
Cintas:
• Usadas, principalmente, para hacer copias de
seguridad.
• Baratas y más lentas que el disco.
• Dispositivos de acceso lineal.
• Capacidad: 50 gigabytes y más...
42
Dispositivos de Almacenamiento
Jerarquía de Almacenamiento
Silos de Cintas:
• Dispositivos del tamaño de una habitación que
manejan racks de cintas.
• Dichas cintas son accesadas por brazos robotizados
que pueden llevarlas a los lectores de cintas
requeridos.
8
43
Dispositivos de Almacenamiento
Criterios de Selección
• Capacidad.
• Portabilidad.
• Costo Relativo: respecto del almacenamiento,
velocidad y facilidad de acceso.
• Tamaño del Registro.
• Tiempo de Acceso.
• Compartibilidad.
44
1.1 Dispositivos de Almacenamiento
1.2 Discos Magnéticos
1.3 Representación de Datos
Temario
45
Discos Magnéticos
Mecánica del Disco
• Conjunto de superficies magnetizables, que rotan a
alta velocidad, pasando bajo una cabeza
lectograbadora.
• Un pack de disco magnético
(disco duro) está constituido por
varios platos de aluminio
recubiertos de óxido magnético.
46
Discos Magnéticos
Mecánica del Disco
47
Discos Magnéticos
Mecánica del Disco
• Cada cara utilizable (superficie) está dividida en
varias pistas concéntricas.
• El conjunto de pistas (tracks) que pueden ser leidas
sin mover la cabeza lectograbadora, es decir el
conjunto de pistas de varias superficies que tienen el
mismo radio, conforman un cilindro.
48
Discos Magnéticos
Mecánica del Disco
• El mecanismo de lectura/escritura más común de los
discos de un brazo son las cabezas lectograbadoras
que se mueven radialmente sobre las superficies que
giran a gran velocidad.
9
49
Discos Magnéticos
Mecánica del Disco
50
Discos Magnéticos
Mecánica del Disco
• Cada pista es organizada en sectores, los cuales
son segmentos separados por espacios sin datos
(gaps).
• El sector es una unidad indivisible, tanto en la
lectura como en la escritura al disco, como en el
manejo de errores.
• Los gaps representan alrededor del 10% del total de
la pista; y se usan para identificar el comienzo de un
sector.
51
Discos Magnéticos
Mecánica del Disco
52
Discos Magnéticos modernos
•Uno o dos platos
•Zoned Bit Recording
•La densidad de bits se
mantiene relativamente
uniforme en las pistas
más exteriores, respecto
de las interiores
53
Tasa de Transferencia variable
Zona Zona Zona Zona
Pistas / Pistas / Pistas / Pistas /
Zona Zona Zona Zona
Sectores / Sectores / Sectores / Sectores /
Pista Pista Pista Pista
Tasa de Trans. Tasa de Trans. Tasa de Trans. Tasa de Trans.
(Mbits/s) (Mbits/s) (Mbits/s) (Mbits/s)
0 00 0 454 232 92.9
1 11 1 454 229 91.7
2 22 2 454 225 90.4
3 33 3 454 225 89.2
4 44 4 454 214 85.8
5 55 5 454 205 82.1
6 66 6 454 195 77.9
7 77 7 454 185 74.4
8 88 8 454 180 71.4
9 99 9 454 170 68.2
10 10 10 10 454 162 65.2
11 11 11 11 454 153 61.7
12 12 12 12 454 142 57.4
13 13 13 13 454 135 53.7
14 14 14 14 454 122 49.5
•3,8 GB Quantum
Fireball
54
Tasa de Transferencia variable
•20 GB/plato, 5400
RPM IBM 40GV
Zona Zona Zona Zona
Pistas / Pistas / Pistas / Pistas /
Zona Zona Zona Zona
Sectores / Sectores / Sectores / Sectores /
Pista Pista Pista Pista
Tasa de Trans. Tasa de Trans. Tasa de Trans. Tasa de Trans.
(Mbits/s) (Mbits/s) (Mbits/s) (Mbits/s)
0 00 0 624 792 372.0
1 11 1 1,424 780 366.4
2 22 2 1,680 760 357.0
3 33 3 1,616 740 347.6
4 44 4 2,752 720 338.2
5 55 5 2,880 680 319.4
6 66 6 1,904 660 310.0
7 77 7 2,384 630 295.9
8 88 8 3,328 600 281.8
9 99 9 4,432 540 253.6
10 10 10 10 4,528 480 225.5
11 11 11 11 2,192 440 206.7
12 12 12 12 1,600 420 197.3
13 13 13 13 1,168 400 187.9
14 14 14 14 18,15 370 173.8
10
55
Discos Magnéticos
Mecánica del Disco
Sector v/s Bloque:
• El sector es una unidad física del disco, mientras
que un bloque es una unidad lógica, creación de un
software (S.O., SABD) para usar el disco.
• Típicamente un bloque tiene al menos la misma
capacidad de un sector, pudiendo contener varios
más.
56
Discos Magnéticos
Controlador del Disco
Uno o más discos son controlados por el controlador
de disco, que es un pequeño procesador capaz de :
• Controlar el brazo mecánico que mueve las cabezas
lectograbadoras a un radio específico. En éste, una
pista de cada superficie estará bajo la cabeza
correspondiente, y podrá ser leida/escrita.
57
Discos Magnéticos
Controlador del Disco
• Seleccionar una superficie a leer/escribir, y
seleccionar un sector desde la pista asociada. El
controlador también es responsable de determinar
cuando se ha alcanzado el inicio del sector requerido.
• Transferir los bits leídos desde el sector del disco a
la memoria principal del computador, transferir los bits
en sentido contrario en caso de una operación de
escritura.
58
Discos Magnéticos
Características de Almacenamiento
• Velocidad de Rotación: 5.400 rpm...
• Platos por Unidad: 5 platos (8 superficies
utilizables)…
• Pistas por Superficie: 10.000 …
• Sectores por Pista: 500 ...
• Tamaño de una Pista: 100.000 bytes…
• Tamaño de un Sector: 512 … 4.096 bytes
59
Discos Magnéticos
Características de Acceso
Factores que Determinan el Acceso a un Sector:
• Tiempo de búsqueda o posicionamiento (seek time).
• Tiempo de rotación (latency time).
• Tiempo de transferencia.
60
Discos Magnéticos
Características de Acceso
• Tiempo de búsqueda: tiempo necesario para
desplazar las cabezas al cilindro requerido.
Duración: 7 a 20 milisegundos.
11
61
Discos Magnéticos
Características de Acceso
• Tiempo de latencia: tiempo transcurrido desde que
el brazo está en el cilindro requerido y hasta que se
sitúe en la posición correcta
Duración: depende de la velocidad de rotación del
disco; pero un valor típico es de 11 mseg.
62
Discos Magnéticos
Características de Acceso
• Tiempo de Transferencia: tiempo para realizar la
transferencia de los bytes solicitados de la RAM al
disco o viceversa.
• Es el único parámetro que depende del número
de bytes a transferir.
63
Discos Magnéticos
Características de Acceso
Luego, el tiempo promedio para recuperar un bloque
de disco, desde una pista de N bloques, es:
1 1
T = T
S
+ --- T
L
+ --- T
L
2 N
64
Discos Magnéticos
Modificación de Bloques
• No es posible modificar un bloque directamente en
el disco.
• Aunque se quiera modificar el mínimo de bytes, se
requiere manejar el bloque completo.
65
Discos Magnéticos
Modificación de Bloques
• Las operaciones necesarias para la modificación
son…
• Leer el bloque a la memoria principal.
• Hacer los cambios sobre la copia en la memoria
principal.
• Escribir el contenido del bloque de regreso al disco.
66
Discos Magnéticos
Mejorando el Tiempo de Acceso
Técnica 1: Organizar los Datos por Cilindros
• Objetivo: se minimizan los movimientos del brazo
del disco.
• Ventaja: aplicaciones con fuerte uso del disco,
donde los accesos pueden ser predecidos y sólo hay
un proceso usando el disco, son apoyadas.
12
67
Discos Magnéticos
Mejorando el Tiempo de Acceso
• Desventaja: no ayuda en casos donde hay varios
procesos pequeños ejecutándose en paralelo,
compartiendo el mismo disco, con acceso no
predecibles.
68
Discos Magnéticos
Mejorando el Tiempo de Acceso
Técnica 2: Usar Múltiples Discos
• Objetivo: al contar con N discos, operados bajo un
mismo controlador, el tiempo total asociado a la
lectura/escritura de un bloque de de cada disco, será
equivalente a la N-ésima parte de lo que tardaría leer
los N bloques del mismo disco.
69
Discos Magnéticos
Mejorando el Tiempo de Acceso
• Ventaja: incrementa la tasa a la cual los
requerimientos de disco pueden ser atendidos.
• Problema: lecturas y/o escrituras al mismo disco no
pueden satisfechas a la vez, de modo que el factor de
escalabilidad puede ser menos al factor por el cual el
número de disco crece.
70
Discos Magnéticos
Mejorando el Tiempo de Acceso
• Desventaja: el costo de varios discos pequeños
excede el valor un disco único con la misma
capacidad total.
71
Discos Magnéticos
Mejorando el Tiempo de Acceso
Técnica 3: Usar Discos Espejos
• Objetivos:
• Agilizar el acceso a los datos, pues la
recuperación se puede hacer sobre más de un
disco a la vez.
• Evitar que un problema en un disco (incluso fatal
para todo su contenido) implique una pérdida de
datos.
72
Discos Magnéticos
Mejorando el Tiempo de Acceso
• Ventaja: aumenta la tasa a la cual pueden atenderse
los requerimientos de disco, para todo tipo de
aplicaciones.
• Ventaja: mejora la tolerancia a fallas.
• Desventaja: aumentan los costos debido a los
discos adicionales.
13
73
Discos Magnéticos
Mejorando el Tiempo de Acceso
Técnica 4: Ordenamiento de Solicitudes al Disco.
• Objetivo: reducir el impacto del tiempo de búsqueda,
acortando los movimientos de seek sobre el disco,
mediante el algoritmo del ascensor u otro similar.
74
Discos Magnéticos
Mejorando el Tiempo de Acceso
• Ventaja: reduce el tiempo promedio de accesos al
disco cuando éstos no son predecibles.
• Problema: el algoritmo es más efectivo en
situaciones donde hay muchas solicitudes al disco
esperando, y la espera promedio de los procesos
involucrados es alta.
75
Discos Magnéticos
Mejorando el Tiempo de Acceso
Técnica 5: Prefetching / Doble Buffering
• Objetivo: cuando se pueden predecir los accesos, es
posible cargar algunos bloques a la memoria principal
antes de que sean realmente necesitados.
• Ventaja: agiliza los tiempos de acceso, en
situaciones de predecibilidad de los datos.
• Desventaja: requiere (buffers de) memoria principal
extra; no sirve cuando los accesos son aleatorios.
76
Discos Magnéticos
Mejorando el Tiempo de Acceso
Observaciones:
• Un archivo de datos abierto tiene, al menos, un
buffer asociado.
• Un buffer reside en la memoria principal, ya sea en
el área del programa o fuera de él (pool de buffers).
• Su tamaño debe ser lo suficientemente grande para
contener un bloque.
77
Discos Magnéticos
Mejorando el Tiempo de Acceso
Otras técnicas posibles:
• Para minimizar la latencia, los datos pueden ser
ubicados de tal forma que el sector que contenga el
dato sea aquél que está justo bajo la cabeza cuando
éste es requerido, es decir intercalación de sectores.
78
Discos Magnéticos
Mejorando el Tiempo de Acceso
1
2
3
4
5
6
7
8
9
10
11 12
13
14
15
16
17
18
19
20
21
22
23 24
Sectores Contiguos
(Se requieren 24 revoluciones
para leer pista completa)
1
2
3
4
5 6
7
8
9
10
11
12
13
14
15
16
17 18
19
20
21
22
23
24
Sectores Intercalados
(se requieren 5 revoluciones)
14
79
Discos Magnéticos
Mejorando el Tiempo de Acceso
Otras técnicas posibles (continuación):
• Cabezas Fijas: hace nulo el tiempo de búsqueda.
• Aumento de la densidad de Almacenamiento: debido
al uso de películas magnéticas más delgadas, y a
cabezas más precisas y finas.
80
Discos Magnéticos
Tipos de Fallas
• Falla intermitente: cuando un intento por leer o
escribir un sector no es exitoso, pero tras algún(os)
intento(s) se logra realizar la operación.
• Daño Parcial del Disco: cuando uno o más bits se
corrompen, y llega a ser imposible leerlos
correctamente, no importa las veces que se intente.
81
Discos Magnéticos
Tipos de Fallas
• Falla en la Escritura: cuando se trata de escribir un
sector, pero no es posible escribirlo ni volverlo a
recuperar. Una causa posible es la una caída de
potencia al momento de la escritura.
• Daño Total del Disco: donde el disco completo, de
forma repentina y permanente, deja de estar
disponible.
82
Discos Magnéticos
Manejo de Fallas: Paridad
• Fallas intermitentes pueden ser corregidas mediante
las sumas de chequeo, basadas en la técnica de la
paridad.
• La paridad consiste en registrar algunos bits
adicionales, por sector, cuyos valores dependen del
contenido de éste.
83
Discos Magnéticos
Manejo de Fallas: Paridad
• Así, al leer el sector, se chequea su contenido con
los bits de paridad y si éstos no concuerdan, se dice
que el sector está “malo”.
84
Discos Magnéticos
Manejo de Fallas: Paridad
• Ejemplo de Paridad:
• Datos: 00 10 00 11
Paridad: 1
• Datos: 00 11 00 11
Paridad: 0
15
85
Discos Magnéticos
Manejo de Fallas: Paridad
• El problema de la paridad anterior es que si dos bits
se ven modificados, el sistema será incapaz de
detectar el error.
• La solución es agregar varios bits de paridad, pero a
costa de que el espacio necesitado va en aumento.
86
Discos Magnéticos
Manejo de Fallas
Ante la posibilidad de daño permanente del del disco,
existen diversos esquemas desarrollados para reducir
el riesgo de pérdida de los datos:
• Respaldos
• Discos Espejos
• Redundancia sobre varios Discos
87
Discos Magnéticos
Respaldos
Técnica de Respaldo: Abuelo - Padre - Hijo,
guardando tres generaciones de archivos.
A
i-1
R
Abuelo
A
i
A
i+1
R
Padre
R
Hijo
T
i-1
T
i
88
Discos Magnéticos
Respaldos
Técnica de Respaldo: Respaldo Periódico.
• Cada cierto período se saca copia a todo el archivo
(o un disco completo).
• Se guardan transacciones del período.
• Periocidad depende de condiciones del problema.
89
Discos Magnéticos
Respaldos
A
1
A
i
A
j
R
1
R
2
R
3
T
1
T
2
T
3
T
i
T
i+1
... ...
Técnica de Respaldo: Respaldo Periódico.
90
Discos Magnéticos
Respaldos
Ejemplo de Estrategia de Respaldo:
• El primer día de cada mes copiar el disco
completo.
• Cada fin de semana, copiar los archivos
modificados desde el último backup mensual.
• Cada noche, copiar los archivos que han
cambiado desde el último backup semanal.
16
91
Discos Magnéticos
Respaldos
Técnica de Respaldo: los dos casos anteriores
corresponden a respaldos del tipo completo, pero con
frecuencia se usan también los llamados respaldos
incrementales, de los cuales existen dos
posibilidades:
• Respaldos Undo (Pre-Imágenes)
• Respaldos Redo (Post-Imágenes)
92
Discos Magnéticos
Recuperación de Archivos
Transacciones
Archivo
Archivo
Actualizado
Pre y/o Post
Imágenes
/
PROGRAMA
ACTUALIZADOR
93
Discos Magnéticos
Recuperación de Archivos
Métodos de Recuperación:
• Restore-Rerun
• Rollback
• Rollforward
Archivo
Dañado
Respaldo de
algún tipo
Archivo
Recuperado
MÉTODO DE
RECUPERACIÓN
94
Discos Magnéticos
Recuperación de Archivos
• Método de Recuperación: Restore-Rerun
Full-backup del
Archivo
Transacciones
Archivo
Recuperado
RESTORE /
RERUN
95
Discos Magnéticos
Recuperación de Archivos
• Método de Recuperación: Rollback
Archivo
Actualizado
Pre-Imagen
Archivo Recuperado
a un estado previo
ROLL BACK
96
Discos Magnéticos
Recuperación de Archivos
Full-backup del
Archivo
Post-Imagen
ROLL FORWARD
Archivo Recuperado
a un estado
posterior al daño
• Método de Recuperación: Rollforward
17
97
Discos Magnéticos
Recuperación de Archivos
Puntos de chequeo (checkpoint):
• Cuando se está actualizando un archivo, cada cierto
conviene grabar un registro especial en el archivo de
transacciones (y pre-imágenes si existe).
• Esta marca permite saber, ante fallas de proceso,
hasta donde se había llegado en el proceso de
actualización, para luego reasumir el trabajo desde la
última marca.
98
Discos Magnéticos
Recuperación de Archivos
Puntos de Chequeo:
checkpoint
rehacer de acá
en adelante
checkpoint
checkpoint
• • • •
Transacciones
99
Discos Magnéticos
Manejo de Fallas
Ante la posibilidad de daño permanente del del disco,
existen diversos esquemas desarrollados para reducir
el riesgo de pérdida de los datos:
• Respaldos
• Discos Espejos
• Redundancia sobre varios Discos
100
Discos Magnéticos
Discos RAID
• Objetivo: basarse en la diversidad de las vías de
E/S, pues se obtiene un sistema con varios discos,
cada uno con una vía de acceso diferente (incluye un
proceso distinto).
• Alternativa para…
• Paralelismo de la E/S.
• Disponibilidad de los datos.
101
Discos Magnéticos
Discos RAID
• Para asegurar la independencia de una vía, es
preciso almacenar los datos en diversos sitios o
discos, surgiendo el concepto de arreglo de discos,
los que combinan técnicas como:
• Discos Sincrónicos.
• Archivos Entrelazados.
102
Discos Magnéticos
Discos RAID
• Las dos técnicas anteriores dan origen a los
llamados sistemas RAID, definidos como: arreglo
(vector) redundante de discos independientes.
• Por fines prácticos, sólo se verán los sistemas de
uso común en la realidad.
18
103
Discos Magnéticos
Discos RAID
• Favorece integridad de datos, tolerancia a fallas,
throughput o capacidad, dependiendo del tipo de
RAID utilizado.
• Se combinan varios dispositivos físicos, pero
lógicamente el S.O. ve solo una unidad.
104
Discos Magnéticos
Discos RAID
• Usualmente utilizados en servidores, pero también
en PCs avanzados (p.ej. para edición de audio y
video), dada la compatibilidad ofrecida por algunas
placas madre.
• Según su configuración, aparecen “niveles” de
RAID.
105
Discos Magnéticos
Discos RAID
• Nivel 0: Sin redundancia
1 2 3
4 5 6
7 8 9
106
Discos Magnéticos
Discos RAID
1 4 7 1 4 7
2 5 8 2 5 8
3 6 9 3 6 9
• Nivel 1: Discos Duplicados (o espejos)
107
Discos Magnéticos
Discos RAID
• Nivel 4: Discos Entrelazados a Nivel de Bloques,
con Disco de Paridad
1 2 3 P1
4 5 6 P2
7 8 9 P3
Disco 1 Disco 2 Disco 3 Disco de
Paridad
108
Discos Magnéticos
Discos RAID
• Nivel 5: Discos Entrelazados a Nivel de Bloques,
con Paridad Distribuida
1 2 3 P1
4 5 P2 6
7 P3 8 9
Disco 1 Disco 2 Disco 3 Disco 4
19
109
Discos Magnéticos
Discos RAID
Implementaciones de Sistemas RAID:
• En hardware, se requiere un controlador especial de RAID
(integrado en tarjeta madre, tarjeta PCI, contenedor externo)
• Mejores rendimientos
• Mejor capacidad de almacenamiento
• Mejor confiabilidad
• Permite reemplazo “en caliente”
110
Discos Magnéticos
Discos RAID
Implementaciones de Sistemas RAID:
• En software, S.O. maneja el arreglo mediante el controlador
de disco
• Más flexibilidad de (re)configuración
• Más barato por unidad de capacidad de almacenamiento
• Mas rápido que por HW (en general), pero utiliza ciclos
de CPU
• Puede necesitar detención de sistema para correcciones
111
Discos Magnéticos
Discos RAID
Extensiones de implementaciones de Sistemas RAID:
• Existen implementaciones híbridas
• Pueden utilizarse “hot spares”
• Dependiendo del sistema, pueden configurarse RAIDs
utilizando particiones de un mismo dispositivo físico (disco
duro)
112
1.1 Dispositivos de Almacenamiento
1.2 Discos Magnéticos
1.3 Representación de Datos
Temario
113
Representación de Datos
Organización Física de los Datos
• Representación y organización física sobre un
medio de almacenamiento (índices, punteros, listas,
etc.).
• Representa la visión del administrador de los
archivos (o de la base de datos, DBA), que es
dependiente del dispositivo.
• El archivo es visto como una colección de bloques
en memoria secundaria.
114
Representación de Datos
Organización Física de los Datos
Operaciones a considerar:
• Controlar accesos.
• Asignar y administrar buffers.
• Crear y mantener directorios.
• Crear y mantener tablas en la memoria principal.
20
115
Representación de Datos
Elementos de Datos
• Pregunta a responder: ¿cómo se registran en el
disco los diferentes tipos de datos, al momento de
declaraciones como:
create table ActorDeCine
( nombre CHAR(30),
domicilio VARCHAR(255),
sexo CHAR(1),
fecha_nacimiento DATE
);
116
Representación de Datos
Elementos de Datos
Tipo CHAR(n): este string de largo fijo se representa
mediante un arreglo de n bytes.
• Si el valor guardado tiene un largo menor, se
completa el espacio con algún carácter especial.
117
Representación de Datos
Elementos de Datos
Tipo VARCHAR(n): este string de largo variable se
puede representar de dos formas:
• Largo más contenido: asignando un arreglo de (n+1)
bytes, siendo el primero de éstos el largo real del
dato. Bytes no usados se ignoran.
118
Representación de Datos
Elementos de Datos
• String terminado en Nulo: asigna, también, un
arreglo de (n+1) bytes, pero sin registrar el largo, sino
que tras el último byte de dato válido, se coloca un
carácter nulo.
119
Representación de Datos
Elementos de Datos
Tipo DATE: representable mediante un string de largo
fijo (típicamente CHAR(10)).
• Ejemplo: 15-04-2004 se presenta con 10 caracteres,
uno por cada dígito más uno por cada guión.
Una idea similar se sigue con las horas, expresadas
como HH:MM:SS, o similar.
120
Representación de Datos
Elementos de Datos
En la mayoría de los otros tipos de datos, en
particular los BIT(n), booleanos y enumerativos se
representan con tantos bytes como sean suficientes
para contener el total de bits presentes, lo que
normalmente significa que el último de los bytes no se
usa totalmente.
21
121
Representación de Datos
Registros
• Registros de Largo Fijo
struct deposito
{
char nombre_sucursal[20];
int número_cuenta;
char nombre_cliente[20];
float saldo;
};
122
Representación de Datos
Registros de Largo Fijo
Almacenamiento secuencial:
Registro0 Perryridge 102 Hayes 400
Registro1 RoundHill 305 Turner 350
Registro2 Mianus 215 Smith 700
Registro3 Downtown 101 Johnson 500
Registro4 Redwood 222 Lindsay 700
Registro5 Perryridge 201 Williams 900
Registro6 Brighton 217 Green 750
Registro7 Downtown 110 Peterson 600
Registro8 Perryridge 218 Lyle 700

123
Representación de Datos
Registros de Largo Fijo
Almacenamiento secuencial: problemas...
• Difícil la eliminación de un registro...marca de
borrado o llenar con otro registro.
• A menos que el tamaño del bloque sea un múltiplo
del registro, algunos registros no podrán almacenarse
completamente en un bloque.
124
Representación de Datos
Registros de Largo Fijo
Almacenamiento secuencial:
Eliminación del Registro 2, con corrimientos de
datos
Registro 0 Perryridge 102 Hayes 400
Registro 1 RoundHill 305 Turner 350
Registro 3 Downtown 101 Johnson 500
Registro 4 Redwood 222 Lindsay 700
Registro 5 Perryridge 201 Williams 900
Registro 6 Brighton 217 Green 750
Registro 7 Downtown 110 Peterson 600
Registro 8 Perryridge 218 Lyle 700
125
Representación de Datos
Registros de Largo Fijo
Almacenamiento secuencial:
Eliminación del Registro 2, con traslado del registro
8
Registro 0 Perryridge 102 Hayes 400
Registro 1 RoundHill 305 Turner 350
Registro 8 Perryridge 218 Lyle 700
Registro 3 Downtown 101 Johnson 500
Registro 4 Redwood 222 Lindsay 700
Registro 5 Perryridge 201 Williams 900
Registro 6 Brighton 217 Green 750
Registro 7 Downtown 110 Peterson 600
126
Representación de Datos
Registros de Largo Fijo
Almacenamiento secuencial, con uso de punteros:
Eliminación de los Registros 1, 4 y 6.
Encabezado
Registro 0 Perryridge 102 Hayes 400
Registro 1
Registro 2 Mianus 215 Smith 700
Registro 3 Downtown 101 Johnson 500
Registro 4
Registro 5 Perryridge 201 Williams 900
Registro 6
Registro 7 Downtown 110 Peterson 600
Registro 8 Perryridge 218 Lyle 700
22
127
Representación de Datos
Registros de Largo Fijo
Encabezados:
• El esquema del registro, o bien un puntero al lugar
donde el SABD almacena el esquema para este tipo
de registro.
• El largo del registro.
• Marcas de tiempo que indican el momento que el
registro fue modificado/leído por última vez.
128
Representación de Datos
Registros de Largo Fijo
Encabezados: la base de datos mantiene información
del esquema, rescatada del create table, con:
• Los atributos de la relación, y sus tipos.
• El orden en el cual aparecen en la tupla.
• Restricciones sobre los atributos y la relación
misma.
129
Representación de Datos
Registros de Largo Variable
Campo de Largo Variable:
• Por lo general, se guardan al final del registro.
• En el encabezado se maneja un puntero al inicio de
cada campo de este tipo.
130
Representación de Datos
Registros de Largo Variable
Campo Repetitivo:
• Una alternativa es usar un caracter de separación
para delimitar los valores repetitivos del campo, y otro
separador para indicar el término del campo.
• Otra alternativa es usar un puntero a la primera
ocurrencia del campo, más un número que indique la
cantidad de veces de la repetición.
131
Representación de Datos
Registros de Largo Variable
Campo de Distintos Tipos:
• Cada tipo es precedido por un campo indicador de
tipo.
132
Representación de Datos
Registros de Largo Variable
Campo Opcional:
• Si el número total de campos del registro es alto,
pero el número de campos fijos es bajo, se puede
incluir una secuencia de duplas <nombre del campo,
valor del campo>, en vez de guardar sólo los valores.
• La secuencia anterior puede considerar un número
de campo, en lugar del nombre + un esquema para
mantener una correspondencia entre los campos y
dichos números.
23
133
Representación de Datos
Registros de Largo Variable
Grupo Repetitivo:
struct deposito
{
int número_cuenta;
char nombre_cliente[20];
float saldo;
};
struct lista-deposito
{
char nombre_sucursal[20];
deposito set(info_cuenta);
}
134
Representación de Datos
Registros de Largo Variable
Grupo Repetitivo: uso de marca especial como fin de
registro.
Perryridge 102 Hayes 400 201 Williams 900 218 Lyle 700 ⊥
RoundHill 305 Turner 350 ⊥
Mianus 215 Smith 700 ⊥
Downtown 101 Johnson 500 110 Peterson 600 ⊥
Redwood 222 Lindsay 700 ⊥
Brighton 217 Green 750 ⊥
135
Representación de Datos
Registros de Largo Variable
Grupo Repetitivo: uso de marca especial como fin de
registro ….problemas!!
• No es fácil volver a usar el espacio que ocupaba un
registro que se eliminó.
• En general, los registros no disponen de espacio
para crecer.
por lo tanto, no se usa normalmente.
136
Representación de Datos
Registros de Largo Variable
Grupo Repetitivo: Espacio Reservado.
Perryridge 102 Hayes 400 201 Williams 900 218 Lyle 700
RoundHill 305 Turner 350 ⊥ ⊥ ⊥ ⊥ ⊥ ⊥
Mianus 215 Smith 700 ⊥ ⊥ ⊥ ⊥ ⊥ ⊥
Downtown 101 Johnson 500 110 Peterson 600 ⊥ ⊥ ⊥
Redwood 222 Lindsay 700 ⊥ ⊥ ⊥ ⊥ ⊥ ⊥
Brighton 217 Green 750 ⊥ ⊥ ⊥ ⊥ ⊥ ⊥
137
Representación de Datos
Registros de Largo Variable
Perryridge 102 Hayes 400
Round Hill 305 Turner 350
Mianus 215 Smith 700
Downtown 101 Johnson 500
Redwood 222 Lindsay 700
201 Williams 900
Brighton 217 Green 750
110 Peterson 600
218 Lyle 700
Grupo Repetitivo: Punteros (básico)
138
Representación de Datos
Registros de Largo Variable
Grupo Repetitivo: Punteros con dos archivos.
Perryridge 102 Hayes 400
Round Hill 305 Turner 350
Mianus 215 Smith 700
Downtown 101 Johnson 500
Redwood 222 Lindsay 700
Brighton 217 Green 750
201 Williams 900
110 Peterson 600
218 Lyle 700
24
139
Representación de Datos
Organización de Registros en Bloques
• Factor de bloqueo (fb):
tamaño del bloque / tamaño del registro
• En general, el cuociente no entrega un valor exacto.
Luego, se usa la fórmula:
tamaño del bloque / tamaño del registro
• Este factor permite saber el número de bloques del
archivo.
140
Representación de Datos
Organización de Registros en Bloques
Está la posibilidad de usar el espacio libre que queda
porque el tamaño del bloque no es múltiplo del
tamaño del registro, mediante registros atravesados
(SPAN).
141
Representación de Datos
Organización de Registros en Bloques
Bloque i Registro 1 Registro 2 Registro 3
Bloque i+1 Registro 4 Registro 5 Registro 6
Registros no Atravesados
Bloque i Registro 1 Registro 2 Registro 3 Registro 4a
Bloque i+1 Registro 4b Registro 5 Registro 6 Registro 7

Registros Atravesados (Registros Span)
Registro 1 Registro 2 Registro 3
Registro 4 Registro 5 Registro 6
Registro 1 Registro 2 Registro 3 Registro 4a
Registro 4b Registro 5 Registro 6 Registro 7
142
Representación de Datos
Organización de Bloques en Archivos
• Asignación Contigua.
• Asignación Enlazada.
bloque bloque bloque bloque
1 2 3 4
bloque bloque bloque bloque
1 2 3 4
143
Representación de Datos
Organización de Bloques en Archivos
4
9
144
Representación de Datos
Organización de Bloques en Archivos
• Asignación Indexada.
25
145
Representación de Datos
Organización de Bloques en Archivos
Un archivo tiene un encabezado o descriptor de
archivo con:
• Información para determinar las direcciones de disco
de los bloques del archivo.
• Descripción de los formatos de registros: largo de
registro, orden de los campos en el registro,
separadores.
146
Representación de Datos
BLOBs
• Un dato de tipo BLOB representa un dato de gran
tamaño.
• Ejemplos comunes de datos BLOB son las
imágenes (GIF, JPEG), películas en formato MPEG y
el audio.
147
Representación de Datos
BLOBs
Almacenamiento:
• Debe almacenarse como una secuencia de bloques,
comúnmente asignados consecutivamente en un
cilindro para ser recuperado fácilmente.
• No obstante puede ser almacenado como una lista
enlazada de bloques.
148
Representación de Datos
BLOBs
Almacenamiento: (cont.)
• Por otro lado, puede requerirse que el BLOB sea
recuperado rápidamente, de modo que guardarlo en
un solo disco resulte insuficiente.
• Luego, será necesario particionar el BLOB entre
varios discos, alternando sus bloques entre ellos.
• Así, varios bloques del BLOB pueden ser leídos a la
vez, aumentando la tasa de recuperación por un
factor similar al número de discos de la partición.
149
FIN