Cargas Dinamicas - SSIS

31
Desenvolvendo Cargas de Dados Dinâmicas e Incrementais com Integration Services

Transcript of Cargas Dinamicas - SSIS

Page 1: Cargas Dinamicas - SSIS

Desenvolvendo Cargas de Dados Dinâmicas e Incrementais com Integration Services

Page 2: Cargas Dinamicas - SSIS

Apresentação

Senior BI Analyst at Comp Line

BI and Database Consultant and Instructor - One Way Solution

Writer – SQL Magazine

OLAP and ETL Consultant and Instructor – BI do Brasil

Microsoft Certified Professional

Page 3: Cargas Dinamicas - SSIS

Agenda

Extract, Transformation and Load – Introdução

Conhecendo o MS Integration Services Arquitetura do MS Integration Services Conhecendo alguns componentes do SSIS Constraints, Variáveis, Parâmetros e

Expressões Foreach Loop Container Desenvolvendo cargas Padrões com SSIS Processo de carga Dinâmico – Arquitetura e

Criação Implementando a carga incremental no

SSIS

Page 4: Cargas Dinamicas - SSIS

Extract, Transformation and Load - Introdução

O ETL visa trabalhar com toda a parte de extração de dados de fontes externas, transformação para atender às necessidades de negócios e carga dos dados dentro do Data Warehouse.

Em tempo de execução ele é divido em Extração, Transformação e Carga de dados.

Page 5: Cargas Dinamicas - SSIS

Conhecendo o MS Integration Services

O Microsoft Integration Services é responsável por permitir a construção de cargas de integração de dados e ETL para Data Warehouse;

Page 6: Cargas Dinamicas - SSIS

ProjectSolution

Package Control

FlowData Flow

Arquitetura do MS Integration Services

Page 7: Cargas Dinamicas - SSIS

Solution

Project 1

Project 2

Project 3

Recipiente Macro;

Dentro de uma Solução é possível criar vários projetos da solução Microsoft – SSIS, SSAS, SSRS;

Arquitetura do MS Integration Services

Page 8: Cargas Dinamicas - SSIS

Project

Package 1

Package 2

Connection 1

Recipiente onde se cria os pacotes de ETL a seremdesenvolvidos;Criação das conexões globais;

Arquitetura do MS Integration Services

Page 9: Cargas Dinamicas - SSIS

Recipiente para desenvolvimento dos Fluxos de controle e de dados.

Package

Control Flow

Arquitetura do MS Integration Services

Page 10: Cargas Dinamicas - SSIS

Control Flow Recipiente onde se cria o

fluxo de Dados;

Possibilidade de fazer algumas configurações. Exemplo - EmailContainer

Execute SQL

Send Mail

Data Flow

Arquitetura do MS Integration Services

Page 11: Cargas Dinamicas - SSIS

Data Flow

Task usada para trabalho a nível de Dados.

Inúmeras possibilidades;

Lookup

Merge Join

Sort

Merge

Arquitetura do MS Integration Services

Page 12: Cargas Dinamicas - SSIS

Destino 2

Destino 1

Condição

Mesclar

Origem 2

Origem 1

Task usada para trabalho a nível de Dados.

Arquivo txt

Data Flow Task

Destino 3

Page 13: Cargas Dinamicas - SSIS

Execute SQL TaskUsado para executar comandos em SQL padrão ANSI

e/ou T-SQL;

Page 14: Cargas Dinamicas - SSIS

Destino 1

Destino 2

Origem

COMPLETION FAILURESUCCESS

Precedência de Constraints

Destino 3

Page 15: Cargas Dinamicas - SSIS

A precêdencia COMPLETION

Exige apenas que o executável de precedência seja 

concluído, independente do resultad

o.

Precedência de Constraints

Destino 1

Origem

COMPLETION

Page 16: Cargas Dinamicas - SSIS

A precêdencia SUCCESS exite que o executável de

precedência seja executado com sucesso.

Precedência de Constraints

