Compresión de copia de seguridad (SQL Server)
En este tema se discuten los fundamentos de la compresión de copia de seguridad, incluidas las ventajas y desventajas de la compresión de las copias de seguridad respecto al rendimiento.
La compresión de copia de seguridad se incluyó en SQL Server 2008 Enterprise. Desde SQL Server 2008 R2, SQL Server 2008 R2 Standard y todas las ediciones superiores admiten la compresión de copia de seguridad. Cada edición de SQL Server 2008 y posteriores pueden restaurar una copia de seguridad cifrada.
Restricciones
La compresión de las copias de seguridad está sujeta a las siguientes restricciones:
Las copias de seguridad comprimidas y sin comprimir no pueden coexistir al mismo tiempo en un mismo conjunto de medios.
Las versiones anteriores de SQL Server no pueden leer copias de seguridad comprimidas.
NTbackups no puede compartir una cinta con copias de seguridad comprimidas de SQL Server.
Impacto en el rendimiento de la compresión de las copias de seguridad
Dado que el tamaño de una copia de seguridad comprimida es menor que el de una sin comprimir de los mismos datos, normalmente la compresión de una copia de seguridad requiere menos operaciones de E/S en los dispositivos y, por consiguiente, suele aumentar significativamente la velocidad de creación de la copia.
De forma predeterminada, la compresión aumenta significativamente el uso de CPU y la CPU adicional consumida por el proceso de compresión puede afectar adversamente a operaciones simultáneas. Por consiguiente, puede ser conveniente crear copias de seguridad comprimidas de prioridad baja en una sesión en la que el uso de CPU esté limitado por el Regulador de recursos. Para obtener más información, vea Cómo usar el regulador de recursos para limitar el uso de CPU mediante compresión de copia de seguridad (Transact-SQL).
Para hacerse una idea acertada del rendimiento de la E/S de su copia de seguridad, puede aislar la E/S de la copia de seguridad realizada hacia o desde los dispositivos evaluando los siguientes tipos de contadores de rendimiento:
Contadores de rendimiento de la E/S de Windows, tales como los contadores de disco físico
El contador Rendimiento del Dispositivo en bytes/seg. del objeto SQLServer:Backup Device
El contador Rendimiento de copia de seguridad y restauración/seg. del objeto SQLServer:Databases
Para obtener más información acerca de los contadores de Windows, vea la ayuda de Windows. Para obtener información acerca del trabajo con contadores de SQL Server, vea Usar objetos de SQL Server.
Configuración
En la instalación, la compresión de la copia de seguridad está deshabilitada de forma predeterminada. La opción de configuración de nivel de servidor Opción compresión de copia de seguridad predeterminadadefine el comportamiento predeterminado para la compresión de la copia de seguridad. Puede invalidar el valor predeterminado de nivel de servidor al crear una copia de seguridad única o programar una serie de copias de seguridad rutinarias.
Para cambiar el valor predeterminado de nivel de servidor
Transact-SQL
Utilice el procedimiento almacenado sp_configure para establecer el valor de valor redeterminado de compresión de copia de seguridad y, a continuación, ejecutar la instrucción RECONFIGURE
SQL Server Management Studio
Utilice la página Configuración de base de datos del cuadro de diálogo Propiedades del servidor. Para obtener más información, vea Cómo ver o cambiar la opción predeterminada de compresión de copia de seguridad (SQL Server Management Studio).
Para invalidar el valor redeterminado de compresión de copia de seguridad
Puede cambiar el comportamiento de la compresión de copia de seguridad para una copia de seguridad individual, trabajo de copia de seguridad o configuración de trasvase de registros.
Transact-SQL
Para una copia de seguridad determinada, puede utilizar WITH NO_COMPRESSION o WITH COMPRESSION en una instrucción BACKUP.
En una configuración de trasvase de registros, puede controlar el comportamiento de la compresión de copia de seguridad de las copias de seguridad del registro utilizando sp_add_log_shipping_primary_databasesp_change_log_shipping_primary_database (Transact-SQL).
SQL Server Management Studio
Puede invalidar el valor predeterminado de la compresión de copia de seguridad de servidor especificando Comprimir copia de seguridad o No comprimir copia de seguridad en cualquiera de los cuadros de diálogo siguientes:
Copia de seguridad de la base de datos (página Opciones)
Al hacer una copia de seguridad de una base de datos, puede controlar la compresión de copia de seguridad de una base de datos, archivo o registro.
Asistente para planes de mantenimiento
El Asistente para planes de mantenimiento le permite controlar la compresión de la copia de seguridad para cada copia de seguridad completa o diferencial de la base de datos o de los registros programada.
SQL Server 2008 Integration Services (SSIS) Tarea Copia de seguridad de la base de datos
Puede controlar el comportamiento de la compresión de copia de seguridad al crear un paquete para hacer un copia de seguridad de una o varias bases de datos.
Configuración de copias de seguridad de trasvase de registros de transacciones
Puede controlar el comportamiento de compresión de las copias de seguridad del registro.
Razón de compresión
Para calcular la razón de compresión de una copia de seguridad, utilice los valores para la copia de seguridad de las columnas backup_size y compressed_backup_size de la tabla de historial backupset, de la siguiente manera:
backup_size:compressed_backup_size
Por ejemplo, una razón de compresión de 3:1 indica que está ahorrando aproximadamente un 66% del espacio en disco. Para consultar estas columnas, puede utilizar la siguiente instrucción de Transact-SQL:
SELECT backup_size/compressed_backup_size FROM msdb..backupset;
La razón de compresión de una copia de seguridad comprimida depende de los datos que se hayan comprimido. La razón de compresión obtenida puede verse influenciada por diversos factores. Entre los factores más importantes tenemos:
El tipo de datos.
El texto se comprime más que otros tipos de datos.
La coherencia de los datos entre las filas de una página.
Normalmente, si una página contiene varias filas en las que un campo contiene el mismo valor, se podría producir una compresión significativa para ese valor. En contraste, para una base de datos que contiene datos aleatorios o que contiene sólo una fila de gran tamaño por página, la copia de seguridad comprimida sería casi tan grande como la copia de seguridad sin comprimir.
Si los datos están o no cifrados.
Los datos cifrados se comprimen mucho menos que los datos no cifrados equivalentes. Si se usa el cifrado transparente de los datos para cifrar una base de datos completa, al comprimir las copias de seguridad, podría no reducirse mucho su tamaño, o nada en absoluto.
Si la base de datos está comprimida.
Si la base de datos está comprimida, puede que la compresión de las copias de seguridad no reduzca demasiado su tamaño, si es que logra alguna reducción.