Pregunte por la copia de seguridad del tercer disco duro después del RAID del servidor.
La intención original de RAID era principalmente proporcionar funciones de almacenamiento de alta gama y seguridad de datos redundantes para servidores grandes. En el sistema, RAID se considera una partición lógica, pero se compone de varios discos duros (al menos dos). Mejora en gran medida el rendimiento de datos del sistema de almacenamiento al almacenar y leer datos en múltiples discos duros al mismo tiempo. En muchos modos RAID, existen medidas de inspección/recuperación mutuas relativamente completas, e incluso copias de seguridad mutuas directas, lo que mejora en gran medida el rendimiento. rendimiento de datos.La tolerancia a fallos del sistema RAID mejora la estabilidad y la redundancia del sistema, que también es el origen del término redundancia.
RAID siempre ha sido un producto único en el campo SCSI, porque la tecnología y el costo en ese momento también limitaron su desarrollo en el mercado de gama baja. Hoy en día, con la madurez de la tecnología RAID y el continuo esfuerzo de los fabricantes, ya podemos disfrutar de sistemas IDE-RAID a un coste mucho menor. Aunque la estabilidad y confiabilidad no se pueden comparar con SCSI-RAID, su ventaja de rendimiento sobre un solo disco duro es una gran tentación para la mayoría de los jugadores. De hecho, IDE-RAID es suficiente para operaciones diarias de baja intensidad.
Al igual que los módems, RAID también se puede dividir en full soft, semi-soft, semi-hard y full hard. RAID totalmente suave significa que todas las funciones de RAID las completan el sistema operativo (SO) y la CPU, sin control/procesamiento de terceros (llamado en la industria coprocesador RAID) ni chips de E/S. De esta manera, todas las tareas relacionadas con RAID son manejadas por la CPU, que es el RAID menos eficiente. Los RAID semisoft y semihard carecen principalmente de su propio chip de procesamiento de E/S, por lo que este trabajo aún lo completan la CPU y el controlador. Además, los chips de control/procesamiento RAID utilizados en RAID semi-soft y semi-hard son generalmente débiles y no pueden soportar altos niveles de RAID. RAID totalmente hardware tiene su propio control/procesamiento RAID y chips de procesamiento de E/S, e incluso buffers de matriz. El uso de la CPU y el rendimiento general son los más ventajosos entre los tres tipos, pero el costo del equipo también es el más alto entre los tres tipos. Las tarjetas IDE RAID del mercado inicial que utilizaban chips HighPoint HPT 368, 370 y PROMISE y placas base integradas eran RAID semiblandas y semiduras, no RAID verdaderamente duras porque no tenían su propio procesador de E/S dedicado. Además, los chips de procesamiento/control RAID de estas dos empresas son débiles y no pueden completar tareas de procesamiento complejas, por lo que no admiten el nivel RAID 5. La tarjeta RAID AAA-UDMA producida por la famosa empresa Adpatec es un trabajo representativo de RAID todo hardware. Tiene un coprocesador RAID avanzado dedicado y un procesador de E/S dedicado Intel 960, es totalmente compatible con el nivel RAID 5 y actualmente es la tarjeta RAID. productos IDE-RAID más avanzados. La Tabla 1 es una comparación de RAID de software típico y RAID duro en aplicaciones industriales.
Hasta ahora, hay 10 niveles principales de RAID, que presentaremos a su vez.
Nivel RAID-0
Matriz de discos seccionados sin tolerancia a fallas (matriz de discos seccionados sin diseño tolerante a fallas)
El cilindro en la imagen es un disco (en adelante denominados todos), los dos están conectados en paralelo. Como se puede ver en la figura, cuando RAID 0 almacena datos, el controlador RAID (hardware o software) los divide en franjas de datos del mismo tamaño y los escribe en los discos de la matriz al mismo tiempo. Si usa su imaginación, pensará en los datos como una franja que abarca todos los discos de la matriz, con la misma profundidad de la franja en cada disco. En cuanto a la profundidad de cada franja, depende del tipo de RAID utilizado. En el nivel RAID 0 suave del sistema NT, solo hay una opción para cada profundidad de franja, mientras que en el nivel RAID 0 duro, se pueden proporcionar múltiples parámetros de profundidad, como 8, 16, 32, 64 y 128 KB. La creación de bandas es un método RAID típico. En muchas definiciones del término RAID, la división se refiere a RAID 0. Al leer, también se lee desde el disco de matriz en secuencia y luego el controlador RAID lo fusiona y lo transmite al sistema. Esta es también una de las características más importantes de RAID.
Diagrama de estructura RAID-0
De esta forma los datos se leen y escriben en paralelo, lo que resulta de gran ayuda para mejorar el rendimiento del sistema de almacenamiento. Para un sistema RAID 0 con dos discos duros, duplicar el rendimiento de lectura y escritura puede ser un poco exagerado. Después de todo, hay que tener en cuenta las operaciones adicionales y el tiempo de procesamiento asociados con RAID, como la partición y fusión de datos, pero es completamente posible mejorar el rendimiento en un 50% en comparación con un solo disco duro.
Sin embargo, RAID 0 no es un verdadero RAID porque no tiene redundancia de datos. Dado que no existe un diseño de recuperación de copia de seguridad o verificación, el daño a cualquier disco duro en la matriz RAID 0 puede causar daños a todos los datos de la matriz porque los datos se almacenan de manera distribuida.
Niveles RAID-2
Código Hamming ECC (Detección y Corrección de Errores de Código Hamming)
Ahora tocaremos uno de los niveles más complejos de los sistemas RAID . La razón por la que RAID 2 es complejo es que utiliza una tecnología de detección y corrección temprana de errores: la tecnología de verificación de código Hamming. Por tanto, antes de presentar RAID 2, es necesario hablar sobre el principio del código Hamming.
El principio del código Hamming:
El diagrama esquemático de la codificación del código Hamming de datos de 4 bits
El código Hamming es un método para insertar varios códigos de verificación en los datos originales. Técnicas de codificación para la comprobación y corrección de errores. Tomando como ejemplo una codificación de datos típica de 4 bits, se agregarán tres códigos de verificación al código Hamming, de modo que el número de bits de datos realmente transmitidos llegará a 7 (bits). Sus posiciones son las siguientes:
Bits de datos
1
2
Tres
Cuatro
Cinco
Seis
p>
Siete
Contraseña
P1
P2
D8
P3
D4
D2
D1
Explicación
El primer código Hamming p>
El segundo código Hamming
El primer código de datos
El tercer código Hamming
El segundo código de datos
El tercer código de datos
El cuarto código de datos
Nota: X en Dx es la potencia entera de 2 (las siguientes potencias se refieren a potencias enteras). El resultado es que la potencia depende del bit de código. D1 es la potencia de 0 y D8 es la potencia de 3. Basta pensar en la codificación binaria.
Ahora tome el código de datos 1101 como ejemplo para explicar el principio de codificación del código Hamming. En este momento, D8 = 1, D4 = 1, D2 = 0, D1 = 1, durante la codificación P1, se mejorará el principio de codificación. El resultado del número par es 0, por lo que P1 es 1, D8+D2+D1=2 es un número par, luego P2 es 0, D4+D2+D1=2 es un número par y P3 es 0. Con referencia a la tabla de posiciones anterior, el resultado del procesamiento del código Hamming es 1010101. En este ejemplo de código de datos de 4 bits, podemos encontrar que cada código Hamming está codificado en base a tres códigos de datos. La siguiente es su tabla correspondiente:
Código Hamming
Código de datos utilizado para la codificación
P1
D8, D4, D1
p>
P2
D8, D2, D1
P3
D4, D2, D1
En términos de forma de codificación Se puede encontrar que el código Hamming es un método de codificación muy riguroso. En este ejemplo, la verificación y corrección de un bit de código específico se logra mediante tres detecciones combinadas de tres de los cuatro bits de datos (pero solo se permite que un bit tenga error, no se pueden detectar dos errores, esto se puede hacer a continuación, como se refleja en el ejemplo de corrección de errores). Cuando está marcado, cada código Hamming se agrega a su valor de bit de datos correspondiente. Si el resultado es un número par (el código de corrección de error es 0), es correcto. Si es un número impar (el código de corrección de errores es 1), significa que hay errores en los tres bits de datos correspondientes al código Hamming actual. En este punto, el bit específico está determinado por las operaciones respectivas de los otros dos códigos Hamming.
Sigue siendo el ejemplo 1101 de ahora. La codificación correcta debe ser 10101. Si el tercer bit de datos pasa a 1 debido a interferencia durante la transmisión, pasa a ser 1065438. Durante la detección, el resultado de P1+D8+D4+D1 es un número par 4 y el primer código de corrección de error es 0, lo cual es correcto. El resultado de P1+D8+D2+D1 es impar 3 y el segundo código de corrección de error es 1, lo cual es incorrecto.
El resultado de P3+D4+D2+D1 es un número impar 3, y el tercero es el código de corrección de error 1, que es incorrecto. Entonces, ¿qué es exactamente lo que está mal? Los tres códigos de corrección de errores están ordenados de mayor a menor de acuerdo con el código binario 110, que es 6 cuando se convierte a código decimal, lo que significa que el sexto bit de los datos es incorrecto y el tercer bit de los datos es exactamente el sexto. bit después de la codificación del código Hamming.
Entonces, ¿cuál es la relación entre el número de códigos Hamming y el número de bits de datos? En el ejemplo anterior, los bits de datos son 4 bits, el código Hamming de 3 bits es 7 bits y 2 elevado a la tercera potencia es 8. Existe una regla de que 2P≥P+D+1, donde P representa el número de códigos Hamming y D representa el número de bits de datos. Por ejemplo, datos de 4 bits, 1 es 5 y la potencia de 2 puede ser. ser mayor que 5 es 3 (23=8, 22=4). De esta manera, podemos calcular el número de dígitos del código Hamming necesarios para cualquier bit de datos: los datos de 7 bits requieren un código Hamming de 4 bits (24 > 4+7+1) y los datos de 64 bits requieren un código Hamming de 7 bits. (27 > 64+7+1 ) para que podamos calcularlo en consecuencia. En este momento, sus reglas de codificación también son diferentes a las de 4 bits.
Además, la posición de inserción del código Hamming también es regular. Tomando como ejemplo datos de cuatro dígitos, el primero es el primer dígito del código Hamming, el segundo es el segundo dígito y el tercero es el cuarto dígito. 1, 2 y 4 son todos potencias enteras de 2, y esta potencia es un número entero que comienza en 0. De esta forma, podemos inferir que las posiciones de inserción del código Hamming son 1(20), 2(21), 4(22), 8(23), 16(24), 32 (25)... p>