O que é um pipeline de dados?

14 de junho de 2024

Autores

Cole Stryker

Editorial Lead, AI Models

O que é um pipeline de dados?

Um pipeline de dados é um método no qual dados brutos são ingeridos de várias fontes de dados, transformados e, em seguida, enviados para um repositório de dados, como um data lake ou data warehouse, para análise.

Antes que os dados fluam para um repositório, geralmente passam por algum processamento. Isso inclui transformações, como filtragem, mascaramento e agregações, que garantem integração de dados e padronização adequadas. Isso é particularmente importante quando o destino do conjunto de dados é um banco de dados relacional. Esse tipo de repositório possui um esquema definido, que exige alinhamento — ou seja, correspondência entre colunas e tipos de dados — para atualizar os dados existentes com os novos dados.

Como o nome sugere, os pipelines de dados funcionam como o "encaminhamento" para os projetos de ciência de dados ou dashboards de business intelligence. Os dados podem ser obtidos em uma grande variedade de lugares – APIs, bancos de dados SQL e NoSQL, arquivos, etc. – mas, infelizmente, esses dados geralmente não estão prontos para uso imediato. Durante o fornecimento, a linhagem de dados é rastreada para documentar a relação entre os dados corporativos em várias aplicações comerciais e de TI, por exemplo, onde os dados estão atualmente e como são armazenados em um ambiente, como no local, em um data lake ou em um data warehouse.

As tarefas de preparação de dados geralmente ficam a cargo de cientistas de dados ou engenheiros de dados, que estruturam os dados para atender às necessidades dos casos de uso de negócios e lidam com grandes volumes de dados. O tipo de processamento de dados que um data pipeline requer é geralmente determinado por uma combinação de análise exploratória de dados e requisitos de negócios definidos. Depois que os dados forem devidamente filtrados, mesclados e resumidos, eles podem ser armazenados e disponibilizados para uso. Pipelines de dados bem organizados fornecem a base para uma ampla gama de projetos de dados — isso pode incluir análises exploratórias, visualizações de dados e tarefas de aprendizado de máquina.

Projeto 3D de bolas rolando em uma pista

As últimas notícias e insights sobre IA 


Descubra insights selecionados por especialistas e notícias sobre IA, nuvem e outros assuntos no boletim informativo semanal Think. 

Tipos de pipelines de dados

Existem vários tipos de pipelines de dados, cada um apropriado para tarefas específicas em plataformas específicas. Os tipos mais comuns incluem:

  • Pipelines de dados de processamento em lote
  • Pipelines de dados em streaming
  • Pipelines de integração de dados
  • Pipelines nativos da nuvem

Processamento em lote

O desenvolvimento do processamento em lote foi um passo fundamental para construir infraestruturas de dados confiáveis e escaláveis. Em 2004, o MapReduce, um algoritmo de processamento em lote, foi patenteado e depois integrado a sistemas de código aberto, como o Hadoop, CouchDB e MongoDB.

Como o nome indica, o processamento em lote carrega "lotes" de dados em um repositório durante intervalos de tempo definidos, que normalmente são programados fora do horário de pico comercial. Dessa forma, outras cargas de trabalho não são afetadas, uma vez que os trabalhos de processamento em lote tendem a trabalhar com grandes volumes de dados, o que pode sobrecarregar o sistema geral. O processamento em lote geralmente é o pipeline de dados ideal quando não há uma necessidade imediata de analisar um conjunto de dados específico (por exemplo, contabilidade mensal) e está mais associado ao processo de integração de dados ETL, que significa "extrair, transformar e carregar."

Os trabalhos de processamento em lote formam um fluxo de trabalho com comandos em sequência, onde a saída de um comando se torna o input do próximo. Por exemplo, um comando pode iniciar a ingestão de dados, o seguinte pode ativar a filtragem de colunas específicas, e o próximo pode executar a agregação. Essa sequência de comandos continua até que a qualidade dos dados seja completamente transformada e reescrita em um repositório.

Dados de streaming

Ao contrário do processamento em lote, os pipelines de dados em streaming — também conhecidos como arquiteturas orientadas a eventos — processam continuamente eventos gerados por diversas fontes, como sensores ou interações de usuários em uma aplicação. Os eventos são processados e analisados, e então armazenados em bancos de dados ou enviados para análise posterior.

