NetApp Tech OnTap NetApp
NetApp Tech OnTap
     
Conceptos básicos: compresión de datos

Esta es la sexta entrega de Conceptos básicos, una serie de artículos sobre los aspectos fundamentales de algunas de las tecnologías más conocidas de NetApp®.

La tecnología de compresión de datos existe desde hace mucho tiempo, pero ha representado importantes retos para los sistemas de almacenamiento de gran escala, especialmente en términos de impacto en el rendimiento. Hasta hace poco, la compresión para dispositivos como unidades de cinta y VTL se realizaba casi siempre con un hardware específico, lo que contribuía a aumentar los gastos y la complejidad.

Ahora, NetApp ha desarrollado una manera de proporcionar una compresión de datos de postprocesamiento y en línea transparente en software capaz de mitigar el impacto en los recursos informáticos. De este modo, podemos hacer que las ventajas de la compresión estén disponibles en la arquitectura Data ONTAP® sin coste adicional alguno, de tal forma que se pueda utilizar en sistemas de almacenamiento existentes de NetApp. Desde la versión inicial de compresión de Data ONTAP 8.0.1, los comentarios que hemos recibido sobre esta función son muy positivos. Hay licencias en sistemas de una amplia gama de sectores. El 40% de estos sistemas utilizan la compresión en almacenamiento primario, mientras que el 60% la utiliza para backup/archivado.

La compresión de datos de NetApp ofrece otras ventajas importantes, como las siguientes:

  • Funciona en combinación con otras eficientes tecnologías de almacenamiento de NetApp líderes del sector. La compresión, en combinación con eficientes tecnologías como thin provisioning y la deduplicación, reduce en gran medida la cantidad total de almacenamiento que se necesita, con lo que se reducen los gastos operativos y de capital. Los ahorros de espacio totales pueden llegar hasta el 87% solo con la compresión, aunque dependerá de la aplicación. Si se utilizan otras tecnologías eficientes, se pueden conseguir ahorros incluso mayores.
  • Tiene un impacto mínimo en el rendimiento. Aunque todas las tecnologías de compresión perjudican el rendimiento, NetApp ha depositado un gran cuidado en minimizar el impacto a la vez que se maximizan los ahorros de espacio.
  • Sin tarifas de licencia de software. La funcionalidad de compresión de datos de NetApp se incluye de serie en Data ONTAP 8.1. No se necesita licencia, así que no se generará ningún coste de hardware ni software adicional al activar la compresión.
  • Funciona para almacenamiento primario y secundario. Puede activar la compresión en volúmenes de almacenamiento primario, en volúmenes de almacenamiento secundario o en ambos.
  • No requiere cambios en las aplicaciones. La compresión es transparente desde el punto de vista de las aplicaciones, por lo que se puede utilizar en varias de ellas sin necesidad de cambios de código.
  • Se heredan los ahorros de espacio durante la replicación y con el uso de DataMotion. Al replicar un volumen comprimido con Volume SnapMirror o trasladar un volumen con DataMotion™, los bloques se copian en estado comprimido. De esta forma, se ahorra ancho de banda y tiempo durante la transferencia de datos y espacio en el almacenamiento de destino; además, se evita la necesidad de utilizar ciclos de la CPU adicionales para volver a comprimir los mismos bloques.

En este capítulo de Conceptos básicos, se explora cómo se implementa la tecnología de compresión de datos de NetApp, su rendimiento, los casos de uso aplicables, la elección entre compresión de postprocesamiento y en línea, y las mejores prácticas.

Cómo se implanta la compresión en Data ONTAP

La compresión de datos de NetApp reduce la capacidad física requerida para almacenar datos en sistemas de almacenamiento al comprimir los datos en un volumen flexible (volumen FlexVol®) del almacenamiento primario, secundario y de archivado. Esta función comprime archivos convencionales, discos locales virtuales y LUN. En el resto del artículo, las referencias a archivos también se aplican a discos locales virtuales y LUN.

La compresión de datos de NetApp no comprime un archivo completo como una única secuencia contigua de bytes. Esto resultaría prohibitivamente caro a la hora de proporcionar lecturas pequeñas de una parte de un archivo, ya habría que leer todo el archivo desde el disco y descomprimirlo antes de atender la solicitud de lectura. Asimismo, resultaría particularmente difícil en archivos de gran tamaño. Para evitarlo, la compresión de datos de NetApp reduce un pequeño grupo de bloques consecutivos de una sola vez. Este es un elemento clave del diseño que permite que la compresión de datos de NetApp sea más eficiente. Cuando llegue una solicitud de lectura, en lugar del archivo completo, solo tendrá que leer y descomprimir un pequeño grupo de bloques. Con este enfoque se optimizan tanto las lecturas pequeñas como las sobrescrituras y se obtiene una mayor escalabilidad en el tamaño de los archivos que se van a comprimir.

