Sunday 10 June 2018

Migrando pacotes dts para integration services


Por que atualizar do DTS para Integration Services?


Embora o SQL Server 2008 Integration Services pode ser considerado a quarta iteração de uma ferramenta ETL do SQL Server, é dramaticamente diferente do DTS. A arquitetura mudou drasticamente no Integration Services para suportar um método ETL em memória que pode suportar uma carga de milhões de linhas com pouco esforço. No DTS, um cenário ETL típico consistia em carregar uma ou várias tabelas de teste e, em seguida, aplicar uma série de atualizações antes da carga final do data warehouse ou sistema OLTP, conforme mostrado na figura.


Figura 1: Arquitetura de uma solução ETL com Data Transformation Services (clique para ampliar imagem)


As atualizações constantes às tabelas de teste antes dessa carga final eram muito onerosas nos servidores de banco de dados. No Integration Services, a arquitetura foi alterada e você pode executar a maioria dessas funções na memória sem sequer escrever os dados em uma tabela de teste. Há uma série de componentes internos que ajudam a executar rapidamente muitas das funções que foram feitas através de atualizações Transact-SQL em processos ETL anteriores.


Figura 2: Arquitetura de uma solução ETL com Integration Services (clique para ampliar a imagem)


Quando você atualizar para SSIS, você pode ver uma melhoria dramática no desempenho. Por exemplo, tomamos um pacote DTS simples que puxa um milhão de linhas de um arquivo de texto delimitado por vírgulas e grava esses dados em uma tabela do SQL Server. No DTS, o tempo de execução médio durante cinco execuções do pacote foi 33,2 segundos. O mesmo pacote, depois de atualizado para o Integration Services, levou 11,3 segundos em média ao usar um componente de destino do SQL Server na tarefa Fluxo de dados ou 12,3 segundos, em média, ao usar um destino OLE DB padrão.

No comments:

Post a Comment