domingo, 28 de junho de 2015

SSIS - Visão Geral de algumas Tarefas - Tasks

As tarefas são os componentes principais do SSIS. Podemos dizer que representam o fluxo macro do processo.
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).



Figura 06 - Script Task


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