El algoritmo de compresión de NetApp divide un archivo en fragmentos de datos denominados «grupos de compresión». El tamaño de los grupos de compresión es de 32 KB como máximo. Por ejemplo, si un archivo tiene un tamaño de 60 KB, se incluirá en dos grupos de compresión. El primero sería de 32 KB y el segundo, de 28 KB. Cada grupo de compresión contiene datos de un archivo únicamente; no se realiza la compresión en archivos de 8 KB o menos.

Escritura de datos. Las solicitudes de escritura se gestionan en el nivel de los grupos de compresión. Una vez formado el grupo, se realiza una prueba para decidir si los datos se pueden comprimir. Si no se obtiene un ahorro del 25% como mínimo, se dejarán sin comprimir. Solo si la prueba revela que los datos son comprimibles, se comprimen los datos escritos en el disco. Este procedimiento optimiza el ahorro, a la vez que minimiza los gastos generales de recursos.

Como los datos comprimidos tienen menos bloques que deben escribirse en disco, se reduce el número de operaciones de I/O de escritura necesarias para cada operación de escritura comprimida. De este modo, no solo se disminuye el espacio físico utilizado por los datos en el disco, sino que también se reduce el tiempo necesario para hacer backups.

Responsabilidades del administrador de VMware y del administrador del almacenamiento cuando se usa el complemento VSC para vCenter.

Figura 1) Los archivos se dividen en fragmentos de datos denominados «grupos de compresión», que se someten a pruebas para determinar si se pueden comprimir. En función de los resultados de la prueba, cada grupo de compresión se vacía en el disco de forma comprimida o sin comprimir.

Lectura de datos. Cuando llega una solicitud de lectura de datos comprimidos, Data ONTAP lee únicamente los grupos de compresión que contienen los datos solicitados, en lugar del archivo completo. De este modo, se minimiza la cantidad de operaciones de I/O necesarias para atender la solicitud, y se reducen los gastos generales y los tiempos del servicio de lectura.

Funcionamiento en línea. Si la configuración de compresión de datos de NetApp se define para que se realice en línea, los datos se comprimen en la memoria antes de pasar al disco. De este modo, se reduce considerablemente la cantidad de operaciones de I/O de escritura en un volumen; sin embargo, el rendimiento de escritura puede verse afectado y no debería utilizarse en aplicaciones a las que les afecta los cambios de rendimiento sin haber realizado antes las pruebas correspondientes.

Para obtener un rendimiento óptimo, la compresión en línea comprime la mayoría de las nuevas escrituras, pero aplaza algunas operaciones de compresión que requieren un rendimiento elevado (como las sobrescrituras de grupos de compresión parciales) hasta que se ejecute la siguiente compresión de postprocesamiento.

Funcionamiento de postprocesamiento. La compresión de postprocesamiento puede comprimir datos que se han escrito recientemente y datos que ya existían en el disco antes de activar la compresión. Utiliza la misma programación que la deduplicación de NetApp. Si la compresión se activa, se ejecuta primero, seguida por la deduplicación. La deduplicación no necesita descomprimir los datos para poder efectuarse; simplemente elimina los bloques comprimidos o descomprimidos duplicados de un volumen de datos.

Si se activa tanto la compresión en línea como de postprocesamiento, la segunda solo intentará comprimir los bloques que aún no estén comprimidos. Entre estos se incluyen los bloques que se ignoraron durante la compresión en línea, como las sobrescrituras de grupos de compresión parciales.

Rendimiento de la compresión y ahorros de espacio

La compresión de datos aprovecha las características internas de Data ONTAP para ofrecer una eficiencia elevada. Aunque la compresión de datos de NetApp minimiza el impacto en el rendimiento, no lo elimina por completo. El impacto varía en función de varios factores, como el tipo de datos, los patrones de acceso a los datos, la plataforma de hardware, la cantidad de recursos libres del sistema, etc. Debería realizar pruebas para medir el impacto en un entorno de laboratorio antes de implantar la compresión en volúmenes de producción.

Las pruebas de compresión de postprocesamiento en un sistema FAS6080 permitieron una compresión de hasta 140 MB/s para un único proceso con un rendimiento máximo de 210 MB/s con múltiples procesos paralelos. Con cargas de trabajo como servicios de archivos, los sistemas con una utilización de la CPU inferior al 50% han mostrado un aumento del uso de la CPU de alrededor del 20% para conjuntos de datos con una capacidad de compresión del 50%. En el caso de sistemas con una utilización de la CPU superior al 50%, el impacto puede ser incluso más significativo.

