Esse post tem como objetivo ser um guia de referencia rápido para descrever algumas tarefas (tasks) utilizadas no SSIS.
Data flow task
Utilizado para carga, transformação e extração de diversas fontes de dados.
É a task mais complexa e suas configurações são realizadas na aba Data Flow.
Alguns exemplos de utilização:
- Carga de um Excel para um Banco SQL Server.
- Extração de um arquivo txt de uma tabela do Oracle.
- Carga de uma tabela do Oracle para o Access.
Figura 01 - Data Flow Task
Para mais detalhes desse componente verifique o artigo:
"SSIS – Data flow task - Exportando dados do SQL Server para um arquivo CSV"
Execute SQL task
Componente utilizado para realizar comandos SQL em uma conexão.
Essa conexão pode ser:
- EXCEL
- OLE DB
- ODBC
- ADO
- ADO.NET
- SQLMOBILE
Pode receber e passar parâmetros, executar Stored Procedures e etc. Isso se a conexão e fonte permitirem.
Alguns exemplos de utilização:
- Executar comandos DML e DDL no SQL Server.
- Executar uma consulta (Select) no Oracle.
- Deletar registros em uma tabela no Access.
Figura 02 - Execute SQL Task
Execute T- SQL Statement task
Componente parecido com o anterior, porem possui algumas diferenças.
Essa task só pode ser utilizada por uma conexão com servidores que dão suporte a linguagem T-SQL, ou seja, o SQL Server.
Para utilizar parâmetros deve-se usar variáveis ou Expressions (ainda a serem abordados).
Exemplos de utilização:
- Criar uma tabela no SQL Server.
- Deletar registros de uma tabela no SQL Server.
- Executar uma Stored Procedure no SQL Server.
Figura 03 - Execute T-SQL Statement Task
Execute Package task
Essa task é responsavel por executar um pacote dtsx. Isso mesmo, existe uma tarefa para executar pacotes. Um pacote que executa outro tem o conceito de "Pacote Pai" e "Pacote Filho". Quem chama é o pai e o "chamado", ou "solicitado", é o filho.
Essa task pode executar pacotes como arquivo (File System) ou publicados no servidor (SQL Server).
Exemplos de utilização:
- Deseja criar um pacote principal para controle de vários processos.
- Deseja criar um pacote "genérico", que seja utilizado por outros diversos pacotes.
- Deseja simplificar um pacote complexo, separando em outros diversos pacotes.
Figura 04 - Execute Package Task
Execute Process task
Esse componente é responsável por executar aplicativos ou arquivos batch (.bat). Muito útil para integrar soluções ou programas com sua solução. Por exemplo pode integrar o executável do winrar ao seu pacote. Ou executar o SQL Server via linha de comando (SQLCMD).
Exemplo de utilização:
- Deseja integrar um aplicativo .exe no seu pacote.
- Deseja executa um arquivo .bat que realiza uma tarefa importante para seu processo.
- Executar uma consulta ou comando, como o Bulk insert, via linha de comando.
Figura 05 - Execute Process Task
Script Task
Essa task permite que voce integre sua solução com linguagem de programação. As linguagens disponíveis são o Microsoft Visual Basic e o Microsoft Visual C# .
Algumas soluções mais complexas podem ser resolvidas com o uso de programação.
Exemplos de uso:
- Manipulações complexas de pastas e arquivos.
- Utilização de recursos existente apenas na programação, como funções e procedimentos.
- Acessar outros programas, como excel e access, via backend.
- Trabalhar registros linha por linha. (Verificar questões de otimização nesse caso).
Send Mail Task
Tarefa para envio de e-mail. Utilizada para notificações e alertas. Pode-se enviar um e-mail alertando o fim de um processamento, avisando sobre erro ou em que etapa do processamento está executando.
Exemplos de utilização:
- Sinalizar o fim de um processo automático.
- Enviar mensagens de erro.
- Acompanhar passo a passo um processo.
Figura 07 - Send Mail Task
Web Service Task
Tarefa utilizada para obter valores de retorno de métodos Web Services.
Esses valores de retorno podem ser gravados em variáveis e arquivos.
Esse não é um componente muito utilizado, porem algumas empresas utilizam Web Services internamente.
Uma grande empresa, sempre citada quando o assunto é Web Services é a Amazon.
Figura 08 - Web Service Task
XML Task
Essa tarefa é responsável por leitura e manipulação de dados XML.
Com essa task consegue-se aplicar formatação utilizando XSLT. Permite que utilize expressões Xpath. Tambem é possível mesclar vários documentos XML em um só.
Futuramente abordaremos muito desses componentes na prática e recomendo as referencias no final.
Obrigado e até a próxima!
Referencias
Tarefas do Integration Services
Data Flow
SQL task
T-SQL task
Package task
Process task
Script task
Send Mail task
Web Service task
XML task
Nenhum comentário:
Postar um comentário