Dados em streaming são utilizados quando é necessário que os dados sejam continuamente atualizados. Por exemplo, aplicativos ou sistemas de ponto de venda precisam de dados em tempo real para atualizar o inventário e o histórico de vendas de seus produtos — assim, vendedores podem informar se um produto está ou não disponível. Uma única ação, como a venda de um produto, é considerada um “evento”, e eventos relacionados, como adicionar um item ao carrinho, são agrupados como um “tópico” ou “fluxo”. Esses eventos são então transportados por sistemas de mensagens ou brokers, como o Apache Kafka, de código aberto.

Como os eventos de dados são processados logo após ocorrerem, sistemas de processamento em streaming têm menor latência do que os sistemas em lote, mas não são considerados tão confiáveis, pois mensagens podem ser descartadas acidentalmente ou ficar muito tempo na fila. Brokers de mensagens ajudam a resolver isso com confirmações, onde o consumidor confirma ao broker que processou a mensagem, para que ela seja removida da fila.

Pipelines de integração de dados

Os pipelines de integração de dados se concentram em unir dados de várias fontes em uma única visão unificada. Esses pipelines geralmente envolvem processos de extração, transformação e carregamento (ETL) que limpam, enriquecem ou modificam os dados brutos antes de armazená-los em um repositório centralizado, como um data warehouse ou data lake. Pipelines de integração de dados são essenciais para lidar com sistemas díspares que geram formatos ou estruturas incompatíveis. Por exemplo, pode-se adicionar uma conexão ao Amazon S3 (Amazon Simple Storage Service) — um serviço da Amazon Web Services (AWS) que fornece armazenamento de objetos por meio de uma interface da web.

Pipelines de dados nativos da nuvem

Uma plataforma de dados moderna inclui um conjunto de produtos de software nativos e prioritários na nuvem que permitem a coleta, limpeza, transformação e análise dos dados de uma organização para ajudar a melhorar a tomada de decisões. Hoje, os pipelines de dados tornaram-se cada vez mais complexos e essenciais para a análise de dados e para decisões orientadas por dados. Uma plataforma de dados moderna gera confiança nesses dados ao ingerir, armazenar, processar e transformá-los de forma a garantir informações precisas e em tempo hábil, reduzir silos de dados, permitir o autoatendimento e melhorar a qualidade dos dados.

Mixture of Experts | 25 de abril, episódio 52

Decodificando a IA: resumo semanal das notícias

Junte-se ao nosso painel de engenheiros, pesquisadores, líderes de produto e outros especialistas de classe mundial enquanto eles cortam o ruído da IA para trazer a você as últimas notícias e insights sobre IA.

Arquitetura de pipeline de dados

Três etapas principais compõem a arquitetura de um pipeline de dados:

1. Ingestão de dados: os dados são coletados de diversas fontes — incluindo plataformas SaaS (software como serviço), dispositivos de Internet das coisas (IoT) e dispositivos móveis — e em diferentes estruturas de dados, tanto estruturados quanto não estruturados. No caso de dados em streaming, essas fontes brutas são conhecidas como produtores, publicadores ou remetentes. Embora empresas possam escolher extrair os dados somente quando prontos para processá-los, é melhor prática armazenar os dados brutos primeiramente em um data warehouse na nuvem. Assim, a empresa pode atualizar dados históricos, caso precise ajustar os trabalhos de processamento.Durante esse processo de ingestão, diversas validações e verificações podem ser aplicadas para garantir a consistência e a precisão dos dados.

2. Transformação de dados: nesta etapa, uma série de trabalhos é executada para processar os dados no formato exigido pelo repositório de destino. Esses trabalhos incorporam automação e controle para fluxos de trabalho repetitivos, como relatórios de negócios, garantindo que os dados sejam limpos e transformados de forma consistente. Por exemplo, um fluxo de dados pode estar em formato JSON aninhado, e a etapa de transformação vai descompactar esse JSON para extrair os campos-chave para análise.

3. Armazenamento de dados: os dados transformados são então armazenados em um repositório, onde podem ser acessados por diferentes stakeholders. No contexto de dados em streaming, esses dados transformados são geralmente chamados de consumidores, assinantes ou destinatários.