En la figura 2, se muestran los ahorros de espacio que se obtienen con la compresión y la deduplicación con varias cargas de trabajo.

Responsabilidades del administrador de VMware y del administrador del almacenamiento cuando se usa el complemento VSC para vCenter.

Figura 2) Ahorros típicos en el almacenamiento que se obtienen con la compresión, la deduplicación o con ambas.

Casos de uso

Como ya he comentado, a la hora de elegir si activar la compresión o la deduplicación hay que buscar el punto medio entre las ventajas del ahorro de espacio y el posible impacto en el rendimiento. Es importante evaluar ambas opciones de manera conjunta para determinar en qué casos tiene más sentido recurrir a la compresión en el entorno de almacenamiento.

Los backups de bases de datos (y los backups en general) son un posible punto idóneo para la compresión de datos. Las bases de datos son, con frecuencia, extremadamente voluminosas y hay numerosos usuarios que aceptarían un leve impacto en el rendimiento del almacenamiento de backup a cambio de un ahorro de capacidad de un mínimo del 65%. Por ejemplo, en una prueba que consistía en realizar el backup de cuatro volúmenes de Oracle en paralelo, con la compresión en línea activada, se obtuvo un 70% de ahorro en espacio y un aumento del 35% en la CPU, y no se produjeron cambios en los periodos de creación de backups. Probablemente, la mayoría de nosotros optaríamos por activar la compresión en dichas circunstancias, teniendo en cuenta los importantes ahorros y suponiendo que los recursos de la CPU están disponibles en el almacenamiento de destino. Al configurar el tamaño de nuevos sistemas de almacenamiento para realizar backups, es conveniente que compruebe que la CPU adecuada está disponible para la compresión.

Otro posible caso de uso son los servicios de archivos. En las pruebas realizadas con una carga de trabajo de servicios de archivos en un sistema con una ocupación de alrededor del 50% y un conjunto de datos con una capacidad de compresión del 50%, medimos un descenso del rendimiento de tan solo el 5%. En un entorno de servicios de archivos con un tiempo de respuesta de 1 milisegundo para archivos, esto se traduciría en un aumento de solo 0,05 ms, lo que incrementaría el tiempo de respuesta hasta los 1,05 ms. Para obtener un ahorro de espacio del 65%, este pequeño descenso del rendimiento podría ser aceptable para usted. Este ahorro puede ampliarse aún más al replicar los datos mediante la tecnología Volume SnapMirror® de NetApp, que permite ahorrar ancho de banda de red y espacio en el almacenamiento secundario. (En este caso, el almacenamiento secundario hereda la compresión del almacenamiento primario, por lo que no es necesario efectuar un procesamiento adicional). En esta situación, usted obtendría:

  • Un ahorro del 65% de la capacidad de almacenamiento para el almacenamiento primario
  • Un 65% menos de datos enviados por la red para la replicación
  • Una replicación un 65% más rápida
  • Un ahorro del 65% de la capacidad de almacenamiento para el almacenamiento secundario

Existen muchos otros casos de uso en los que tiene sentido recurrir a la compresión y disponemos de una serie de herramientas y guías que pueden ayudarle a decidir qué casos resultan más aptos para su entorno. En el caso del almacenamiento primario, considere utilizar la compresión en los siguientes casos de uso:

  • Servicios de ficheros
  • Datos geosísmicos
  • Pruebas y desarrollo

En el caso de almacenamiento de archivado/backup, considere utilizar la compresión en los siguientes casos de uso:

  • Servicios de archivos
  • Datos geosísmicos
  • Servidores virtuales
  • Oracle OLTP
  • Almacén de datos de Oracle
  • Microsoft® Exchange 2010

Uso de la compresión

La compresión de datos de NetApp funciona en todos los sistemas FAS y V-Series de NetApp que ejecutan Data ONTAP 8.1 y versiones posteriores. La compresión de datos se habilita para los volúmenes, lo que significa que usted elige los volúmenes para los que desea habilitarla. Si sabe que un volumen contiene datos que no se pueden comprimir, no debe activar la compresión en dicho volumen. La compresión de datos funciona con la deduplicación y, por ello, es necesario activar primero la deduplicación en el volumen. Un volumen debe estar contenido en un agregado de 64 bits, función introducida ya con Data ONTAP 8.0. A partir de Data ONTAP 8.1, no hay límites en cuanto a tamaño máximo de los volúmenes, aparte de los impuestos por las plataformas FAS o V-Series que utilice. Puede activar y gestionar la compresión con herramientas de línea de comandos o con NetApp System Manager 2.0.

