La replicación y codificación de borrado protegen los datos en sistemas de almacenamiento de objetos cuando el respaldo tradicional es difícil.
Los sistemas de almacenamiento de objetos están diseñados para almacenar, de manera rentable, una gran cantidad de datos por un período muy largo de tiempo. Sin embargo, eso hace la copia de seguridad tradicional difícil, si no imposible. Para asegurar que los datos están protegidos tanto de fallas del disco, como de la corrupción, los proveedores utilizan la replicación o la codificación de borrado (o una combinación de los dos).
Incluso si usted no está considerando el almacenamiento de objetos, comprender las diferencias entre estas técnicas de protección de datos es importante, ya que muchos arreglos de almacenamiento primario están empezando a utilizarlas. Exploramos los pros y los contras de cada enfoque para que pueda determinar qué método de protección de datos es mejor para su centro de datos.
Fundamentos de escala horizontal
La mayoría de los sistemas de almacenamiento de objetos, así como los sistemas convergentes, se basan en arquitecturas de almacenamiento de escala horizontal. Estas arquitecturas están construidas alrededor de un grupo de servidores que proporcionan capacidad de almacenamiento y rendimiento. Cada vez que se añade otro nodo al clúster, el rendimiento y la capacidad de la agrupación en general se incrementa.
Estos sistemas requieren redundancia a través de múltiples nodos de almacenamiento, de modo que si un nodo falla, los datos pueden todavía ser accedidos. Los niveles de RAID típicos, tales como RAID 5 y RAID 6, son particularmente poco adecuados para esta distribución de datos en múltiples nodos debido a sus tiempos de reconstrucción lentos.
Pros y contras de replicación
La replicación fue la forma más prevalente de protección de datos en los primeros sistemas de almacenamiento de objetos, y se está convirtiendo en una técnica común de protección de datos en infraestructuras convergentes, que también están basadas en nodos.
En este esquema de protección, cada objeto único se copia un número determinado de veces en un número determinado de nodos, donde el número de copias y cómo están distribuidas (cuántos nodos reciben una copia) se establece de forma manual o por política. Muchos de estos productos también tienen la capacidad de controlar la ubicación de los nodos que recibirán las copias. Pueden estar en diferentes bastidores, diferentes filas y, por supuesto, diferentes centros de datos.
La ventaja de la replicación es que es un proceso relativamente ligero, en que no se tienen que hacer cálculos complejos (en comparación con la codificación de borrado). Además, crea copias individuales totalmente utilizables, que no son dependientes de cualquier otro conjunto de datos para el acceso. En las arquitecturas convergentes o hiperconvergentes, la replicación también permite un mejor rendimiento de la máquina virtual, ya que todos los datos pueden ser servidos a nivel local.
La desventaja obvia de la replicación es que se hacen copias totales completas, y cada copia redundante consume mucha más capacidad de almacenamiento. Para entornos más pequeños, esto puede ser un detalle menor. Para entornos con múltiples petabytes de información, puede ser un problema real. Por ejemplo, un entorno de 5 PB podría requerir 15 PB de capacidad total, asumiendo una estrategia relativamente común de tres copias.
¿Qué es la codificación de borrado?
La codificación de borrado es un esquema de protección de datos basado en paridad, similar a RAID 5 y 6. Sin embargo, la codificación de borrado opera a un nivel más bajo de granularidad. En RAID 5 y 6, el mínimo común denominador es el volumen; con la codificación de borrado, es el objeto. Esto significa que, si hay un fallo de unidad o fallo de nodo, solamente los objetos en esa unidad o nodo necesitan ser recreados, no todo el volumen.
Al igual que en la replicación, la codificación de borrado se puede configurar de forma manual o por la política para sobrevivir a un cierto número de fallos en los nodos antes de que haya pérdida de datos. Muchos sistemas extienden la codificación de borrado entre centros de datos, de modo que los datos puedan ser distribuidos de forma automática entre los centros de datos y los nodos dentro de esos centros de datos.
Puesto que es a base de paridad, la codificación de borrado no crea varias copias redundantes de datos de la forma en que la replicación lo hace. Esto significa que el costo de la capacidad adicional de "sobrecarga" para la codificación de borrado se mide en fracciones de los conjuntos de datos primarios, en lugar de en múltiplos. Una metodología de codificación de borrado diseñada para proporcionar protección contra el mismo número de fallos que un método de replicación 3x requiere una sobrecarga de aproximadamente 25% en vez del 300%.
La desventaja de la codificación de borrado es que no es tan ligera como la replicación. Por lo general, requiere más recursos de CPU y memoria RAM para gestionar y calcular la paridad. Más importante aún, cada acceso requiere que los datos sean reconstituidos (ya que los datos codificados para borrado se dividen y almacena en incrementos de bloques modificados en todos los nodos). Este proceso puede empantanar considerablemente la red de almacenamiento en comparación con la replicación, que a su vez podría ser diseñada para requerir poco o ningún tráfico de red de almacenamiento. El requisito para el tráfico de red adicional podría ser particularmente problemático en una WAN o una implementación de nube, ya que la WAN creará latencia en cada acceso.
Modelo mixto
En un intento de ofrecer lo mejor de ambos mundos, algunos proveedores están creando modelos combinados. La primera forma de esto es una donde la replicación es el método utilizado dentro del centro de datos, por lo que la mayoría de los accesos desde el almacenamiento tienen la ventaja de un rendimiento de tipo LAN. Entonces, la codificación de borrado se utiliza para la distribución de datos en los otros centros de datos de la organización. Aunque el consumo de capacidad sigue siendo alto, la integridad de los datos es igualmente alta.
El otro modelo combinado se basa únicamente en la codificación de borrado, pero la codificación de borrado se divide en zonas por centro de datos. En este modelo, la codificación de borrado se utiliza a nivel local y a través de la WAN, pero una copia de todos los datos permanece en el centro de datos que más lo necesita. Luego, los datos son codificados para el borrado de forma remota en todos los otros centros de datos en el ecosistema del cliente. Si bien este método consume más capacidad que la codificación de borrado regular, todavía es más eficiente que el otro modelo mezclado.
¿Cuál es el mejor método de protección de datos?
Como siempre, la respuesta es "depende". Hay mucho que le puede gustar de la simplicidad de la replicación. Funciona bien para centros de datos con menos de 25 TB. Pero, a medida que los datos crecen, continuar con una estrategia de replicación para la protección de datos se vuelve insostenible.
Para los centros de datos más grandes, la replicación se vuelve demasiado costosa desde el punto de vista del consumo de la capacidad. Si tienen gran ancho de banda o distancias cortas de interconexión, la codificación de borrado proporciona una excelente eficiencia de almacenamiento y una distribución de datos ideal. Los centros de datos que tienen problemas de latencia deben considerar uno de los modelos mezclados; muy probablemente, el segundo modelo, que proporciona casi tan buena eficiencia de los datos y elimina los problemas de latencia de red para los accesos cotidianos a los datos.
Sobre el autor: George Crump es presidente de Storage Switzerland, una firma de análisis de TI centrada en almacenamiento y virtualización. Técnicas de protección de datos para sistemas de almacenamiento de objetos