Artigo sobre o que é ETL

Abaixo você entenderá, da maneira mais completa possível, o que é ETL. A sigla em inglês, Extract, Transform and Load (Extrair, Transformar e Carregar). Buscamos de forma simples explicar para que o leitor leigo no assunto possa compreender o assunto e o leitor intermediário consolidar seu conhecimento.

Quando falamos sobre o que é ETL, falamos de um processo de extração e adaptação de dados de fontes externas. O conceito de ETL se confunde muito com ferramentas que fazem o processo, pois um não se realiza sem o outro.

O entendimento geral é de que esta é a fase mais crítica da construção de um modelo de dados. Caso você vá montar um Data Warehouse é o processo mais importante e trabalhoso a ser feito, pois, toda a estrutura de dados depende dele. Não há Business Intelligence sem ETL.

A consolidação dos dados é feita a partir de diferentes fontes. Estas fontes podem ser banco de dados relacionais, arquivos de texto, arquivos em excel, endereços na Web, dentre inúmeros outros tipos de fontes. O sistema de ETL tem que conseguir se comunicar com as diversas fontes de dados, ler diferentes formatos e como resultado trazer tudo numa base homogênea. O produto final do processo de ETL será uma base para gerar relatórios e análises que suportem decisões de negócios, não podem ter erros nestes resultados.

No mercado há diversas ferramentas para estas atividades, algumas bastante conhecidas e consolidadas. Citamos aqui SAS, Microsoft SQL Server Integration Services, Power Query (excel e Power BI), Pentaho Data Integration, Oracle Data Integrator, SAP BusinessObjects Data Services, dentre outros.

 

Extração, Transformação e Carregamento (o que é ETL)

O processo de ETL envolve os seguintes passos, como o próprio nome indica:

  • Extração dos dados de fontes externas;
  • Transformação dos dados para a realidade de cada negócio;
  • Carregamento dos dados nos modelos de dados deixando-os disponíveis para trabalho.
o que é ETL e sua importancia

Como o processo de ETL funciona.

Extração

A primeira etapa no processo é extrair os dados nas origens das fontes. Os projetos em geral consolidam diferentes fontes com diferentes formatos dos dados, organizados também em estruturas diferentes.

Veja abaixo exemplos das fontes de dados mais utilizadas:

  • Arquivos de Texto/CSV;
  • Excel;
  • Banco de Dados Relacionais;
  • Banco de Dados Cloud;
  • JSON;
  • Endereço WEB;
  • Serviços Online por API;
  • Etc…

 

Transformação

Consiste no tratamento, limpeza e adaptação dos dados extraídos. Desta transformação são gerados os dados a serem carregados.

A parte de transformação consiste em padronizar os dados em relação ao tamanho e tipo. Remover colunas ou linhas indesejadas. Substituir caracteres estranhos, corrigir erros de digitação e padronizar nomes e termos. Criação de novas colunas a partir de colunas já existentes contendo somente parte dos dados. Criação de colunas a partir da junção de duas colunas. Transposição de linhas para colunas ou vice-versa. Traduzir valores codificados em informações legíveis (exemplo: 1 para Masculino, 2 para Feminino). Alteração das unidades de medida. Mesclar ou Acrescentar informações de tabelas em uma só. E muito mais.

 

Carregamento

Esta etapa, dentro do que explicamos sobre o que é ETL, representa em colocar os dados transformados dentro do modelo de dados ou Data Warehouse. Este processo varia de acordo com a aplicação, necessidade e organização.

Com a carga dos dados é possível ler e gerar valor sobre eles. A partir deste ponto o analista ou gestor de negócios consegue manipular e formar seus relatórios e análises para o processo de tomada de decisão.

A frequência de carregamento e a quantidade de dados a serem armazenados são definidas nesta etapa também. Cada empresa e pessoa tem necessidades específicas. Com relação à frequência é importante programar uma periodicidade em que os dados serão atualizados e utilizados e num horário que não tenha grande utilização de recursos de rede, pois é um processo que exige do ambiente ou da máquina que irá executar.

 

Considerações importantes para o entendimento sobre o que é ETL e para trabalhar melhor nos processos

A chave de um bom processo de ETL e prestar atenção em alguns fatores.

Disponibilidade das fontes de Dados

Suas fontes devem ser de fácil acesso e pouco sujeitas a alterações. Busque se basear em fontes onde você ou sua empresa tenham uma certa influência. Devem ser evitados constantes alterações na estrutura, nos locais de armazenamento ou caminho de busca bem como alterações no próprio conteúdo, isto causa inconsistências no modelo de dados e necessidade de ajustes constante nas etapas de extração e transformação.

 

Simplifique sua vida

É nesta parte que você pode otimizar seu trabalho e deixar sua vida mais fácil na geração de seus relatórios e modelos de dados. Preste bastante atenção na hora de transformar, faça isto para reduzir a necessidade de intervenção no dia a dia, para deixar a atividade mais automatizada possível.

 

Escalabilidade de dados

A tendência é que os dados somente cresçam e se acumulem, fazendo com que consuma cada vez mais recursos do sistema.  Isto deve ser pensado no momento da criação do modelo, deve-se entender o tamanho que vai chegar. Dependendo deste tamanho a estratégia de atualização muda, será necessário criar rotinas quebradas com vários processamentos. Então para não ter surpresas e travamentos já pense nisto antes.

As empresas de desenvolvimento de softwares de ETL desenvolveram formas de minimizar os impactos de grandes processamentos. É chamado de processamentos paralelos, dando mais capacidade às suas soluções.

Recomendamos a leitura do artigo a seguir com as nossas melhores práticas para importação de dados no Power BI.

Conclusão

Nossa intenção neste artigo, além de fazer você entender o que é ETL, foi também dar mais contexto a este processo. Espero que tenham compreendido a importância desta etapa no todo do Business Intelligence.

Por fim, entenda o que é ETL como sendo a ponte que liga os dados até o modelo de dados. Sem esta ponte os dados não chegam ao seu objetivo, que é informar, dar subsídios, possibilitar tomada de decisão consciente.

O processo deve ser bem planejado e executado de forma a evitar erros e retrabalhos futuros, mas principalmente de forma a reduzir o tempo de execução no tratamento dos dados. Esperamos que tenham gostado e entendido o que expusemos em relação ao que é ETL.

Compartilhe este conteúdo nas suas redes sociais (utilize os botões abaixo) e ajude seus colegas a compreender melhor sobre o assunto.

Tem dúvidas? Nos pergunte! Utilize a sessão de comentários deste artigo logo abaixo.

Até a próxima!

Compartilhe