Ventajas, desventajas y requisitos de codificación de borrado
Antes de decidir si se debe utilizar la replicación o el código de borrado para proteger los datos de objetos frente a pérdidas, debe comprender las ventajas, las desventajas y los requisitos para la codificación de borrado.
Ventajas de la codificación de borrado
En comparación con la replicación, la codificación de borrado ofrece una mayor fiabilidad, disponibilidad y eficiencia del almacenamiento.
-
Confiabilidad: La fiabilidad se mide en términos de tolerancia a fallos, es decir, el número de fallos simultáneos que se pueden sostener sin pérdida de datos. Con la replicación, se almacenan varias copias idénticas en diferentes nodos y entre sitios. Con el código de borrado, un objeto se codifica en fragmentos de datos y de paridad, y se distribuye entre muchos nodos y sitios. Esta dispersión proporciona protección frente a fallos del sitio y del nodo. En comparación con la replicación, la codificación de borrado proporciona una mayor fiabilidad con costes de almacenamiento comparables.
-
Disponibilidad: La disponibilidad se puede definir como la capacidad de recuperar objetos si los nodos de almacenamiento fallan o se vuelven inaccesibles. En comparación con la replicación, la codificación de borrado proporciona una mayor disponibilidad con costes de almacenamiento comparables.
-
Eficiencia del almacenamiento: Para niveles similares de disponibilidad y fiabilidad, los objetos protegidos mediante codificación de borrado consumen menos espacio en disco que los mismos objetos si están protegidos mediante replicación. Por ejemplo, un objeto de 10 MB que se replica en dos sitios consume 20 MB de espacio en disco (dos copias), mientras que el objeto con código de borrado en tres sitios con un esquema de código de borrado 6+3 solo consume 15 MB de espacio en disco.
El espacio en disco para los objetos codificados de borrado se calcula como el tamaño del objeto más la sobrecarga del almacenamiento. El porcentaje de sobrecarga del almacenamiento es el número de fragmentos de paridad dividido por el número de fragmentos de datos.
Desventajas del código de borrado
En comparación con la replicación, los códigos de borrado tienen las siguientes desventajas:
-
Se recomienda un mayor número de nodos de almacenamiento y sitios, en función del esquema de código de borrado. Por el contrario, si replica datos de objetos, solo necesita un nodo de almacenamiento para cada copia. Consulte "Esquemas de codificación de borrado para pools de almacenamiento que contengan tres o más sitios" y "Esquemas de codificación de borrado para pools de almacenamiento in situ".
-
Aumento del coste y de la complejidad de las ampliaciones del almacenamiento. Para expandir una implementación que utiliza replicación, debe agregar capacidad de almacenamiento en cada ubicación donde se realicen copias de objetos. Para ampliar una puesta en marcha que utilice código de borrado, debe tener en cuenta el esquema de codificación de borrado y el grado de llenado de los nodos de almacenamiento existentes. Por ejemplo, si espera a que los nodos existentes estén llenos al 100 %, debe añadir al menos
k+m
nodos de almacenamiento, pero si amplía cuando los nodos existentes estén llenos al 70 %, puede añadir dos nodos por sitio y seguir maximizando la capacidad de almacenamiento útil. Para obtener más información, consulte "Añada capacidad de almacenamiento para objetos codificados de borrado". -
Al utilizar códigos de borrado en ubicaciones distribuidas geográficamente, aumenta la latencia de recuperación. Los fragmentos de objetos para un objeto que se codifica para el borrado y se distribuye por sitios remotos tardan más en recuperarse a través de conexiones WAN que un objeto que se replica y está disponible localmente (el mismo sitio al que se conecta el cliente).
-
Al utilizar la codificación de borrado en ubicaciones distribuidas geográficamente, se está utilizando más el tráfico de red WAN para restauraciones y reparaciones, especialmente en objetos que se recuperan con frecuencia o para reparaciones de objetos a través de conexiones de red WAN.
-
Cuando se utiliza la codificación de borrado en varios sitios, el rendimiento máximo del objeto se reduce drásticamente a medida que aumenta la latencia de red entre sitios. Esta disminución se debe a la correspondiente disminución del rendimiento de la red TCP, que afecta a la rapidez con la que el sistema StorageGRID puede almacenar y recuperar fragmentos de objeto.
-
Mayor uso de recursos de computación.
Cuándo se debe utilizar la codificación de borrado
El código de borrado se ajusta mejor a los siguientes requisitos:
-
Los objetos tienen un tamaño superior a 1 MB.
El código de borrado se adapta mejor a los objetos de más de 1 MB. No use el código de borrado para objetos de menos de 200 KB para evitar la sobrecarga de gestionar fragmentos de código de borrado muy pequeños. -
Almacenamiento a largo plazo o en frío para contenido que se recupera con poca frecuencia.
-
Alta disponibilidad y fiabilidad de los datos.
-
Protección frente a fallos completos de sitios y nodos.
-
Eficiencia del almacenamiento.
-
Puestas en marcha de un único sitio que requieren protección de datos eficiente con solo una copia codificada por borrado en lugar de múltiples copias replicadas.
-
Puestas en marcha de varios sitios en las que la latencia entre sitios es inferior a 100 ms.