Almacenamiento y estructura de archivos

Download Report

Transcript Almacenamiento y estructura de archivos

Ing. Fabián Ruano




Caché: rapida y costosa
Memoria principal: RAM, temporal. No es lo
suficientemente grande para almacenar BDs
Memoria flash: Memoria de solo lectura
programable y borrable electricamente. Para
escribir se debe formatear todo el banco de
memoria. Igual de rapida que RAM.
Discos magnéticos: Principal medio de
almacenamiento. Acceso a datos desde la
memoria principal y guardado igual.




Almacenamiento óptico: Compact Disc,
Digital Versatile Disc, Blu-Ray Disc, UMD, HD
DVD, Blu-Ray 3d
Almacenamiento en cinta: menos costo,
mayor lentitud de acceso por ser secuencial.
Almacenamiento de copias de seguridad
Almacenamiento en linea: cloud-computing
Solid
State
Drive,
Secure
Digital,
MultiMediaCard,
Memory
Stick,
CompactFlash, Microdrive, SmartMedia, xDPicture Card
Dependiendo de la velocidad se clasifican en
 Almacenamiento primario
 Almacenamiento secundario
 Almacenamiento terciario
Dependiendo de persistencia de la
información:
- Volátil
- No Volátil


Capacidades?
Características físicas



Controlador del disco: interfaz entre sistema
informático y HW de unidad de disco. Toma
ordenes de alto nivel y realiza acciones físicas.
Comprobación de suma: valor guardado en
escritura por sector en lectura se recalcula y se
compara con lo almacenado, si despues de n
intentos no coincide se declara error de lectura.
Reasignación de sectores: cuando se daña sector
se mueve información a sectores para este fin.




DD conectado a controlador
Varios
DD
en
diferentes
locaciones
conectados a un único controlador
Red de área de almacenamiento (Storage Area
Network, SAN): gran numero de discos
mediante red de alta velocidad a varios
servidores
Disposición
redundante
de
discos
independientes RAID (Redundante Array of
Independent Disks): proporciona vista lógica
de DD de gran tamaño y muy fiable.



Tiempo de acceso: tiempo desde formulación
de solicitud de E/S hasta inicio de
transferencia de datos: búsqueda + latencia.
Tiempo de búsqueda: tiempo de ubicación
del brazo. Tiempo medio de búsqueda: media
de
tiempo
con
solicitudes
aleatorias
uniformemente distribuidas.
Tiempo de latencia rotacional: tiempo de
espera a que un sector aparezca bajo el
brazo. Tiempo de latencia medio: [tiempo
rotación completa] / 2


Velocidad de transferencia: velocidad a la que
se puede recuperar o guardar datos en disco.
Tiempo medio entre fallos: fiabilidad del
disco. Cantidad de tiempo que, en media, se
puede esperar que el sistema funcione de
manera continua sin tener algún fallo




Requerimientos: gran número de discos en
sistema,
paralelismo
y
fiabilidad
de
almacenamiento
Objetivo: abordar problemas de rendimiento
y fiabilidad.
Fiabilidad Redundancia
Rendimiento Paralelismo


Nivel 0: información en fragmentos pero sin
redundancia
Nivel 1: espejos de cada fragmento. Simple
pero costoso. Cuando rendimiento de lectura
es mucho mas importante que capacidad.
Conjunto RAID 1 solo puede ser tan grande
como el mas pequeño de los discos.

Nivel 2: división por bits. Varios discos
dedicados a paridad

Nivel 3: división por bytes. Problemas de
lectura. Disco dedicado a paridad.

Nivel 4: división por bloques. Disco dedicado
a paridad

Nivel 5: paridad distribuida

Nivel 6: adiciona paridad a RAID 5




Costo económico extra
Requisitos de rendimiento de E/S
Rendimiento cuando falla disco
Rendimiento durante la reconstrucción de
datos



