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

SQL Server 2008: Change Data Capture e Inserts não registrados

tecnologia/2008/11/16/sql-server-2008-change-data-capture-e-inserts-nao-registrados

Publicado: 01/05/2026 às 11:42
Leitura
4 minutos
SQL Server 2008: Change Data Capture e Inserts não registrados
Construção civil — Foto: Reprodução

Change Data Capture (CDC) e inserts não registrados são interessantes do SQL
Server e farão toda a diferença do mundo em certos cenários. Estas melhorias
giram em torno de warehouses, principalmente, mas também podem ser úteis em
alguns sistemas OLTP. O CDC vai mudar o modo como os desenvolvedores criam
processos ETL para warehouses.

O CDC emprega o mesmo leitor de registros
empregado em replicação para gravar as especificidades das operações DML (Data
Manipulation Language) em uma tabela em vez de um banco de dados de
distribuição. Os warehouses podem ser carregados muito facilmente a partir de
tabelas que só contêm dados modificados – não é mais necessário modificar
aplicações legadas ou processos ETL com colunas de atualização em todas as
tabelas a fim de fornecer esta funcionalidade. E você pode rastrear com
precisão total as alterações feitas nos dados em suas tabelas sem alterar seu
esquema ou realizar uma query confusa e dispendiosa para filtrar as diferenças.

>
Volte para o teste do SQL 2008

Também é muito fácil recuperar as mudanças
das tabelas CDC. A Microsoft forneceu um conjunto de funções que recuperam os
dados. Você só tem que invocá-las. Como é de se esperar, os dados Tipo 1 e Tipo
2 podem ser armazenados, possibilitando que você tenha o nível exato de dados
de mudança que deseja.

Inserts não registrados permitem que o SQL
Server faça um registro mínimo para grandes inserts. Como ele não registra cada
linha de dados inserida, em alguns casos você pode acelerar tremendamente suas
cargas de dados. No mínimo, usufruirá ganhos de performance expressivos.

Você podia fazer inserts não registrados em
versões anteriores do SQL Server usando o que é conhecido como um statement

“select into”, mas, na realidade, ele cria a tabela para você. É fantástico
para tabelas novas, mas, se você tiver tabelas antigas com atributos de
segurança e outros definidos, não vai querer removê-los e recriá-los. Outro
problema de “select into” é que você não controla para onde vai sua nova
tabela. Ela sempre se junta ao grupo de arquivos default.

Com o novo insert não registrado você pode
inserir as linhas em uma tabela existente, mantendo o controle sobre espaço,
performance e segurança e ainda usufruir os benefícios de uma carga de dados
ultraveloz. O princípio básico que gosto de adotar para warehouses (e qualquer
banco de dados, se você pensar bem) é não ter um esquema móvel. Isso significa
que você não quer remover e recriar objetos permanentes todo dia. É um
procedimento sujeito a erros e introduz no seu sistema uma complexidade que
você não precisa, sem falar nas suas tabelas que não estão disponíveis durante
a carga porque foram removidas.

Nos meus testes, os inserts não registrados
apresentaram a mesma performance dos congêneres “select into”. Na função de ABD
de um grande warehouse que enfrenta problemas de carga de dados todos os dias,
adoro este recurso. Só mudaria uma coisa: gostaria de ter uma opção que eu
pudesse acrescentar ao meu statement insert para colocá-lo no modo não
registrado.

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