Compactação de backup (SQL Server)
Este tópico discute os fundamentos da compactação de backup, inclusive a compensação de desempenho de backups compactados.
A compactação de backup foi introduzida no SQL Server 2008 Enterprise. A partir do SQL Server 2008 R2, a compactação de backup possui suporte pelo SQL Server 2008 R2 Standard e por todas as edições mais completas. Todas as edições do SQL Server 2008 ou posterior podem restaurar um backup compactado.
Restrições
As restrições a seguir aplicam-se aos backups compactados:
Backups compactados e não compactados não podem coexistir em um conjunto de mídias.
Porém, as versões anteriores do SQL Server não podem ler os backups compactados.
Backups NT não podem compartilhar uma fita com backups compactados do SQL Server.
Impacto de desempenho dos backups compactados
Como um backup compactado é menor do que um backup não compactado dos mesmos dados, a compactação de um backup normalmente requer menos operações de E/S do dispositivo e, portanto, normalmente aumenta significativamente a velocidade do backup.
Por padrão, a compactação aumenta consideravelmente o uso da CPU, e esse consumo adicional por parte do processo de compactação pode afetar negativamente as operações simultâneas. Portanto, convém criar backups compactados de baixa prioridade em uma sessão cujo uso da CPU é limitado pelo Administrador de Recursos. Para obter mais informações, consulte Como usar o Administrador de Recursos para limitar o uso de CPU por meio de compactação de backup (Transact-SQL).
Para obter uma boa visão do desempenho de E/S do seu backup, é possível isolar o E/S do backup para ou dos dispositivos avaliando as seguintes classificações dos contadores de desempenho:
Contadores de desempenho de E/S do Windows, como os contadores de disco físico
O contador Taxa de Transferência de Dispositivo em Bytes/s do objeto SQLServer:Dispositivo de Backup
O contador Taxa de Transferência de Backup/Restauração/s do objeto SQLServer:Bancos de Dados
Para obter informações sobre contadores do Windows, consulte a ajuda do Windows. Para obter informações sobre como trabalhar com contadores SQL Server, consulte Usando objetos do SQL Server.
Configuração
Na instalação, a compactação de backup está desativada por padrão. O comportamento padrão para a compactação de backup é definido pela opção de configuração de servidor Opção backup compression default. Você pode substituir o padrão do servidor ao criar um único backup ou programar uma série de backups rotineiros.
Para alterar o padrão de nível de servidor
Transact-SQL
Use o procedimento armazenado sp_configure para definir o valor do padrão de compactação de backup e execute a instrução RECONFIGURAR
SQL Server Management Studio
Use a página Configurações de Banco de Dados do diálogo Propriedades do Servidor. Para obter mais informações, consulte Como exibir ou alterar a opção padrão de compactação de backup (SQL Server Management Studio).
Para substituir o padrão de compactação de backup
É possível alterar o comportamento de compactação de backup para um backup individual, um trabalho de backup ou uma configuração de envio de logs.
Transact-SQL
Para um determinado backup, você pode usar WITH NO_COMPRESSION ou WITH COMPRESSION em uma instrução BACKUP.
Para uma configuração de envio de logs, é possível controlar o comportamento de compactação de backup de backups de log usando sp_add_log_shipping_primary_databasesp_change_log_shipping_primary_database (Transact-SQL).
SQL Server Management Studio
Você pode anular o padrão de compactação de backup do servidor especificando Compactar backup ou Não compactar o backup em qualquer uma das seguintes caixas de diálogo:
Backup de Banco de Dados (página Opções)
Ao fazer backup de um banco de dados, é possível controlar a compactação de backup de um backup individual de banco de dados, arquivo ou log.
Assistente de Plano de Manutenção
O Assistente de Plano de Manutenção permite que você controle a compactação de backup para cada conjunto de backups de banco de dados ou de log, completos ou diferenciais, que você programou.
SQL Server 2008 Integration Services (SSIS) Tarefa de Backup de Banco de Dados
É possível controlar o comportamento da compactação de backup ao criar um pacote para fazer backup de um único banco de dados ou de vários bancos de dados.
Configurações de backup de log de transações do envio de logs
Você pode controlar o comportamento da compactação de backup de backups de log.
Taxa de compactação
Para calcular a taxa de compactação de um backup, use os valores para o backup nas colunas backup_size e compressed_backup_size da tabela de histórico backupset, como segue:
backup_size:compressed_backup_size
Por exemplo, uma taxa de compactação de 3:1 indica que você está economizando aproximadamente 66% de espaço em disco. Para consultar essas colunas, você pode usar a seguinte instrução Transact-SQL:
SELECT backup_size/compressed_backup_size FROM msdb..backupset;
A taxa de compactação de um backup compactado depende dos dados que foram compactados. Uma variedade de fatores pode impactar na taxa de compactação obtida. Os principais fatores incluem:
O tipo de dados.
Os dados de caractere compactam mais do que outros tipos de dados.
A consistência dos dados entre as linhas em uma página.
Normalmente, se uma página contém várias linhas com um campo contendo o mesmo valor, poderá ocorrer uma compactação significativa para esse valor. Por outro lado, para um banco de dados que contém dados aleatórios ou contém somente uma grande linha por página, um backup compactado pode ser tão grande quanto um backup não compactado.
Se os dados são criptografados.
Os dados criptografados compactam significativamente menos do que dados equivalentes não criptografados. Se criptografia transparente de dados for usada para criptografar um banco de dados inteiro, a compactação de backup talvez não reduza muito o tamanho, se reduzir.
Se o banco de dados é compactado.
Se o banco de dados for compactado, a compactação de backups poderá não reduzir muito o seu tamanho.
Consulte também