Antes de activar la compresión, NetApp le recomienda realizar pruebas para verificar que cuenta con los recursos necesarios y conocer los posibles impactos. Entre los factores que afectan al grado de impacto se incluyen los siguientes:

  • Tipo de aplicación
  • Capacidad de compresión del conjunto de datos
  • Patrón de acceso a los datos (por ejemplo, acceso secuencial o aleatorio, el tamaño y el patrón de I/O)
  • Tamaño medio de los archivos
  • Índice de cambio
  • Número de volúmenes en los que se activa la compresión
  • La plataforma de hardware, la cantidad de CPU/memoria del sistema
  • Carga sobre el sistema
  • Tipo y velocidad del disco
  • Cantidad de discos físicos de la agrupación

Se suelen aplicar las siguientes reglas generales:

  • El rendimiento de la compresión depende de la plataforma de hardware.
  • Con más núcleos se consigue un mayor rendimiento.
  • Con núcleos más rápidos se obtiene un menor impacto en el rendimiento.
  • A mayor capacidad de compresión de los datos, menor impacto en el rendimiento.

Elección entre compresión en línea o de postprocesamiento

A la hora de configurar la compresión, tenemos la opción de elegir bien una compresión en línea inmediata combinada con una compresión de postprocesamiento periódica, bien una compresión de postprocesamiento solamente. La compresión en línea ofrece ahorros de espacio inmediatos, menor actividad de I/O del disco y copias Snapshot™ más pequeñas. La compresión de postprocesamiento escribe primero los bloques sin comprimir en el disco y, más tarde, los lee y los comprime. Por ello, es la opción más recomendable si no desea perjudicar el rendimiento de las nuevas escrituras o si no quiere utilizar CPU extra durante los periodos de mayor actividad.

La compresión en línea es la más útil cuando no importa tanto el rendimiento y se puede permitir algún tipo de impacto en el rendimiento de las escrituras, y cuando hay CPU disponible durante los periodos de mayor actividad. En la tabla 1 se muestran algunas consideraciones de la compresión en línea y de postprocesamiento.

Objetivo Recomendación
Minimizar el espacio de Snapshot. La compresión en línea minimizará la cantidad de espacio utilizada por las copias Snapshot.
Minimizar el uso de espacio en disco en destinos de qtree SnapMirror o SnapVault®. La compresión en línea proporciona ahorros inmediatos con un impacto mínimo en los periodos de creación de backups. Además, ocupa menos espacio en la reserva de Snapshot.
Minimizar las operaciones de I/O del disco. La compresión en línea reduce el número de bloques nuevos que se escriben en el disco.
Evitar impactos de rendimiento en las nuevas escrituras. La compresión de postprocesamiento pasa los nuevos datos sin comprimir al disco, sin ningún impacto en el rendimiento de las escrituras iniciales. A continuación, puede programar cuándo realizar la compresión para recuperar espacio.
Minimizar el impacto en la CPU durante los periodos de mayor actividad. La compresión de postprocesamiento le permite programar cuándo realizar la compresión, con lo que se minimiza el impacto de la compresión durante los periodos de mayor actividad.

Tabla 1) Consideraciones sobre el uso solo de la compresión de postprocesamiento frente al uso de la compresión en línea y de postprocesamiento.

Compresión de datos y otras tecnologías de NetApp

La compresión de datos de NetApp funciona de forma complementaria con la deduplicación de NetApp. En esta sección, se tratará el uso de la compresión de datos junto con otras conocidas tecnologías de NetApp.

Copias Snapshot. Las copias Snapshot permiten restaurar datos a un momento determinado, pues mantienen los bloques que cambian tras realizar la copia Snapshot. La compresión puede reducir la cantidad de espacio que consume una copia Snapshot, ya que los datos comprimidos ocupan menos espacio en disco.

La compresión de postprocesamiento puede comprimir datos bloqueados por una copia Snapshot, pero los ahorros no estarán disponibles de forma inmediata, porque los bloques originales sin comprimir permanecen en el disco hasta que la copia Snapshot caduca o se elimina. NetApp recomienda realizar la compresión de postprocesamiento antes de crear copias Snapshot. Para conocer las mejores prácticas sobre el uso de la compresión con copias Snapshot, consulte los informes técnicos TR-3958 o TR-3966.

