Estructuras RAID PDF INFO
-
Upload
alvarosilva -
Category
Documents
-
view
213 -
download
0
description
Transcript of Estructuras RAID PDF INFO
-
1Estructuras Estructuras de de
AlmacenamientoAlmacenamientoBases de DatosBases de Datos
IngenierIngeniera Ta Tcnica en Informcnica en Informtica de Sistemastica de Sistemas
Nivel FNivel Fsicosico
IntroducciIntroduccinn 22
Nivel Lgico Modelo Entidad-Relacin y Modelo Relacional
El nivel en el que se deben mover los usuario es el nivel lgico
El objetivo de un sistema de bases de datos es simplificar y facilitar la tarea de acceso a los datos
Al final estn los dispositivos de almacenamiento y es necesario su conocimiento para su adecuada utilizacin
RAID Acceso al Almacenamiento Organizacin de los Archivos Organizacin de los Registros en los Archivos Almacenamiento con Diccionario de Datos
ndicendice
IntroducciIntroduccinn 33
RAIDRAID
Estructuras de AlmacenamientoEstructuras de AlmacenamientoBases de DatosBases de Datos
IngenierIngeniera Ta Tcnica en Informcnica en Informtica de Sistemastica de Sistemas
Requisitos AlmacenamientoRequisitos Almacenamiento
RAIDRAID 55
Los requisitos de almacenamiento de datos de algunas aplicaciones (en particular aplicaciones Web, aplicaciones de bases de datos y aplicaciones multimedia) han crecido tan rpido que se necesita un gran nmero de discos para almacenar sus datos (incluso aunque las capacidades de los discos hayan estado creciendo muy rpidamente)
Tener varios discos presenta oportunidades para mejorar la velocidad (discos funcionando con lectura/escritura en paralelo) y la fiabilidad(guardar informacin repetida)
RAIDRAID
RAIDRAID 66
Las tcnicas de organizacin de discos denominadas RAID (Redundant Array of Independent Disks; Disposicin Redundante de Discos Independientes) se han propuesto para abordar los problemas de rendimiento y fiabilidad
Nacen con la idea de usar discos pequeos de bajo coste como alternativa econmicamente efectiva a los discos grandes y caros
Actualmente se usan por su mayor fiabilidad y por su mayor velocidad de transferencia de datos, ms que por motivos econmicos
-
2Fiabilidad RAIDFiabilidad RAID
RAIDRAID 77
La probabilidad de que algn disco, de una estructura de N discos, falle es mucho ms elevada que la probabilidad de que falle un nico disco concreto
Tiempo Medio entre Fallos (un disco): 100.000 horas = 11 aos
Tiempo Medio entre Fallos (un disco de cien):
100.000/100 horas = 1.000 Horas= 42 das
La solucin al problema de la fiabilidad es introducir redundancia
RedundanciaRedundancia
RAIDRAID 88
La Redundancia consiste en guardar informacin adicional que normalmente no se necesita pero que puede utilizarse en caso de fallo de un disco para reconstruir la informacin perdida
En presencia de redundancia el tiempo medio efectivo entre fallos aumenta
CreaciCreacin de Imn de Imgenesgenes
RAIDRAID 99
La forma ms sencilla de crear redundancia (y la ms costosa) es duplicar los discos (Un disco lgico Dos discos fsicos)
El tiempo medio entre prdidas de datos (fallos de un disco con imagen) depende del tiempo medio entre fallos de cada disco y del tiempo medio de reparacin
Fallos de los discos independientesTiempo medio entre fallos de disco: 100.000 HorasTiempo medio de reparacin: 10 Horas
Tiempo medio entre prdidas de datos: 57.000 aos
(Disponibles sistemas con 55 a 110 aos)
Rendimiento RAIDRendimiento RAID
RAIDRAID 1010
Con la creacin de imgenes la velocidad a la que se pueden procesar las solicitudes de lectura se duplica (la solicitud puede enviarse a cualquiera de los discos, si ambos estn operativos)
Con varios discos se puede mejorar la velocidad de transferencia distribuyendo los datos (en su forma ms sencilla se puede hacer una distribucin en el nivel del bit: 8 discos > un bit de cada byte en cada disco)
Sectores 8 veces ms grandes
Velocidad de Acceso 8 veces mayor
DistribuciDistribucin Nivel de Bloquen Nivel de Bloque
RAIDRAID 1111
La distribucin de datos ms usada es la distribucin en el nivel de bloque: se reparte los bloques entre varios discos
Se trata la disposicin de discos como un nico y gran disco y se proporciona nmeros lgicos a los bloques de todos los discos comenzando en 0
8 discos: Bloque lgico 0 Bloque fsico 0 del disco 1Bloque lgico 11 Bloque fsico 1 del disco 4
Al leer un archivo grande, se buscan n bloques en paralelo en los n discos
Niveles RAIDNiveles RAID
RAIDRAID 1212
La creacin de imgenes proporciona gran fiabilidad pero resulta costosa
La distribucin proporciona velocidades de transferencia elevadas pero no mejora la fiabilidad
Niveles RAID: esquemas con diferentes compromisos de coste y rendimiento (proporcionan la redundancia mediante bits de paridad)
4 discos de datosP: bits para correccin de errores mediante paridadC: copia redundante de los datos
-
3RAID de Nivel 0RAID de Nivel 0
RAIDRAID 1313
RAID de Nivel 0 se refiere a disposiciones de disco con distribucin en el nivel de bloque pero sin redundancia(ni creacin de imgenes ni bits de paridad)
P: ParidadC: Copia
Distribucin no redundante
RAID de Nivel 1RAID de Nivel 1
RAIDRAID 1414
RAID de Nivel 1, o discos con imagen, se refiere a la creacin de imgenes de disco con distribucin de bloques
P: ParidadC: Copia C C C C
RAID de Nivel 2RAID de Nivel 2
RAIDRAID 1515
RAID de Nivel 2 tambin se conoce como organizacin de cdigos de correccin de errores tipo memoria
P: ParidadC: Copia P P P
Realizan la deteccin de errores utilizando los bits de paridad (1 bit de paridad permite detectar un error en un bit de un byte)
RAID 2 vs. RAID 1RAID 2 vs. RAID 1
RAIDRAID 1616
RAID de Nivel 2 slo necesita la sobrecarga de tres discos para cuatro discos de datos, a diferencia de RAID de Nivel 1, que necesita la sobrecarga de cuatro discos
RAID de Nivel 3RAID de Nivel 3
RAIDRAID 1717
RAID de Nivel 3, u organizacin de paridad con bits entrelazados, a diferencia de los sistemas de memoria, los controladores de disco pueden detectar si un sector se ha ledo correctamente, por lo que es suficiente un bit de paridad
P: ParidadC: Copia P
Si un sector se deteriora se sabe exactamente cual es y se puede recuperar a travs del nico bit de paridad
RAID 3 vs. RAID 2RAID 3 vs. RAID 2
RAIDRAID 1818
RAID de Nivel 3 es tan bueno como RAID de Nivel 2, pero resulta menos costoso en cuanto al nmero de discos adicionales (slo tiene la sobrecarga de un disco), por lo que RAID de Nivel 2 no se utiliza en la prctica
-
4RAID 3 vs. RAID 1RAID 3 vs. RAID 1
RAIDRAID 1919
RAID de Nivel 3 tiene dos ventajas respecto a RAID de Nivel 1
Slo se necesita un disco de paridad para varios discos normales, en comparacin con un disco imagen por cada disco en RAID de Nivel 1, por lo que se reduce la sobrecarga de almacenamiento (la velocidad de transferencia es N veces ms rpida que en un disco)
RAID de Nivel 3 permite un menor nmero de operaciones de entrada/salida, dado que participan todos los discos
RAID de Nivel 4RAID de Nivel 4
RAIDRAID 2020
RAID de Nivel 4, u organizacin de paridad con bloques entrelazados, usa distribucin de bloque y adems guarda un bloque de paridad en un disco aparte en un disco aparte para los bloques del resto de discos
P: ParidadC: Copia P
La velocidad de transferencia es menor, pero se pueden ejecutar en paralelo varios accesos de lectura, lo que produce una mayor velocidad global
La mejor velocidad de transferencia es para accesos de gran tamao
RAID de Nivel 5RAID de Nivel 5
RAIDRAID 2121
RAID de Nivel 5, o paridad distribuida con bloques entrelazados, divide los datos y la paridad entre los N+1 discos aumentando de esta forma el nmero de solicitudes atendidas por unidad de tiempo
P: ParidadC: Copia PPPPP
RAID 5 vs. RAID 4RAID 5 vs. RAID 4
RAIDRAID 2222
RAID de Nivel 4 RAID de Nivel 5
P419181716
P315141312
P2111098
P17654
P03210
D5D4D3D2D1
P419181716
15P3141312
1110P298
765P14
3210P0
D5D4D3D2D1
RAID Nivel 5 incluye a RADI Nivel 4 dado que ofrece mejor rendimiento de lectura y escritura por el mismo coste
RAID de Nivel 6RAID de Nivel 6
RAIDRAID 2323
RAID de Nivel 6, tambin denominado esquema de redundancia P+Q, guarda informacin redundante adicional para proteccin contra fallos de disco mltiples
P: ParidadC: Copia
Utiliza cdigos de Reed-Solomonpara la correccin de errores
PPPPP P
ElecciEleccin del Nivel RAIDn del Nivel RAID
RAIDRAID 2424
Factores a tener en cuenta al elegir un Nivel RAID
Coste econmico extra de los requisitos de almacenamiento en disco
Requisitos de rendimiento en trminos del nmero de operaciones de entrada/salida
Rendimiento cuando falla un disco Rendimiento durante la reconstruccin (mientras los datos
del disco estropeado se reconstruyen en un nuevo disco)
-
5Rendimiento en ReconstrucciRendimiento en Reconstruccinn
RAIDRAID 2525
El rendimiento en la reconstruccin de un sistema RAID puede ser un factor importante si se necesita un aporte continuo de datos, como ocurre en los sistemas de bases de datos de alto rendimiento
RAID de Nivel 0 se usa en aplicaciones de alto rendimiento donde la seguridad de los datos no es crtica
RAID de Nivel 1 presenta la reconstruccin ms sencillo pero con el sistema ms caro
RAID de Nivel 3 (2) raramente se usa dado que la distribucin de bloques da mejores resultados para grandes transferencias
Rendimiento en ReconstrucciRendimiento en Reconstruccinn
RAIDRAID 2626
RAID de Nivel 5 (4) es una gran opcin para aplicaciones donde los datos se leen frecuentemente y se escriben raramente
RAID de Nivel 6 no se soporta actualmente en casi ninguna implementacin RAID, pero es recomendable en aplicaciones en las cuales la seguridad de datos es muy importante
ModeradoAltoRAID de Nivel 5
AltoModeradoRAID de Nivel 1
Entrada/SalidaAlmacenamiento
Requisitos
Aspectos HardwareAspectos Hardware
RAIDRAID 2727
RAID Software (implementado sin cambios en el nivel hardware) / RAID Hardware (hardware de propsito especial)
Intercambio en caliente (los discos averiados se puede eliminar y reemplazar sin apagar el sistema; fundamental en los sistemas crticos 24x7)
Varias fuentes de alimentacin con bateras de respaldo
Varios controladores de disco
Varias interconexiones con el sistema
Los conceptos RAID se han generalizado a otros dispositivos de almacenamiento e incluso a la transmisin de datos
Acceso al Acceso al AlmacenamientoAlmacenamiento
Estructuras de AlmacenamientoEstructuras de AlmacenamientoBases de DatosBases de Datos
IngenierIngeniera Ta Tcnica en Informcnica en Informtica de Sistemastica de Sistemas
Archivos y BloquesArchivos y Bloques
Acceso al AlmacenamientoAcceso al Almacenamiento 2929
Las bases de datos se corresponden con archivos, residentes en disco con copia de seguridad en cinta, que mantiene el sistema operativo
Cada archivo se divide en unidades de almacenamiento de longitud constantes denominadas bloques, que son las unidades de asignacin de almacenamiento y de transferencia de datos
Uno de los principales objetivos del sistema de bases de datos es minimizar el nmero de transferencias de bloques entre el disco y la memoria
Memoria IntermediaMemoria Intermedia
Acceso al AlmacenamientoAcceso al Almacenamiento 3030
Una manera de reducir el nmero de accesos a disco es mantener en la memoria principal todos los bloques que sea posible
El objetivo es maximizar la probabilidad de que, cuando se necesite, un bloque ya se encuentre en la memoria principal y por tanto no se necesite un acceso a disco
El gestor de la memoria intermedia es el responsable de la asignacin de la memoria intermedia
La memoria intermedia (buffer) es la parte de la memoria principal disponible para el almacenamiento de las copias de los bloques de disco
-
6Gestor Memoria IntermediaGestor Memoria Intermedia
Acceso al AlmacenamientoAcceso al Almacenamiento 3131
Los programas de un sistema de bases de datos formulan solicitudes al gestor de la memoria intermedia cuando necesitan un bloque del disco
Si el bloque se encuentra en la memoria intermedia se devuelve al programa solicitante
Si el bloque no se encuentra en la memoria intermedia el gestor asigna espacio al bloque descartando, si hace falta, algn otro bloque (este se graba en disco si ha sido modificado desde la ltima vez que se grab) y lo lee a la memoria intermedia
Esquemas de Gestin de Memoria especficos
Estrategia de SubstituciEstrategia de Substitucinn
Acceso al AlmacenamientoAcceso al Almacenamiento 3232
Cuando no queda espacio libre en la memoria intermedia hay que eliminar un bloque de sta antes de que se pueda escribir en l otro nuevo
Generalmente los sistemas operativos utilizan un esquema de menos recientemente utilizado (Last Recently Used, LRU), en el que se vuelve a escribir en el disco y se elimina de la memoria intermedia el bloque al que se ha hecho referencia menos recientemente
En las bases de datos funciona mejor el esquema de ms recientemente utilizado (Most Recently Used, MRU) pues se suele reutilizar la informacin
Bloques ClavadosBloques Clavados
Acceso al AlmacenamientoAcceso al Almacenamiento 3333
Para que el sistema de bases de datos pueda recuperarse de las cadas resulta necesario limitar las ocasiones en que se puede volver a escribir el bloque en el disco
Se dice que un bloque est clavado cuando no se le permite que se vuelva a escribir en el disco
Aunque muchos sistemas operativos no permiten trabajar con bloques clavados, esta prestacin resulta esencial para la implementacin de un sistema de bases de datos resistente a cadas
Salida Forzada de BloquesSalida Forzada de Bloques
Acceso al AlmacenamientoAcceso al Almacenamiento 3434
Hay situaciones en las que resulta necesario volver a escribir el bloque en el disco, aunque no se necesite el espacio de memoria intermedia que ocupa
Este proceso de escritura se denomina salida forzada del bloque
Se necesita la salida forzada porque la memoria intermedia se pierde en las cadas mientras que los datos del disco suelen sobrevivir
for each tupla p de prestatario dofor each tupla c de cliente do
if p[nombre_cliente]=c[nombre_cliente]then begin
sea x una tupla definida como sigue:x[nombre_cliente]:=p[nombre_cliente]x[numero_prestamo]:=p[numero_prestamo]x[calle_cliente]:=c[calle_cliente]x[ciudad_cliente]:=c[ciudad_cliente]incluir la tupla x como parte del resultado
endend
end
EjemploEjemplo
Acceso al AlmacenamientoAcceso al Almacenamiento 3535
prestatario cliente
MRU + clavado del bloque de cliente que se est procesando
OrganizaciOrganizacin de n de los Archivoslos Archivos
Estructuras de AlmacenamientoEstructuras de AlmacenamientoBases de DatosBases de Datos
IngenierIngeniera Ta Tcnica en Informcnica en Informtica de Sistemastica de Sistemas
-
7RegistrosRegistros
OrganizaciOrganizacin de los Archivosn de los Archivos 3737
Los archivos se organizan lgicamente como secuencias de registros
Aunque los bloques son de un tamao fijo determinado por las propiedades fsicas del disco y por el sistema operativo, los tamaos de los registros varan pues en las bases de datos relacionales las tuplas de las diferentes relaciones suelen ser de tamaos distintos
Registros Longitud FijaRegistros Longitud Fija
OrganizaciOrganizacin de los Archivosn de los Archivos 3838
type cuenta = recordnumero_cuenta: char(10);nombre_sucursal: char(22);saldo: real;
end
1 carcter = 1 byte
1 real = 8 bytes
40 bytes
Registros ConsecutivosRegistros Consecutivos
OrganizaciOrganizacin de los Archivosn de los Archivos 3939
700SantiagoC-218registro 8
600PontevedraC-110registro 7
750MonforteC-217registro 6
900SantiagoC-201registro 5
700BetanzosC-222registro 4
500PontevedraC-101registro 3
700OrenseC-215registro 2
350LugoC-305registro 1
400Santiago C-102registro 0
Resulta difcil borrar un registro (rellenar o marcar)
Registros en dos bloques (salvo tamao mltiplo exacto)
Desplazamiento GlobalDesplazamiento Global
OrganizaciOrganizacin de los Archivosn de los Archivos 4040
700SantiagoC-218registro 8
600PontevedraC-110registro 7
750MonforteC-217registro 6
900SantiagoC-201registro 5
700BetanzosC-222registro 4
500PontevedraC-101registro 3
350LugoC-305registro 1
400Santiago C-102registro 0
Necesita desplazar muchos registros
Desplazar Desplazar ltimoltimo
OrganizaciOrganizacin de los Archivosn de los Archivos 4141
600PontevedraC-110registro 7
750MonforteC-217registro 6
900SantiagoC-201registro 5
700BetanzosC-222registro 4
500PontevedraC-101registro 3
700SantiagoC-218registro 8
350LugoC-305registro 1
400Santiago C-102registro 0
Ms sencilla que un desplazamiento global
Mejor dejarlos libres y esperar una insercin posterior (no basta una simple marca)
Cabecera de ArchivoCabecera de Archivo
OrganizaciOrganizacin de los Archivosn de los Archivos 4242
700
600
900
500
700
400
cabecera
SantiagoC-218registro 8
PontevedraC-110registro 7
registro 6
SantiagoC-201registro 5
registro 4
PontevedraC-101registro 3
OrenseC-215registro 2
registro 1
Santiago C-102registro 0
La cabecera de archivo guarda la direccin del primer registro libre y cada registro libre se utiliza para guardar la direccin del siguiente registro libre
-
8Registros Longitud VariableRegistros Longitud Variable
OrganizaciOrganizacin de los Archivosn de los Archivos 4343
Los registros de longitud variable surgen en los sistemas de bases de datos de varias maneras:
Almacenamiento de varios tipos de registros en un mismo archivo
Tipos de registro que permiten longitudes variables para uno o varios campos
Tipos de registros que permiten campos repetidos
Registros Longitud VariableRegistros Longitud Variable
OrganizaciOrganizacin de los Archivosn de los Archivos 4444
type lista_cuentas = recordnombre_sucursal: char(22);informacion_cuentas: array [1] of record
numero_cuenta: char(10);saldo: real
endend
No hay lmite para el tamao del registro hasta el tamao del disco
Cadena de Cadena de BytesBytes
OrganizaciOrganizacin de los Archivosn de los Archivos 4545
C-110
C-201
600
900
C-218 700
Monforte
Betanzos
Pontevedra
Orense
Lugo
Santiago
750C-217registro 5
700C-222registro 4
500C-101registro 3
700C-215registro 2
350C-305registro 1
400C-102registro 0
No resulta sencillo reutilizar el espacio ocupado por un registro borrado anteriormente (fragmentacin)
No queda espacio para el aumento del tamao de los registros (el desplazamiento es costoso)
PPginas con Ranurasginas con Ranuras
OrganizaciOrganizacin de los Archivosn de los Archivos 4646
Espacio LibreNmero Entradas
Cabecera de bloque
Fin del espacio libre
Tamao
Ubicacin
Espacio ReservadoEspacio Reservado
OrganizaciOrganizacin de los Archivosn de los Archivos 4747
C-110
C-201
600
900
C-218
700
Monforte
Betanzos
Pontevedra
Orense
Lugo
Santiago
750C-217registro 5700C-222registro 4500C-101registro 3700C-215registro 2350C-305registro 1400C-102registro 0
Vlida si existe una longitud mxima que no se supera nunca
Listas EnlazadasListas Enlazadas
OrganizaciOrganizacin de los Archivosn de los Archivos 4848
Monforte
Betanzos
Pontevedra
Orense
Lugo
Santiago
700C-218registro 8
600C-110registro 7
750C-217registro 6
900C-201registro 5
700C-222registro 4
500C-101registro 3
700C-215registro 2
350C-305registro 1
400C-102registro 0
-
9OrganizaciOrganizacin de n de los Registros en los Registros en
los Archivoslos ArchivosEstructuras de AlmacenamientoEstructuras de Almacenamiento
Bases de DatosBases de DatosIngenierIngeniera Ta Tcnica en Informcnica en Informtica de Sistemastica de Sistemas
OrganizaciOrganizacin de Registrosn de Registros
OrganizaciOrganizacin de los Registros en los Archivosn de los Registros en los Archivos 5050
Generalmente se usa un archivo separado para almacenar los registros de cada relacin de la base de datos
Existen organizaciones de archivos en agrupacionesen las cuales se guardan en el mismo archivo registros de relaciones diferentes
Archivos en MontArchivos en Montculoculo
OrganizaciOrganizacin de los Registros en los Archivosn de los Registros en los Archivos 5151
En la organizacin de archivos en montculo se puede colocar cualquier registro en cualquier parte del archivo en que haya espacio suficiente
No hay ninguna ordenacin de los registros
Generalmente slo hay un archivo por relacin
Archivos SecuencialesArchivos Secuenciales
OrganizaciOrganizacin de los Registros en los Archivosn de los Registros en los Archivos 5252
En la organizacin de archivos secuenciales los registros se guardan en orden secuencial, basado en el valor de la clave de bsqueda (no tiene por quser una clave principal o una superclave) de cada registro
750MonforteC-217
400Santiago C-102
900SantiagoC-201
700BetanzosC-222
700SantiagoC-218
600PontevedraC-110
500PontevedraC-101
700OrenseC-215
350LugoC-305
HashHash
OrganizaciOrganizacin de los Registros en los Archivosn de los Registros en los Archivos 5353
En la organizacin asociativa (hash) de archivos se calcula una funcin de asociacin de algn atributo de cada registro
El resultado de la funcin de asociacin especifica el bloque del archivo en el que se colocar el registro
Est muy relacionado con la creacin de ndices
Almacenamiento Almacenamiento con Diccionario con Diccionario
de Datosde DatosEstructuras de AlmacenamientoEstructuras de Almacenamiento
Bases de DatosBases de DatosIngenierIngeniera Ta Tcnica en Informcnica en Informtica de Sistemastica de Sistemas
-
10
CatCatlogo del Sistemalogo del Sistema
Almacenamiento con Diccionario de DatosAlmacenamiento con Diccionario de Datos 5555
Un sistema de bases de datos relacional necesita tener datos sobre las relaciones, como por ejemplo el esquema
Los nombres de las relacionesLos nombres de los atributos de cada relacinLos dominios y las longitudes de los atributosLos nombres de las vistas definidas en la base de
datos y las definiciones de esas vistasLas restricciones de integridad
AdemAdems s
Almacenamiento con Diccionario de DatosAlmacenamiento con Diccionario de Datos 5656
datos de los usuarios del sistema
Los nombres de los usuarios autorizadosLa informacin de las cuentas de los usuariosContraseas u otra informacin usada para
autentificar a los usuarios
AdemAdems s
Almacenamiento con Diccionario de DatosAlmacenamiento con Diccionario de Datos 5757
datos de informacin estadstica y descriptiva
Nmero de tuplas de cada relacinMtodo de almacenamiento utilizado para cada relacinLa organizacin del almacenamiento (secuencial,
asociativa o con montculos)
AdemAdems s
Almacenamiento con Diccionario de DatosAlmacenamiento con Diccionario de Datos 5858
datos sobre los ndices de cada una de las relaciones
El nombre del ndiceEl nombre de la relacin para la cual se crea el ndiceLos atributos sobre los cuales se define el ndiceEl tipo de ndice formado
Minibase de DatosMinibase de Datos
Almacenamiento con Diccionario de DatosAlmacenamiento con Diccionario de Datos 5959
La informacin del catlogo constituye una base de datos en miniatura
Algunos sistemas de bases de datos guardan esta informacin utilizando estructuras de datos y cdigo especial
Suele resultar preferible guardar los datos sobre la base de datos en la misma base de datos