Objetivo: minimizar transferencias de bloques
entre el disco y la memoria
Solución: Maximizar número de bloques en
memoria para evitar procesos entre memoria
principal y secundaria. Memoria intermedia
(buffer) es destinada para ello.
Gestor de memoria intermedia: responsable
de asignación del espacio del buffer.



Estrategia de sustitución: Que hacer cuando
no queda espacio en buffer? Algoritmo
común: Menos recientemente utilizado.
Bloques clavados: limitar escritura de bloque
en disco.
Salida forzada de bloques: sobre-escribir
bloque del disco aunque no se necesite
espacio en buffer.


No todos los bloques son de igual longitud
Enfoque sencillo:
espacios iguales
acceso secuencial
problema de espacios libres en borrado
problemas cuando bloques no son de
adecuado
◦ Adicionar estructura para index de espacios
◦ Registros en lista enlazada
◦
◦
◦
◦
tamaño

Aparecen cuando:
◦ Necesario almacenar varios tipos de registros en un
solo archivo
◦ Longitudes variables en uno o varios campos
◦ Tipos de registros con campos repetidos

Representación en cadenas de bytes
◦ Símbolo de finalización de registro o tamaño de
registro al inicio del mismo
◦ Inconvenientes cadena de bytes
 Problemas para volver a usar el espacio liberado tras el
borrado de un registro
 Expansión de tamaño de registros guardados es casi
imposible en algunos casos

Estructura de páginas con ranuras
◦ Hay cabecera al inicio del bloque que indica
 Numero de elementos en el registro
 El espacio vacio del bloque
 Un array de entradas que indica la dirección y el
tamaño de cada registro
◦ Bloques de pocos Kb de tamaño
◦ Reubicación tras borrado de un registro

Representación de longitud Fija
◦ Espacio Reservado
 Teniendo el tamaño máximo de cada registro se toman
bloques de dicho tamaño y lo sobrante de cada bloque
se rellena con caracteres especiales
 Útil cuando los registros tienen usualmente un tamaño
cercano al maximo
◦ Representación con listas
 cada registro se representa con lista de registros de
longitud fija enlazados mediante punteros
 Desperdicia espacio excepto en el primer bloque
 Soluciones para perdida de espacio: usar bloque ancla
y bloque de desbordamiento

Organización de Archivos En montículo
◦ No hay organización de los registros
◦ Generalmente un archivo por relación

Organización de Archivos Secuenciales
◦ Organización dependiente de una clave de
búsqueda, no necesariamente PK o superclave.
◦ Vinculación de registros mediante punteros
◦ Costo de ordenamiento es alto cuando se inserta o
borran registros, hay que mover grandes
cantidades de información

Organización Asociativa (hash) de archivos
◦ Relación x Archivo y tuplas en bloques de tamaño
fijo
 Ideal para BD pequeñas
 Aprovecha sistema de archivos del S.O.
◦ Relación x Archivo y tuplas en diseños mas
complejos
◦ Único archivo para base de datos completa
◦ Almacenan registros relacionados de dos o mas
relaciones en un solo bloque. Mejor consultas.

Usualmente
◦
◦
◦
◦
◦

Nombres de relaciones
Nombres de atributos de cada relación
Dominios y longitudes de atributos
Nombres de vistas y definicion de las mismas
Restricciones de integridad
Algunos sistemas
◦ Nombres de usuarios
◦ Informacion de cuentas de usurios
◦ Informacion para autenticacion

Informacion estadistica
◦ No tuplas x relacion
◦ Metodo de almacenamiento x relacion

Organización de almacenamiento
◦ Tipo de organización
◦ Ubicación de las relaciones

Informacion de indices
◦
◦
◦
◦
Nombre de indice
Nombre de relacion
Atributos implicados
Tipo de indice formado


http://es.wikipedia.org/wiki/RAID
Silberschatz, Korth, Sudarshan. Fundamentos
de bases de datos 4ta edicion. CAPITULO 11