Destino 2

Origem

SUCCESS

Page 17: Cargas Dinamicas - SSIS

A precêdencia FAILURE exige que o executável

de precedência deve falhar. Geralmente utilizado

para tratamento de erros.

Precedência de Constraints

Origem

FAILURE

Destino 3

Page 18: Cargas Dinamicas - SSIS

Passo 3

Passo 1 Passo 2

AND

Passo 2

Multiplas de Constraints

OR

Passo 1 Passo 2

Passo 3

Page 19: Cargas Dinamicas - SSIS

Se a opção AND for ativada em seu Control

Flow, você estará indicando logicamente

que SOMENTE se os dois primeiros passos tiverem

sido concluídos, o Controle pode prosseguir

para o Passo 3.

Multiplas de Constraints

AND

Passo 2Passo 1 Passo 2

Passo 3

Page 20: Cargas Dinamicas - SSIS

Se a opção OR for ativada em seu Control Flow, você

estará indicando logicamente para que caso

um dos dois primeiros passos tiverem sido

concluídos, o Controle pode prosseguir para o

Passo 3.

Multiplas de Constraints

Passo 3

Passo 1 Passo 2

OR

Page 21: Cargas Dinamicas - SSIS

Dentro da ferramenta do Integration Services é possível trabalhar com dois tipos de variáveis:

Variáveis de Usuário – Criadas dentro do Pacote pelo desenvolvedor.

Variáveis de Sistema – Guardam dados em tempo de execução do pacote.

DadosVariável

Variável

Page 22: Cargas Dinamicas - SSIS

Parâmetros são recipientes que recebem o valor corrente de uma determinada variável e aplica esse valor em uma determinada situação.

Dentro do SSIS um parâmetro é mapeado através do character ‘?’

VariávelParâmet

ro

Parâmetro

Page 23: Cargas Dinamicas - SSIS

Uma expressão é uma combinação de símbolos (identificadores, literais, funções e operadores) gera um único valor de dados.

Expressões

Page 24: Cargas Dinamicas - SSIS

Funções Matemáticas Funções de String Funções de Data e Hora Funções para tratamento de NULL Funções para conversão de tipo de dados Operadores

Expressões

Page 25: Cargas Dinamicas - SSIS

Foreach Loop Container irá se repetir para cada elemento retornada de uma matriz.

Loop

Elemento 1Elemento 2Elemento 3

Foreach Loop Container

Page 26: Cargas Dinamicas - SSIS

1. Diretório2. Listagem Manual3. Linhas retornadas de um Objeto4. Tabelas de banco de dados5. Variável6. XML7. Objetos do Banco (tabelas, views)

Foreach Loop Container

Page 27: Cargas Dinamicas - SSIS

Desenvolvendo Cargas Padrões com SSIS

Page 28: Cargas Dinamicas - SSIS

Processo de Carga Dinâmico - Arquitetura e Criação

Acha Parâmetros

Habilita a Trace Flag

610Desabilita a Trace Flag

610

Retorna Colunas

Carrega Tabela

Container

Page 29: Cargas Dinamicas - SSIS

Implementando a carga incremental no SSIS

Acha Parâmetros

Habilita a Trace Flag

610

Container

Habilita a Trace Flag Desabilita a Trace

FlagRetorna Colunas

Retorna Colunas

Retorna Colunas

Retorna Colunas

Valida Dipo de Carga

Page 30: Cargas Dinamicas - SSIS

Referências

https://msdn.microsoft.com/en-us/library/ms141134.aspx

https://msdn.microsoft.com/en-us/library/ms137681.aspx

https://msdn.microsoft.com/en-us/library/ms141261.aspx

https://msdn.microsoft.com/en-us/library/ms139733.aspx

Page 31: Cargas Dinamicas - SSIS

Contatos

Email - [email protected]

Linkedin – Arthur Luz

Twitter - @arthurjosemberg

Skype - arthurjosemberg

Blog – arthurluz.wordpress.com