ETL
O que é e porque é importante
A ETL é um tipo de integração de dados de 3 passos (extrair, transformar e carregar) utilizada para combinar dados de múltiplas fontes. Costuma ser utilizada para criar um armazém de dados. Durante este processo, os dados são levados (extraídos) de um sistema de origem, convertidos (transformados) num formato que possa ser analisado, e guardados (carregados) num armazém de dados ou noutro sistema. Extrair, carregar e transformar (ELT) é uma abordagem alternante concebida para forçar o processamento para a base de dados, a fim de se obter um melhor desempenho.
História da ETL
A ETL ganhou popularidade nos anos 70 do século XX, quando as organizações começaram a utilizar múltiplos repositórios de dados, ou bases de dados, para armazenar diferentes tipos de informações comerciais. A necessidade de integrar dados, que estavam espalhados nestas bases de dados, rapidamente cresceu. A ETL tornou-se o método padrão para reunir dados que se encontravam em diferentes fontes e transformá-los antes de os carregar para um determinado alvo ou destino.
Os armazéns de dados entraram em cena no final dos anos 80 e início dos anos 90. Eram um tipo de base de dados distinto, davam acesso integrado aos dados a partir de múltiplos sistemas – computadores mainframe (de alta performance), mini computadores, computadores pessoais, e folhas de cálculo. Todavia, departamentos diferentes costumam frequentemente optar por ferramentas ETL diferentes, utilizadas em armazéns de dados diferentes. Tendo em conta fusões e aquisições, muitas organizações ficaram a braços com variadíssimas soluções de ETL que não estavam integradas.
Com o passar do tempo, o número de formatos de dados, fontes e sistemas tem crescido extraordinariamente. Extrair, transformar e carregar é agora um dos vários métodos organizacionais, utilizados para recolher, importar e processar dados. ETL e ELT são partes importantes da estratégia mais alargada da integração de dados numa organização.
Porque é que o ETL é importante?
Há anos que as empresas contam com os processos de ETL para obterem uma visão consolidada dos dados, através dos quais tomam melhores decisões relativamente aos seus negócios. Atualmente, este método de integração de dados de múltiplos sistemas e fontes ainda é um dos componentes centrais da caixa de ferramentas da integração de dados de uma organização.
A ETL é utilizada para mover e transformar dados de várias fontes e carregá-los para vários destinos, como por exemplo Hadoop.
- Quando utilizada com um armazém de dados empresarial (dados em repouso), a ETL oferece um contexto histórico e profundo do negócio.
- Ao facultar uma visão consolidada, a ETL faz com que seja mais fácil para os utilizadores de negócios analisar e reportar dados relevantes para as suas iniciativas.
- A ETL pode melhorar a produtividade dos profissionais de dados, pois codifica e reutiliza processos que movem os dados sem que sejam necessárias capacidades técnicas para escrever código ou scripts.
- A ETL evoluiu com o passar do tempo para apoiar os requisitos emergentes de integração, como por exemplo: a transmissão em fluxo de dados.
- As organizações precisam de ambas, ETL e ELT, para reunir os dados, manter a precisão, e auditoria tipicamente exigida para o armazenamento de dados, comunicação e análise.
ETL na atualidade
Atualmente, a velocidade de movimento dos dados (transmissão em fluxo) pode ser captada e analisada instantaneamente através da análise de transmissão em fluxo. Esta abordagem apresenta a oportunidade de agir de imediato, com base no que está a acontecer naquela janela temporal. Além disso, a visão histórica disponibilizada pela ETL coloca os dados em contexto. Posto isto, as organizações obtêm uma compreensão bem fundamentada do negócio ao longo do tempo. Estas duas abordagens precisam de funcionar bem em conjunto.
As organizações mais bem sucedidas terão uma estratégia precisa e clara em prática, a qual reconhece a integração de dados como a pedra sobre a qual devem edificar a sua diferenciação competitiva.
–David Loshin, Presidente da Knowledge Integrity Inc. A nova paisagem da integração de dados: ir além do ad hoc ETL para criar uma estratégia de integração de dados empresarial
Soluções de integração de dados da SAS
As nossas soluções de integração de dados distribuem tarefas em várias plataformas e fazem a ligação virtual a qualquer fonte ou destino de arquivo de dados.
Aprenda mais sobre as soluções de integração de dados da SAS
Como é que a ETL está a ser utilizada
As ferramentas centrais de ETL e ELT trabalham em sintonia com outras ferramentas de integração de dados, e com vários outros aspetos da gestão de dados – tais como, a qualidade dos dados, governança de dados, virtualização e metadados. As utilizações populares incluem:
ETL e utilizações tradicionais
A ETL é um método comprovado no qual várias organizações confiam diariamente – são exemplos disso retalhistas que precisam ver dados de vendas regularmente, ou prestadores de cuidados de saúde que estão à procura de uma descrição exata de pedidos de indemnização. A ETL pode combinar e exibir dados da transação de um armazém ou de outro arquivo de dados, para estarem prontos a serem analisados pelas pessoas de negócios, num formato que estas compreendam. A ETL também é utilizada para fazer a migração de dados de sistemas herdados para sistemas modernos com diferentes formatos de dados. Costuma ser utilizada para consolidar dados de fusões de negócios/empresas, e para recolher e juntar dados de fornecedores externos ou parceiros.
ETL e big data – transformações e placas
Ganha quem tiver mais dados. Embora isto não seja necessariamente verdade, ter um acesso facilitado a uma ampla gama de dados pode dar aos negócios uma vantagem competitiva. Hoje em dia, os negócios precisam de aceder a todos os tipos de big data – desde vídeos, conteúdo das redes sociais, internet das coisas (IoT), logs do servidor, dados geográficos, ou dados crowdsourced, a muito mais. Os fornecedores ETL adicionam frequentemente novas transformações às suas ferramentas para apoiar estes requisitos emergentes e as novas origens de dados. As placas dão acesso a uma grande variedade de origem de dados, e as ferramentas de integração de dados interagem com estas placas, para extrair e carregar dados eficientemente.
ETL para Hadoop – e mais
A ETL evoluiu para apoiar a integração em muito mais do que os armazéns de dados tradicionais. As ferramentas de ETL mais avançadas podem carregar e converter dados estruturados e não estruturados em Hadoop. Estas ferramentas leem e escrevem múltiplos ficheiros em paralelo, de e para Hadoop, e simplificam a forma como os dados são fundidos num processo de transformação comum. Algumas soluções incorporam bibliotecas de transformações de ETL pré-construídas para, tanto transações como interações de dados executadas em Hadoop. A ETL também apoia a integração nos vários sistemas transacionais, arquivos de dados operacionais, plataformas BI, hubs de gestão de dados globais (MGM) e na cloud.
ETL e acesso a dados self-service
A preparação de dados self-service é uma tendência em rápido crescimento que coloca o poder de acesso, combinação e transformação de dados, nas mãos dos utilizadores de negócios, e de outros profissionais de análise não especializados. Esta abordagem tem uma natureza ad hoc, aumentando a agilidade das organizações e libertando o departamento de IT do fardo do aprovisionamento de dados em vários formatos para os utilizadores empresariais/de negócios. Ou seja, menos tempo gasto na preparação de dados e mais tempo a gerar recomendações personalizadas. Consequentemente, tanto os negócios como profissionais de dados IT podem melhorar a produtividade, e as organizações podem potencializar a sua utilização dos dados para melhorar a tomada de decisões.
ETL e qualidade dos dados
A ETL e outras ferramentas de software de integração de dados – utilizadas para a limpeza de dados, perfilamento e auditoria – asseguram a fiabilidade dos dados. As ferramentas de ETL integram ferramentas de qualidade dos dados, e os fornecedores de ETL incorporaram ferramentas relacionadas nas suas soluções, tais como aquelas que são utilizadas para o mapeamento de dados e linhagem de dados.
ETL e metadados
Os metadados ajudam-nos a compreender a linhagem dos dados (de onde vêm) e o seu impacto noutros conjuntos de dados na organização. À medida que a arquitetura de dados se torna mais complexa é importante saber como os vários elementos de dados, na sua organização, são utilizados e relacionados. Por exemplo, se adicionar o nome de uma conta do X à sua base de dados de clientes, precisará de saber o que será afetado, por exemplo, os trabalhos ETL, aplicações ou relatórios.
Como funciona
A ETL está intimamente ligada a outras funções de integrações de dados, processos e técnicas. Compreender estes fornecedores dá-lhe uma visão clara de como funciona a ETL.
SQL | A linguagem de consulta estruturada é o método mais comum para aceder e transformar dados numa base de dados. |
Transformações, regras de negócios e placas | Depois de extrair os dados, a ETL utiliza regras de negócio para transformar os dados em novos formatos. Os dados transformados são então carregados para o alvo. |
Mapeamento de dados | O mapeamento de dados é parte do processo de transformação. O mapeamento dá instruções detalhadas a uma aplicação, sobre os passos necessários, para obter os dados que precisa para o processo. Também faz o mapeamento de cada campo de origem para o respetivo campo de destino. Por exemplo, o terceiro atributo de um feed de dados da atividade de um website pode ser o nome de utilizador, o quarto pode ser o carimbo de data/hora de quando a atividade ocorreu, e o quinto pode ser o produto no qual o utilizador carregou. Uma aplicação ou processo de ETL, que utiliza esses dados, tem de mapear estes mesmos campos ou atributos, desde o sistema de origem (por exemplo, o feed de dados da atividade do website) até ao formato exigido pelo sistema de destino. Se o sistema de destino for um sistema de gestão de relacionamento com o cliente, poderá guardar primeiro o nome de utilizador e em quinto o carimbo de data/hora; pode até nem guardar o produto. Neste caso, a transformação para formatar a data no formato desejado (e na ordem correta), pode acontecer algures entre o momento em que o dado é lido na origem e em que é escrito no alvo. |
Scripts | O ETL é um método de automatização dos scripts (conjunto de instruções) executados nos bastidores para mover e transformar dados. Antes da ETL, os scripts eram escritos individualmente em C ou COBOL, para transferir dados entre sistemas específicos. Isto fazia com que as múltiplas bases de dados executassem numerosos tipos de scripts. As ferramentas iniciais de ETL eram executadas em mainframes, como processamentos em lote. Mais tarde a ETL migrou para o UNIX e plataformas de PC. Hoje em dia as organizações ainda utilizam ambos, scripts e métodos de movimentação de dados programáticos. |
ETL vs. ELT | No início, havia a ETL. Mais tarde as organizações adicionaram a ELT, como um método complementar. A ELT extrai dados de um sistema de origem, carrega-os num sistema de destino e utiliza o poder do processamento do sistema de origem para conduzir as transformações. Isto agiliza o processamento de dados, pois esta tarefa é feita no local onde se encontram os dados. |
Qualidade dos dados | Antes dos dados serem integrados, por norma, é criada uma área intermédia onde os dados são limpos, os valores dos dados são padronizados (Porto e Lisboa, Senhor e Sr., Mari e Mariana), as moradas são verificadas e os duplicados podem ser removidos. Várias das soluções ainda são individuais, mas os procedimentos da qualidade dos dados podem agora ser executados como uma das transformações no processo de integração de dados. |
Agendamento e processamento | As ferramentas e tecnologias de ETL podem facultar agendamentos em lote ou recursos em tempo real. Também podem processar dados em grandes volumes no servidor, ou reduzir o processamento ao nível da base de dados. Esta abordagem ao processamento numa base de dados, em oposição a um motor especializado, evita dados duplicados e previne a necessidade de utilizar um recurso extra na plataforma da base de dados. |
Processamento em lotes | A ETL, habitualmente, refere-se a processamentos em lote onde se movimentam grandes volumes de dados entre dois sistemas, durante aquilo a que se chama uma "janela de lote". Durante este período de tempo – diga-se entre as 12h e a 13h – não podem ocorrer ações nem no sistema de origem nem no de destino, pois os dados estão sincronizados. A maioria dos bancos faz o processamento em lote durante a noite para resolver transações feitas durante o dia. |
Serviços web | Os serviços web são um método de fornecimento de dados ou funcionalidades, sediado na internet, para várias aplicações, quase em tempo real. Este método simplifica os processos de integração de dados e pode proporcionar a obtenção de um maior valor derivado dos dados, e com maior rapidez. Por exemplo, digamos que um cliente contacta o call center. Pode criar um serviço web que lhe dá o perfil de cliente completo, em segundos. Para tal, basta que coloque um número de telefone num serviço web que extrai os dados de múltiplas fontes, ou de um hub MDM. Com maior conhecimento dos clientes, os representantes do serviço ao cliente podem tomar melhores decisões sobre como interagir com o cliente. |
Gestão de dados globais | MDM é o processo de juntar dados para criar uma visão única dos dados em múltiplas fontes. Inclui ETL e também capacidades de integração de dados, para combinar os dados e criar um "registo de ouro" ou "melhor resultado". |
Virtualização de dados | A virtualização é um método ágil onde se combina dados para criar uma visão virtual dos mesmos sem os mover. A virtualização de dados difere dos ETL, porque apesar de o mapeamento e junção de dados ocorrerem em ambos os casos, não há necessidade de uma tabela de teste em formato físico para guardar os resultados. Isto assim acontece porque a visualização está habitualmente guardada na memória e em cache para melhorar o desempenho. Algumas soluções de virtualização, como o Servidor de Federação da SAS, oferecem uma ocultação dinâmica dos dados, funções de aleatoriedade e hashing para proteger dados sensíveis de funções ou grupos específicos. A SAS também oferece dados de qualidade enquanto a visualização é gerada. |
Event stream processing e ETL | Quando a velocidade dos dados aumenta para milhões de acontecimentos por segundo, o event stream processing pode ser utilizado para monitorizar fluxos de dados, processar os fluxos de dados e ajudar a tomar decisões mais atempadas. Um exemplo no sector da energia é a utilização de análises preditivas em fluxos de dados, para detetar quando uma bomba submersível precisa de ser reparada, e assim reduzir o tempo de inatividade, grau e dimensão dos danos na bomba. |
Leia mais sobre este tópico
- The importance of data quality: A sustainable approachBad data wrecks countless business ventures. Here’s a data quality plan to help you get it right.
- Key questions to kick off your data analytics projectsThere’s no single blueprint for starting a data analytics project. Technology expert Phil Simon suggests these 10 questions as a guide.
- What is a data lake and why does it matter?A data lake is a storage repository that quickly ingests large amounts of raw data in its native format. As containers for multiple collections of data in one convenient location, data lakes allow for self-service access, exploration and visualization. In turn, businesses can see and respond to new information faster.
- 5 data management best practices to help you do data rightFollow these 5 data management best practices to make sure your business data gives you great results from analytics.