O que é ETL?

ETL, vem do inglês Extract Transform Load, ou seja, Extração Transformação Carga. 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 (Para entender o conceito de Data Warehouse, leia o post sobre “O que é o Data Warehouse?”). O foco deste artigo é a utilização do ETL voltado para Data Warehouse, mas você pode utilizar as ferramentas de ETL para fazer todo tipo de trabalho de importação, exportação, transformação de dados para outros ambientes de banco de dados ou para outras necessidades a serem endereçadas.

Os projetos de data warehouse consolidam dados de diferentes fontes. A maioria dessas fontes tendem a ser bancos de dados relacionais ou flat files, mas podem existir outros tipos de fontes também. Um sistema ETL precisa ser capaz de se comunicar com bases de dados e ler diversos formatos de arquivos utilizados por toda a organização.

A ferramenta que nós podemos utilizar para ETL da Microsoft é o Microsoft SQL Server Integration Services.


Os Principais Componentes do ETL


Nesta imagem nós podemos visualizar um exemplo de modelo de Arquitetura de uma solução de BI. O objetivo aqui não é discutir sobre toda a arquitetura, mas visualizar os principais componentes que fazem parte de um sistema ETL.

1) Extração: É a coleta de dados dos sistemas de origem (também chamados Data Sources ou sistemas operacionais), extraindo-os e transferindo-os para o ambiente de DW, onde o sistema de ETL pode operar independente dos sistemas operacionais.

2) Limpeza, Ajustes e Consolidação (ou também chamada transformação): É nesta etapa que realizamos os devidos ajustes, podendo assim melhorar a qualidade dos dados e consolidar dados de duas ou mais fontes.

O estágio de transformação aplica um série de regras ou funções aos dados extraídos para ajustar os dados a serem carregados. Algumas fontes de dados necessitarão de muito pouca manipulação de dados. Em outros casos, podem ser necessários trabalhar algumas transformações, como por exemplo, Junção de dados provenientes de diversas fontes, seleção de apenas determinadas colunas e Tradução de valores codificados (se o sistema de origem armazena 1 para sexo masculino e 2 para feminino, mas o data warehouse armazena M para masculino e F para feminino, por exemplo).

3) Entrega ou Carga dos dados: Consiste em fisicamente estruturar e carregar os dados para dentro da camada de apresentação seguindo o modelo dimensional. Dependendo das necessidades da organização, este processo varia amplamente. Alguns data warehouses podem substituir as informações existentes semanalmente, com dados cumulativos e atualizados, ao passo que outro DW (ou até mesmo outras partes do mesmo DW) podem adicionar dados a cada hora. A latência e o alcance de reposição ou acréscimo constituem opções de projeto estratégicas que dependem do tempo disponível e das necessidades de negócios.

4) A parte de Gerenciamento é composta por serviços para auxiliar no gerenciamento do DataWarehouse. Aqui nós temos tasks específicas para gerenciamento de jobs, planos de backup, verificação de itens de segurança e compliance.

Além dos 04 componentes principais, também temos outros dois itens a serem avaliados:

Requisitos para o ETL

Antes de iniciar um Projeto de ETL é necessário que os seguinte itens estejam bem alinhados:

  • Requisitos de negócio
    • Você tem bem claro e documentado quais são os requisitos de negócio?
  • Viabilidade dos Dados
    • Foi realizado uma análise de viabilidade dos dados?
  • Latência dos Dados
    • Qual é o tempo máximo permitido para disponibilização dos dados através do sistema de BI?
  • Políticas de Compliance e Segurança
    • Quais são as políticas de compliance e segurança adotadas pela empresa?

 
ETL no Ciclo de Vida do Data Warehouse


O Ciclo de vida do Data Warehouse é composto por uma série de etapas. Inicia-se pelo planejamento do Programa ou Projeto, passamos pelo levantamento e definição dos requisitos de negócios e aí nos dividimos em 3 caminhos… Um seguindo a parte de Arquitetura e Design Técnico, Outro trabalhando a definição da Modelagem Dimensional, o Desenho físico e a parte de ETL, e um terceiro caminho que trata do planejamento e desenvolvimento da aplicação de BI, o front end propriamente dito.

 
Referências:

14 comentários sobre “O que é ETL?

  1. Olá,

    Não sei se pode ajudar no meu problema, eu tenho 3 bases de dados 1 planilha do Excel uma base em Acces e uma base do SQL Server.
    Eu quero fazer um ETL dessas 3 bases e mover seu conteúdo para uma base multidimensional para assim criar um cubo, acontece que não consigo enviar os dados de cada uma dessas bases para a base multidimensional pelo Integration Service, estou tentando carregar a informação de cada coluno nas tabelas dimensões mas algumas pessoas que pedi ajuda me disseram que não pode carregar direto nas dimensões deve carregar a fato mas fiquei confuso já que a tabela fato vai ter informações cruzadas das dimensões. Pode me ajudar?

    Curtir

  2. Olá Vivi, tenho acompanhado seu blog, videos e tenho gostado da sua forma de nos mostrar as funcionalidades do integration services porém, gostaria de uma informacao adiconal em relacao as tarefas por exemplo a Lookup, eu ate consegui fazer a uma configuracao de leitura em uma determinada tabela, ou seja, nao deixo inserir dados que ja exite na tabela de destino, o problema é, como eu faco, qual tarefa uso para atualizar uma determinada linha que foi alterda na tabela origem, fazer isso no desitno? Ja tem um tempo que venho tendando achar essa resposta para eu dar uma agilixada no meu projeto

    Curtir

    1. Olá Alexandre, tudo bem?
      Sugiro a você, caso se interesse por esse tema em nível de pós-gradução, o curso MBA em Business Intelligence e Data Warehousing da Faculdade Unyleya, EAD. Tem um custo baixo em relação ao que você obterá em formação e conhecimento. Estou cursando-o atualmente e recomendo!
      web site: http://unyleya.edu.br
      Abraço

      Curtir

    2. oi Alexandre, tudo bem?

      Dá uma olhada no site http://ead.bidobrasil.com.br

      O site foi organizado em cursos para Iniciantes, Intermediários e avançados. Eu sugiro você iniciar pelos curso de Introdução a BI e Data Warehouse (curso gratuíto), na sequência Desenvolvendo BI com Excel e/ou Analisando e visualizando dados com Power BI. A Fase I da Formação Analista de Data Warehouse é um bom curso para apresender como gerenciar um projeto de BI, modelar e estruturar um Data Warehouse. Se você for fazer vários cursos vale a pena dar uma olhada na opção de Assinatura Anual na qual você conta com mentoring de especialistas e consegue uma economia de mais de 50% no seu processo de capacitação.

      Caso você queira se tornar um Cientista de Dados, vale a pena dar uma olhada na Academia Data Analytics to Data Science disponível lá no site também!

      Abs! 😉

      Curtir

Deixe um comentário