You are on page 1of 45

INDEXACIÓN PARA MOTORES DE BÚSQUEDA EN LA WEB

RAID
(Redundant Array of Independent Disks)

Material Extraído del curso:


Computación en Clusters
Dra. Dolores I. Rexachs
Dr. Emilio Luque

1
Disponibilidad de datos
Almacenamiento
Discos: disponibilidad a nivel de discos con mecanismos de
redundancia: RAID
Arquitectura: DAS, NAS, SAN
Administración: replicación local y remota
Backup / Restore
Las medidas tradicionales de rendimiento también se
aplican a la E/S
Tiempo de respuesta o latencia
Productividad o anchura de banda de E/S
TPS: Transacciones por segundo

2
Parámetros que influyen en el rendimiento
Tiempo de acceso
Tiempo de búsqueda
Movimiento del cabezal
Tlatencia = 1 /(2Trotación ) )
Latencia Trotación = 7200 RPM
Rotación

Tacceso = Tbúsquda + Tlatencia ≈ 10ms + 4,2ms = 14,2ms


Ancho de Banda
Rotación: Velocidad de
Contribución relativa de los diferentes
transferencia componentes al tiempo de E/S para
Ancho de banda de la conexión una petición de un bloque de 4 KByte
70 Acceso Aleatorio

Problema: el ancho de banda

Contribución (porcentaje)
60 Acceso Local

crece más lento que la 50


40

capacidad 30
20
10
0

ad

a
ed

ci

ci
he

en
qu

te
r

r
ve

La
3

fe
s

O