Pipeline de dados versus pipeline ETL

Você pode perceber que alguns termos, como pipeline de dados e pipeline ETL, são usados de forma intercambiável em conversas. No entanto, o mais apropriado é considerar o pipeline ETL como uma subcategoria dos pipelines de dados. Os dois tipos se distinguem por três características principais:

  • Pipelines ETL seguem uma sequência específica. Como a sigla indica, eles extraem dados, os transformam e depois carregam e armazenam esses dados em um repositório. Nem todos os pipelines de dados precisam seguir essa sequência. Na verdade, pipelines ELT (extrair, carregar, transformar) tornaram-se mais populares com o advento de ferramentas nativas da nuvem, onde os dados podem ser gerados e armazenados em diversas fontes e plataformas. Embora a ingestão de dados ainda ocorra primeiro nesse tipo de pipeline, qualquer transformação é aplicada somente depois que os dados são carregados no data warehouse baseado em nuvem.

  • Pipelines ETL também tendem a implicar o uso de processamento em lote, mas, como mencionado acima, o escopo dos pipelines de dados é mais amplo. Eles também podem incluir o processamento de dados em streaming.

  • Por fim, embora seja improvável, pipelines de dados como um todo não precisam necessariamente passar por transformações de dados, como ocorre com os pipelines ETL. É raro ver um pipeline de dados que não utilize transformações para viabilizar a análise de dados.

Casos de uso de pipelines de dados

À medida que o big data continua crescendo, o gerenciamento de dados se torna uma prioridade cada vez maior. Embora pipelines de dados sirvam para várias funções, as seguintes são voltadas para aplicações de negócios:

  • Análise exploratória de dados: cientistas de dados usam a análise exploratória de dados (EDA) para examinar e investigar conjuntos de dados e resumir suas principais características, geralmente utilizando métodos de visualização de dados. Isso ajuda a determinar como manipular melhor as fontes de dados para obter as respostas desejadas, facilitando a descoberta de padrões, identificação de anomalias, teste de hipóteses ou verificação de premissas.

  • Visualizações de dados: para representar dados por meio de gráficos comuns, visualizações de gráficos, diagramas, infográficos e até animações podem ser criadas. Essas exibições visuais de informações comunicam relações complexas entre dados e insights orientados por dados de maneira fácil de compreender.

  • Aprendizado de máquina: um ramo da inteligência artificial (IA) e da ciência da computação, o aprendizado de máquina se concentra no uso de dados e algoritmos para imitar a forma como os seres humanos aprendem, aprimorando gradualmente sua precisão. Por meio de métodos estatísticos, os algoritmos são treinados para fazer classificações ou previsões, revelando insights importantes em projetos de mineração de dados.

  • Observabilidade de dados: para verificar a precisão e a segurança dos dados utilizados, a observabilidade de dados aplica uma variedade de ferramentas para monitoramento, rastreamento e alertas tanto para eventos esperados quanto para anomalias.
Soluções relacionadas
IBM StreamSets

Crie e gerencie pipelines de dados de streaming inteligentes por meio de uma interface gráfica intuitiva, facilitando a integração sem dificuldades dos dados em ambientes híbridos e de multinuvem.

Explore o StreamSets
IBM Databand

Conheça o IBM Databand, o software de observabilidade para pipelines de dados. Ele coleta metadados automaticamente para criar linhas de base históricas, detectar anomalias e criar fluxos de trabalho para corrigir problemas de qualidade dos dados.

Explore o Databand
Soluções de integração de dados

Crie pipelines de dados resilientes, de alto desempenho e de baixo custo para suas iniciativas de IA generativa, análise de dados em tempo real, modernização de armazéns e necessidades operacionais com as soluções de integração de dados da IBM.

Conheça soluções de integração de dados
Dê o próximo passo

Conheça o IBM® DataStage, uma ferramenta de ETL (extração, transformação e carregamento) que oferece uma interface visual para projetar, desenvolver e implementar pipelines de dados. Está disponível como SaaS gerenciado na IBM® Cloud, para auto-hospedagem, e como complemento ao IBM® Cloud Pak for Data.

Conheça o DataStage Explore os serviços de análise de dados