ITF Portal - Banner Topo
Slot: /23408374/itf-ad-banner-topo
720x300, 728x90, 728x210, 970x250, 970x90, 1190x250

SQL Server 2008: Data Compression e Backup Compression

tecnologia/2008/11/16/sql-server-2008-data-compression-e-backup-compression

Publicado: 01/05/2026 às 11:42
Leitura
6 minutos
SQL Server 2008: Data Compression e Backup Compression
Construção civil — Foto: Reprodução

A primeira
tentativa de Data Compression do SQL Server parece muito boa. Ele tem dois tipos de
compactação: linhas e páginas. A compactação de linhas é a verdadeira
compactação: espaços não utilizados no fim das colunas são removidos para
economizar armazenamento. A compactação de páginas, também conhecida como
compactação de dicionário, padroniza os dados em cada página e mantém um
ponteiro de pesquisa. No SQL Server 2008, a compactação de páginas inclui
compactação de linhas. Se a compactação de páginas estiver ativada, você ganha
a compactação de linhas.

A Microsoft fornece um
assistente de cálculo de compactação útil que lhe dará uma boa estimativa dos
benefícios que você pode esperar. O assistente usa um cenário de teste de
compactação dos seus dados para cada tipo de compactação (linha e página) e
informa qual deveria ser o novo tamanho da tabela. Nos testes, o cálculo desviou dos
meus resultados finais apenas 1% ou 2%. É um índice muito bom, se você
considerar que o cálculo se baseia em um volume de dados relativamente pequeno.

>
Volte para o teste do SQL 2008

Até que ponto uma tabela
será compactada? Depende tanto do tipo de dados quanto do tipo de compactação.
Se seus dados são como os dados SAP, que têm muitos espaços, você ficará bem
servido com a compactação no nível da linha. Se você tem muitos dados
repetidos, então a compactação no nível da página será a melhor opção.

A ordem dos dados também
importa. Tendo em vista que o SQL Server compacta no nível da página, dados
repetidos que estão agrupados serão deduplicados. Vale a pena conhecer a
natureza e a ordem dos seus dados.

Como o Advanced Compression
do Oracle Database 11g, meus resultados com o Data Compression no SQL Server
2008 foram muito variados. Obtive apenas 17% de compactação em alguns conjuntos
de dados e até 76% em outros. O teto de 76% foi alcançado em dados de linha de
ordem não normalizados (denormalized) em um data warehouse.

Quando se trata de Data
Compression, o SQL Server tem uma vantagem sobre o Oracle: o SQL Server
compactará tabelas existentes em um único statement. No Oracle Database 11g,
você tem que criar uma nova tabela, inserir os dados e depois remover a tabela
antiga. Com o SQL Server, você não precisa criar uma cópia adicional dos dados
e ainda pode realizar operações na tabela durante a operação de compactação,
sem necessidade de tempo de inatividade.

Um recurso novo excelente
chamado Sparse Columns permite que você armazene valores null sem consumir
nenhum espaço físico. Aqui a Microsoft cometeu um grande erro: Sparse
Columns não são compatíveis com Data Compression. Se você definir Sparse
Columns em uma tabela, não pode utilizar Data Compression. Sparse
Columns e Data Compression formaria um par perfeito. Tomara que a Microsoft
corrija isso em breve.

Backup Compression
O SQL Server 2008
também apresenta o Backup Compression. Em alguns testes preliminares, achei as
taxas de compactação quase no mesmo nível das de Quest LiteSpeed e outras
ferramentas de backup de terceiros que usei. Ainda assim, o Backup Compression
do SQL Server tem muitos aspectos negativos. Em primeiro lugar, Backup
Compression só está disponível para a enterprise edition. Mesmo na corporação,
só vai servir para dificultar o gerenciamento. O mais provável é que a fatia do
leão de instâncias do SQL Server em qualquer organização de tamanho
considerável não seja enterprise edition – e não é aceitável que estas
instâncias sejam a exceção no plano de backup.

Encare do seguinte modo:
você não escolheu a enterprise edition por causa do tamanho do banco de dados.
Já que a maioria das versões do SQL Server é capaz de lidar com tamanho de
dados ilimitado, a enterprise edition, em geral, é escolhida pelos recursos que
oferece. Como resultado, em suas instalações provavelmente você terá muitas
máquinas SQL Server com conjuntos de dados muito grandes que não estão na
enterprise, e eles também precisam de backups compactados – ou seja,
possivelmente você já implementou uma solução de backup de terceiros. Não faz
sentido mudar de rotinas de backup para um pequeno subconjunto das suas
máquinas SQL Server. Sem dúvida, você vai querer a mesma solução o ambiente
inteiro.

Em segundo lugar, ao
contrário do SQL Server, as soluções de backup de terceiros fazem restore no
nível do objeto, o que pode ser muito prático em várias situações. Se você
utiliza Backup Compression do SQL Server para seus servidores empresariais,
perde funcionalidade.

Para terminar, as soluções
de terceiros têm repositórios centralizados e fornecem relatório e alerta
centralizados. Se você usa a compactação nativa do SQL Server, elimina
eficazmente o gerenciamento centralizado de backups para estas máquinas.

As soluções de backup de
terceiros oferecem outros recursos, mas o Backup Compression do SQL Server não
será viável para a maioria das instalações devido, principalmente, a cobertura
incompleta, restore no nível do objeto e gerenciamento centralizado de backup.

As melhores notícias de tecnologia B2B em primeira mão
Acompanhe todas as novidades diretamente na sua caixa de entrada
Imagem do ícone
Notícias
Imagem do ícone
Revistas
Imagem do ícone
Materiais
Imagem do ícone
Eventos
Imagem do ícone
Marketing
Imagem do ícone
Sustentabilidade
Autor
Notícias relacionadas