Volume SnapMirror. Volume SnapMirror opera en el nivel de los bloques físicos; cuando está habilitada la deduplicación o la compresión en el volumen de origen, el ahorro de espacio derivado de la deduplicación y la compresión se mantiene tanto en la conexión como en el destino. De este modo, puede reducirse de forma significativa la cantidad de ancho de banda de red requerida durante la replicación y el tiempo que tarda en completarse la transferencia de SnapMirror. He aquí algunas directrices generales que deben tenerse en cuenta.

  • Los sistemas de origen y destino deben utilizar la misma versión de Data ONTAP.
  • La compresión y la deduplicación se gestionan únicamente en el sistema de origen; el volumen flexible del sistema de destino hereda el ahorro de almacenamiento.
  • La compresión se mantiene a lo largo de la transferencia, por lo que se reduce el volumen de datos transferidos y, por consiguiente, el uso del ancho de banda de red y el tiempo para completar la transferencia.
  • Con SnapMirror, no es necesario comprimir los datos a nivel de enlace, porque ya lo están gracias a la funcionalidad de compresión NetApp.

El porcentaje de reducción del ancho de banda de red y el tiempo de transferencia de SnapMirror son directamente proporcionales al porcentaje de ahorro de espacio. Por ejemplo, si pudiera ahorrar un 50% en capacidad de disco, el tiempo de transferencia de SnapMirror se reduciría un 50% y el volumen de datos que tendría que transferir sería un 50% menor.

Qtree SnapMirror y SnapVault. Tanto qtree SnapMirror como SnapVault operan en el nivel de los bloques lógicos; los sistemas de almacenamiento de origen y de destino ejecutan la deduplicación y la compresión de datos de forma independiente, con lo que puede ejecutarlas en cualquiera de las dos funcionalidades o en ambas, en función de sus necesidades. De este modo, usted puede comprimir o deduplicar sus backups de qtree SnapMirror o SnapVault incluso en aquellos casos en los que los datos de origen no estén comprimidos o deduplicados. La compresión de postprocesamiento y la deduplicación se ejecutan automáticamente después de que se complete una transferencia de SnapVault, a menos que la programación se defina como manual.

Clonado. La tecnología FlexClone® de NetApp crea al instante copias virtuales de archivos o volúmenes de datos (copias que no consumen espacio de almacenamiento adicional hasta que no se realizan cambios en los clones). FlexClone es compatible tanto con la deduplicación como con la compresión. Si se activa la compresión en el volumen principal de un clon, los ahorros se heredan en el clon. También puede activar la compresión en un volumen clonado, para que los nuevos datos escritos en el clon se beneficien de la compresión sin que se vea afectada la copia principal.

Conclusión

La tecnología de compresión de NetApp es una importante herramienta para la eficiencia del almacenamiento que se puede emplear para optimizar los ahorros de espacio en almacenamiento primario y secundario. Si desea obtener más información sobre todos los temas tratados en este capítulo y sobre muchos más, consulte el informe técnico TR-3958: NetApp Data Compression and Deduplication Deployment and Implementation Guide: Data ONTAP 8.1 Operating in 7-Mode y el informe técnico TR-3966: NetApp Data Compression and Deduplication Deployment and Implementation Guide: Data ONTAP 8.1 Operating in Cluster-Mode.

 ¿Qué opina sobre la compresión de datos?

Formule preguntas, intercambie ideas y comparta sus opiniones en las comunidades en línea de NetApp.

Sandra Moulton
Ingeniero Técnico de Marketing
NetApp


Desde que entró a formar parte de NetApp hace dos años, Sandra ha centrado sus esfuerzos casi de manera exclusiva en la eficiencia del almacenamiento y se ha especializado en la deduplicación y la compresión de datos. Ha sido responsable del desarrollo de documentos técnicos, guías de mejores prácticas y arquitecturas de referencia para estas tecnologías críticas. Sandra tiene más de 20 años de experiencia en el sector, desempeñando funciones similares en otras empresas líderes de Silicon Valley.


Tech OnTap
Suscríbase ahora
Tech OnTap ofrece reportajes mensuales, acceso exclusivo a mejores prácticas, sugerencias y herramientas reales, entrevistas técnicas exclusivas, demostraciones, evaluaciones de expertos y muchas cosas más.

Visite Tech OnTap en la comunidad de NetApp y suscríbase hoy mismo.

En profundidad
En profundidad
Más conceptos básicos

Obtenga más información sobre los aspectos fundamentales de las principales tecnologías de NetApp en los demás capítulos de esta serie:

En profundidad
TRUSTe
Póngase en contacto con nosotros   |   Cómo comprar   |   Comentarios   |   Empleo  |   Suscripciones   |   Política de privacidad   |   © 2012 NetApp