Partilhar via


Crie pipelines com dlt-meta

Este artigo apresenta o dlt-meta, um projeto do Databricks Labs que fornece ferramentas para gerar pipelines a partir de metadados que você mantém.

Observação

O projeto dlt-meta de código aberto, como todos os projetos na conta do GitHub databrickslabs, existe apenas para fins de exploração. O Azure Databricks não oferece suporte a ele nem fornece contratos de nível de serviço (SLAs) para ele. Não envie tíquetes de suporte do Azure Databricks para problemas relacionados a este projeto. Em vez disso, registre um problema no GitHub, que será revisado conforme o tempo permitir.

O que é dlt-meta?

Lakeflow Spark Declarative Pipelines permite especificar declarativamente uma tabela e gera um fluxo em um pipeline que cria a tabela e a mantém atualizada à medida que os dados de origem mudam. No entanto, se sua organização tiver centenas de tabelas, gerar e gerenciar esses pipelines é demorado e pode levar a práticas inconsistentes.

O projeto dlt-meta é uma estrutura de metaprogramação orientada por metadados projetada para trabalhar com Lakeflow Spark Declarative Pipelines. Essa estrutura permite a automação de pipelines de dados bronze e silver aproveitando metadados registrados em um conjunto de arquivos JSON e YAML. O mecanismo dlt-meta usa código Python para gerar dinamicamente código de pipeline para os fluxos descritos em seus metadados. Você gera os metadados sobre seus pipelines, e dlt-meta gera seus pipelines.

Com sua lógica centralizada em um só lugar (os metadados), seu sistema é mais rápido, reutilizável e fácil de manter.

Observação

O projeto dlt-meta foi nomeado para o recurso Delta Live Tables mais antigo no Azure Databricks. O Delta Live Tables foi substituído pelo Lakeflow Spark Declarative Pipelines, e o dlt-meta funciona com o Lakeflow Spark Declarative Pipelines.

Benefícios do dlt-meta

Existem dois casos de uso principais para dlt-meta:

  • Ingerir e limpar um grande número de mesas de forma simples.
  • Aplique padrões de engenharia de dados em vários pipelines e usuários.

Os benefícios do uso de uma abordagem orientada por metadados incluem:

  • A manutenção de metadados pode ser feita sem conhecimento de código Python ou SQL.
  • A manutenção de metadados, em vez do código, requer menos sobrecarga e reduz erros.
  • O código é gerado pelo dlt-meta, portanto, permanece consistente e tem menos código personalizado entre pipelines e tabelas publicadas.
  • Você pode facilmente agrupar tabelas em pipelines dentro dos metadados, gerando o número de pipelines necessários para atualizar seus dados de forma mais eficiente.

Como funciona?

A imagem a seguir mostra uma visão geral do sistema dlt-meta:

Visão geral do DLT-meta

  1. Você cria os arquivos de metadados como entrada para dlt-meta, para especificar seus arquivos de origem e saídas, regras de qualidade e processamento necessário.
  2. O mecanismo dlt-meta compila os arquivos de integração em uma especificação de fluxo de dados, chamada DataflowSpec e armazena-os para uso posterior.
  3. O mecanismo dlt-meta usa o DataflowSpec para criar pipelines que geram suas tabelas bronze. Isso usa seus arquivos de metadados para ler os dados de origem e aplicar as expectativas de dados corretas para corresponder às suas regras de qualidade.
  4. Em seguida, o mecanismo dlt-meta usa o DataflowSpec para criar pipelines adicionais que geram suas tabelas prateadas. Isso usa seus arquivos de metadados para aplicar as transformações apropriadas e outros processamentos para o seu sistema.

Você executa os pipelines gerados pelo dlt-meta para manter a saída atualizada à medida que seus dados de origem são atualizados.

Como é que chego começo?

Para usar o dlt-meta, você deve:

  • Implante e configure a solução dlt-meta.
  • Prepare os metadados para suas tabelas de camadas bronze e prata.
  • Crie um trabalho para integrar os metadados.
  • Use os metadados para criar pipelines para suas tabelas.

A documentação dlt-meta no GitHub tem um tutorial para ajudá-lo a começar com esse processo. Para obter mais informações, consulte Introdução ao dlt-meta no GitHub.

Recursos adicionais