ns
a
Tr
Fiabilidad
Errores de búsqueda, por ejemplo, pido
leer el cilindro 6 y la cabeza se va al 7 Redundancia
de información
Errores Transitorios soft, por ejemplo,
polvo en las cabezas
Errores Permanentes hard: daños físicos
Errores de programación (p.e. sector no
existente

Errores de lectura transitorios

Errores de lectura hard (duros) Errores de búsqueda

4
Redundancia:
Tolerancia a fallos / Disponibilidad
Sistemas Tolerantes a fallos
Todos los recursos necesarios están replicados para ofrecer una
disponibilidad continua en caso de fallo.
Disponibilidad total.
Coste elevado (hardware y software especializado).
Sistemas de Alta Disponibilidad
Se replican aquellos recursos imprescindibles y se gestiona,
mediante software, el fallo de los recursos y su recuperación.
Bajo coste. (software especializado, hardware estándar).
Grado menor de disponibilidad.
Benchmarks de E/S
Estudios realizados en un sistema de
ficheros en UNIX:
el 80% de los accesos es a ficheros
menores de 10 KB
el 90% de los accesos a los ficheros
son secuenciales
La distribución por tipo de acceso a
los ficheros
el 67% de lecturas
el 27% de escrituras y
el 6% de lectura y escritura
Otros autores han encontrado que la
relación de lecturas a escrituras del disco
es aproximadamente 2:1

6
SLED Single Large Expensive Disk
Mejoran la organización de la
información
Pistas, Sectores, Clusters
Interleave, Track skew, ZBR
Mejora de las partes físicas
Fiabilidad, Recalibración, RPM,…

7
Soluciones tradicionales
Actualizar o reemplazar los
servidores de aplicaciones
Añadir más CPU’s
Añadir más memoria
Sevidores más potentes

Actualizar o reemplazar los


dispositivos de almacenamiento
Añadir más porcesadores de
almacenamiento (RAID controllers,
etc.)
Añadir más cache
Añadir más discos

Reescribir la aplicación para más


eficienica

8
¿Por qué es necesaria la E/S paralela?
Capacidad, Velocidad: Ancho
de banda y latencia (Depende
de las partes mecánicas)
Los dispositivos son baratos
Necesidad de
Almacenamiento estable Æ
Redundancia

Solución Î
Paralelismo

9
Evolución
DAS
(Direct Attached Storage)
SCSI
RAID
SAN
(Storage Area Network)
NAS
(Network Attached Storage)
NASD

10
Batería de discos
Las peticiones separadas de E/S
se pueden gestionar en paralelo,
siempre que los datos requeridos
residan en discos separados.
Además se puede ejecutar en
paralelo una única petición de
E/S si el bloque de datos al que se
va a acceder está distribuido a lo
largo de varios discos.
Utilizar una batería de discos puede
suponer:
Mayor velocidad de lectura de
información de la unidad, o
Mayor protección ante la pérdida
de información

11
SLED Æ JBOD / RAID

12
JBOD: Just a Bunch Of Disks

Conjunto de discos o RAID lineal


Usa herramientas convencionales
para formatear, partición, y
conexión.

http://www.laboratoire-microsoft.org/articles/web/raid_1/2/ 13
Ventajas e Inconvenientes JBOD
Ventajas
Alta velocidad de
transferencia
Mayor capacidad de disco
Alta tasa de E/S
Mayor velocidad de acceso

Inconvenientes
fiabilidad

14
RAID
El tipo más común de batería de discos es RAID
“Redundant Array of Inexpensive Disks” o “Redundant
Array of Independent Disks”
Desarrollado en Berkeley en 1987. El estándar de
Berkeley especifica 6 niveles diferentes
Características:
RAID es un conjunto de unidades físicas de disco vistas
por el sistema operativo como una unidad lógica.
Los datos se distribuyen a través de las unidades físicas
de un conjunto: Stripping
La capacidad de los discos redundantes se usa para
almacenar información de paridad, que garantice la
recuperación de los datos en caso de fallo de disco.

15
Striping
Distribuir datos entre los dispositivos
Puede realizarse a diferentes niveles:
Hardware; File system; Librería; Etc.
Usando diferentes algoritmos
Declustering es la forma más general,
se dividen los ficheros en tamaños no
fijos

16
Tamaño de la unidad de Striping
Es difícil decidir el tamaño de la unidad
de stripe
Demasiado pequeño Î peticiones pequeñas
usan mucho disco
Muchas búsquedas para un paralelismo no
real
Demasiado grandes Î Grandes peticiones:
pérdida de paralelismo
¿Cómo calcularlo?
¿Configuración del Array configuration?
¿Workload?
¿Combinación de ambos?
¿Existe un valor óptimo general?

17
Mean Time Between Failure (MTBF)
Mean Time Between Failure (MTBF)
El MTBF del array es igual al MTBF de un disco
individual, dividido por el nº de discos en el array
El MTBF de una array no redundantes (RAID 0), es
demasiado bajo para sistemas con necesidad de
disponibilidad
Para la tolerancia a fallos se almacena redundancia de
diferentes modos
MTBDL Mean Time before Data Loss

18
Tolerancia a fallos
Mean Time Between Failure (MTBF)
El MTBF del array es igual al MTBF de un disco individual, dividido por el
nº de discos en el array
El MTBF de una array no redundantes (RAID 0), es demasiado bajo para
sistemas con necesidad de disponibilidad
Para la tolerancia a fallos se almacena redundancia de diferentes modos
Para conseguir la tolerancia a fallos se identifican 4 fases:
Detección del error
Estimación de daños: Diagnóstico
Recuperación del error: llevar al sistema a un estado correctos, desde el que
pueda seguir funcionando (tal vez con funcionalidad parcial)
Tratamiento del fallo y continuación del servicio del sistema: consistencia
global del sistema

19
Elementos de la estructura del RAID
Los elementos que
normalmente incorpora un
RAID convencional son.
Un conjunto de discos.
Un controlador especializado
inteligente.
Protección ante la pérdida de
información: Redundancia
(Mecanismos para el cálculo).
Caches (Cache de lectura:
DRAM, cache de escritura
NVRAM).
Conexiones a uno o más
ordenadores (altas prestaciones,
tipo SCSI,…).

20
Estructura física del RAID
Unidades intercambiables en
caliente
Fuentes de alimentación
redundantes. ¿son críticas?
Sistemas de refrigeración o
Disipadores Æ envejecen
Unidad de disco de reserva para
hot-spare
Unidad de control que
monitoriza y da alertas

21
Parámetros
Unidad de striping.
Una unidad de striping
pequeña es buena para workloads
con baja concurrencia:
incrementa el paralelismo
aplicado a cada petición.
Una unidad de striping
grande puede soportar workloads
con alta concurrencia donde
cada petición independiente
depende de unos pocos discos.
Nivel u organización del
RAID
Redundancia
Paralelismo / Concurrencia.

22
Tipos de RAID
Sumario de los 6 niveles de RAID
Nivel Descripción Espacio Bueno en... Pobre en... Aplicación típica
usado
0 No redundante N Rendimiento Protección Aplicaciones que requieren altas
de datos prestaciones con datos no
críticos
1 Espejo 2N Protección de datos, espacio Controladores de sistemas;
rendimiento lectura ficheros críticos
2 Redundante 1,5 N Frecuencia de Espacio, No se ofrece comercialmente
con código de transferencia frecuencia
Hamming peticones
3 Bit de paridad N+1 Frecuencia de Frecuencia Aplicaciones con muchas E/S
intercalado transferencia peticiones grandes tales como imágenes,
CAD
4 Bloque N+1 Frecuencia Rendimiento No se ofrece comercialmente
paridad peticiones lectura escritura
intercalado
5 Paridad N+1 Frecuencia Frecuencia Grado de petición alto, lectura
distribuida en peticiones de intensiva, consulta de datos.
bloques transferencia Muchos accesos a poca
intercalados información. Favorece
transacciones de E/S
6 P+Q or 2 - dim N+2 ó Protección de datos Rendimiento
MN+M+N escritura
10 Espejo 2N Rendimiento Espacio
53 Paridad N + factor Rendimiento .
stripe balanceado

23
RAID 0: No redundante
Estructura en tiras utilizando
interleaving de bloques
Estándar para cadenas de
discos sin redundancia
Aplicaciones típicas
aplicaciones que requieren
altas prestaciones con datos no
críticos
aplicaciones que necesitan alta
capacidad de transferencia de
datos.

24
RAID 0: No redundante

Estructura en tiras utilizando interleaving de bloques


Estándar para cadenas de discos sin redundancia

Ventajas
Mejora el rendimiento Inconvenientes
Es el más rápido y eficiente Disponibilidad de los datos
Capacidad No dispone de paridad

25
Prestaciones
Las prestaciones dependen de:
Los patrones de petición del host
La distribución de datos,
Debe existir una capacidad de transferencia alta
entre la memoria del host y las unidades de disco
individuales. (controladores de buses internos,
buses de E/S del host, adaptadores de E/S y
buses de memoria del host.
La aplicación debe hacer peticiones de E/S que
controlen el conjunto de disco eficientemente
Ejemplo
3 discos de 160GB de capacidad
100MB/s en lectura
80MB/s en escritura
Disco virtual 480GB (3*160 GB = 480GB)
Con 300 MB/s (3*100MB/s) en lectura
Y 240 MB/s. (3*80Mo/s) en escritura

26
Ejemplo RAID 0 con discos distintos
Capacidad : 4*18GB = 72GB
Lectura : 4*20MB/s = 80MB/s
Escritura : 4*15MB/s = 60MB/s
El disco virtual compuesto de los 4 discos tiene la
4 * la capacidad del de menos capacidad, 4* la
velocidad del más lento. Este es un ejemplo
catastrófico de utilización de RAID 0.

Disque 1 Disque 2 Disque 3 Disque 4


Capacité 300 Go 18Go 20Go 45Go
Débit en 90Mo/s 160Mo/s 20Mo/s 35Mo/s
lecture
Débit en 82Mo/s 125Mo/s 20Mo/s 15Mo/s
écriture
http://www.laboratoire-microsoft.org/articles/web/raid_1/3/
27
Ejemplo stripping en RAID 0
3 Discos duros en modo RAID 0
Stripping de 3072 Bytes. Un
segmento ocupa 6 sectores del disco
duro (3072 B = 6 * 512B).
Queremos guardar un fichero de
8KB
El controlador divide el fichero en 3
segmentos de 3072 B. Reparte los
datos entre los 3 discos y los escribe
al mismo tiempo.
El tercer segmento no se utiliza al
máximo, sólo 1856 B (8000 B – 2 *
3072 B = 1856 B) de los 3072 B. Se
pierde un espacio de
almacenamiento de 3072 – 1856 =
1216 B.
Esto es debido a elegir tiras de un
número de bloque demasiado
elevado.

28
RAID 1: Espejo

29
RAID 1: Espejo
Estructura en espejo

Ventajas Inconvenientes
Disponibilidad de los datos Coste
Mejora el rendimiento de las lecturas Velocidad de escritura

30
RAID 1: Espejo

Espacio usado : 2N
Aplicaciones típicas
Controladores de sistemas
Ficheros críticos

31
RAID 2: Redundante
(código de Hamming)

Acceso paralelo:todos los discos participan en la ejecución de


cada petición de E/S.
Tiras pequeñas
Redundante con código de Hamming

32
RAID 2: Redundante (código de
Hamming)

Ventajas Inconvenientes
Disponibilidad de los datos Coste
Rendimiento Velocidad de escritura

33
RAID 3: Bit de paridad
Acceso paralelo
Tiras pequeñas

Aplicaciones típicas
Entornos monousuario
Aplicaciones con muchas E/S,
tales como imágenes, CAD

34
RAID 3: Bit de paridad
Acceso paralelo
Tiras pequeñas
Disco de paridad. Si un disco
falla,los datos pueden
recuperarse mediante la XOR
de la información que aún está
grabada en el resto de los
discos
Velocidad de giro de los discos
sincronizada

35
RAID 3: Bit de paridad intercalado

Ventajas Inconvenientes
Disponibilidad Sólo una petición a la vez
Rendimiento
Coste

36
RAID 4: Bloque de paridad

Acceso a cada disco


independiente: peticiones de
E/S separadas se atienden en
paralelo
Interleaved de bloques
Disco de paridad
Aplicaciones típicas
37
RAID 4: Bloque de paridad intercalado

Ventajas Inconvenientes
Disponibilidad Escritura lenta
Rendimiento No se pueden realizar más de una
Coste petición simultáneamente porque
simultáneamente hay que actualizar la
paridad
38
RAID 5 Paridad distribuida en bloques
intercalados

Acceso paralelo
Interleaved de bloques
paridad distribuida en
bloques intercalados

39
RAID 5 Paridad distribuida en bloques
intercalados

Aplicaciones típicas
Entornos multiusuario
Grado de petición alto, lectura intensiva, consulta de
datos

http://www.linux-magazin.de/Artikel/ausgabe/2001/11/raid/raid.html 40
RAID 5 Paridad distribuida en bloques
intercalados

Ventajas Inconvenientes
Disponibilidad Costo del almacenamiento de la
Rendimiento paridad
Coste Lento en transferencias intensivas

41
RAID 5 Paridad distribuida en bloques
intercalados

42
RAID 6
RAID-6: Discos de datos
independientes con dos Parity
esquemas de paridad
distribuidas independientes

Parity
Equivalente al 5, pero con
doble paridad.
Discos organizados como en
una matriz de dos dimensiones
Paridad calculada para
Cada fila
Cada columna

43
RAID 6

Ventajas Inconvenientes
No se pierden Complejo diseño de los sistemas controladores
datos a pesar del Mala tasa de rendimiento en escritura
fallo de 2 discos Necesidad de disponer de 2 discos más de lo
Permite el fallo necesario: Más bloques de paridad
de más discos Más caro y lento
44
Otros Niveles de RAID: RAID 10

Nivel 10
Niveles 1+0
Mayor rendimiento (puede leerse simultáneamente de los dos discos: original
+ copia)

45

You might also like