Mas Afinal, o Que é Pipeline de Dados?

Imagino que você já leu em várias fontes que uma das principais atribuições do Arquiteto de Dados é “criação de uma visão end-to-end do fluxo de dados / pipeline de dados”. Então chegou a hora de entender um pouco sobre esse tal de Pipeline de Dados.

Definição de Pipeline da Dados

Um pipeline de dados é uma série de etapas de processamento de dados. Se os dados não estiverem carregados na plataforma de dados, eles serão ingeridos no início do pipeline. Depois, há uma série de etapas nas quais cada uma fornece uma saída que é a entrada para a próxima etapa. Isso continua até que o pipeline esteja completo. Em alguns casos, etapas independentes podem ser executadas em paralelo.

Os pipelines de dados consistem em três elementos principais: uma fonte, uma ou mais etapas de processamento e um destino. Em alguns pipelines de dados, o destino pode ser chamado de coletor. Os pipelines de dados permitem o fluxo de dados de um aplicativo para um Data Warehouse, de um Data Lake para um banco de dados analítico ou para um sistema de processamento de pagamentos, por exemplo. Os pipelines de dados também podem ter a mesma fonte e coletor, de modo que o pipeline seja apenas para modificar o conjunto de dados. Sempre que os dados são processados ​​entre o ponto A e o ponto B (ou pontos B, C e D), há um pipeline de dados entre esses pontos.

Então Pipeline de Dados e ETL São a Mesma Coisa ?

Não.

ETL é um acrônimo comum usado para Extrair (Extract), Transformar (Transform) e Carregar (Load). A principal dissimilaridade do ETL é que ele se concentra inteiramente em um sistema para extrair, transformar e carregar dados em um sistema de armazenamento de dados específico. Como alternativa, o ETL é apenas um dos componentes que se enquadram no pipeline de dados.

O ETL move os dados em lotes para um sistema especificado com intervalos regulares. Comparativamente, os pipelines de dados têm uma aplicabilidade mais ampla para transformar e processar dados por meio de streaming ou em tempo real.

Os pipelines de dados não precisam necessariamente carregar dados em um Data Warehouse ou Data Lake, mas podem carregar em um destino diferente, como o bucket S3 (Simple Storage Service) da Amazon, ou mesmo conectá-los a um sistema completamente diferente.

Ficou Difícil?

Ok, então irei recorrer novamente a velha e infalível analogia.

Como é um assunto que eu gosto muito, irei usar para fazer essa analogia, uma outra coisa que eu aprecio bastante (mas com moderação): Cerveja!

Vamos entender como funciona o processo de Fabricação de Cerveja:

– Primeiro preciso me certificar de adquirir matéria prima de excelente qualidade.
– Preciso saber se a água utilizada é devidamente tratada e purificada.
– Preciso que a matéria prima seja armazenada de acordo com os padrões exigidos.
– Após garantir que a matéria prima está adequada chegou a hora de processar isso tudo.
– Então os cereais passarão por vários processos de transformação, como a maltagem, secagem e torrefação, filtragem, fervura, resfriamento e fermentação.
– Em seguida vem o processo de maturação (descanso) e enfim o líquido já está pronto para ser envasado.
– E finalmente o produto está pronto para ser entregue ao revendedor e por fim consumido.

Agora olhando para o processo acima, podemos facilmente entender que existe a entrada, processamento e saída de uma etapa para a outra. E sim, o ETL e o Pipeline podem muito bem coexistir.

Vejamos:

A aguá poderia ser comparada com streaming, ou seja, basta abrir a torneira e deixa ela entrar no caldeirão, e essa água provavelmente vem da saída do processo de tratamento e purificacão (Pipeline de Dados).

A maltagem podemos considerar como um processamento em lote (ETL). A fábrica recebe uma certa quantidade de cereais (Extração). Uma parte irá para armazenamento e outra irá para o processo de maltagem (germinação do grão).

A saída do processo de maltagem (transformação) que irá dizer qual tipo de cerveja será produzida (Lager, Pale Ale, Porter, Escura, etc.).

Já a saída do processo de maltagem é a entrada do processo de secagem e de torrefação do grão que irá determinar a cor e o aroma da cerveja.

Por fim a cerveja é envasada (Load).

O processo de tratamento da água pode acontecer em paralelo com o processo de maltagem, pois um não influencia no outro, porém a água já deverá estar tratada quando for ser usada na fervura do malte.

E agora, ficou mais fácil?

Referências:

What Is a Data Pipeline?

Definição de Pipeline

Top 5 Enterprise ETL Tools

What is a Data Pipeline?

What Is A Data Pipeline?


Este artigo foi produzido por uma das alunas da DSA, a Tabata Emanuelle Barbosa, e compartilhado na timeline da Comunidade DSA em nosso portal. A Tabata e outros alunos tiveram a iniciativa de produzir alguns resumos para ajudar aqueles que estão começando agora sua jornada e assim compartilhar conhecimento. Isso não é maravilhoso? Sim, nós da DSA também achamos. E por isso decidimos compartilhar em nosso Blog para ajudar também outras pessoas. 

Parabéns Tabata!

A propósito. Algumas curiosidades e estatísticas sobre a Tabata aqui na DSA:

– Ela está em nosso portal há 4 anos, praticamente desde o início da DSA.
– No total ela está matriculada em 8 Formações, incluindo a Formação Arquiteto de Dados recém-lançada, além de outros cursos individuais.
– Ela tem 369 posts em nossa Comunidade, a campeã de posts!
– Ela efetua login na DSA todos os dias, de segunda a segunda.
– Ela é Mentora de um grupo com 12 alunos da DSA, no Programa de Mentoria.
– Ela tem 18.194 horas de acesso à DSA.
– Ela tem 52 certificados de conclusão de cursos da DSA.
– Ela faz parte do Clube VIP DSA.

Depois de 4 anos, conseguir manter alunos como a Tabata, que se empolga, ajuda e participa da nossa Comunidade, é motivo de orgulho para a Equipe DSA. Obrigado Tabata!

Equipe DSA