DLT oferece uma plataforma robusta para construir pipelines de processamento de dados confiáveis, sustentáveis e testáveis dentro do Databricks. Ao aproveitar seu framework declarativo e provisionar automaticamente o cálculo serverless ideal, o DLT simplifica as complexidades de streaming, transformação de dados e gerenciamento, proporcionando escalabilidade e eficiência para fluxos de trabalho de dados modernos.
Estamos animados para anunciar uma melhoria muito aguardada: a capacidade de publicar tabelas em vários esquemas e catálogos dentro de um único pipeline DLT. Essa capacidade reduz a complexidade operacional, diminui os custos e simplifica a gestão de dados, permitindo que você consolide sua arquitetura de medalhão (Bronze, Prata, Ouro) em um único pipeline, mantendo as melhores práticas organizacionais e de governança.
Com essa melhoria, você pode:
LIVE
para denotar dependências entre tabelas. Nomes de tabelas totalmente e parcialmente qualificados são suportados, juntamente com os comandos USE SCHEMA
e USE CATALOG
, assim como no SQL padrão.“A capacidade de publicar em vários catálogos e esquemas a partir de um pipeline DLT - e não mais exigir a palavra LIVE - nos ajudou a padronizar as melhores práticas de pipeline, otimizar nossos esforços de desenvolvimento e facilitar a fácil transição de equipes de cargas de trabalho não-DLT para DLT como parte de nossa adoção em larga escala da ferramenta.”— Ron DeFreitas, Engenheiro de Dados Principal, HealthVerity
Todos os pipelines criados a partir da UI agora suportam vários catálogos e esquemas por padrão. Você pode definir um catálogo e esquema padrão no nível do pipeline através da UI, da API, ou Databricks Asset Bundles (DABs).
Se você está criando um pipeline programaticamente, você pode habilitar essa capacidade especificando o campo schema
nas PipelineSettings
. Isso substitui o campo target
existente, garantindo que os conjuntos de dados possam ser publicados em vários catálogos e esquemas.
Para criar um pipeline com essa capacidade via API, você pode seguir este exemplo de código (Nota: a autenticação Token de Acesso Pessoal deve estar habilitada para o espaço de trabalho):
Ao definir o campo schema
, o pipeline suportará automaticamente a publicação de tabelas em vários catálogos e esquemas sem a necessidade da palavra-chave LIVE
.
schema
no YAML do pipeline e remova o campo target
se ele existir.
databricks bundle validate
“ para validar que a configuração DAB é válida.databricks bundle deploy -t“ para implantar seu primeiro pipeline <environment>
DPM!“O recurso funciona exatamente como esperamos que funcione! Eu consegui dividir os diferentes conjuntos de dados dentro do DLT em nossos esquemas de estágio, núcleo e UDM (basicamente uma configuração de bronze, prata, ouro) dentro de um único pipeline.”— Florian Duhme, Desenvolvedor de Software de Dados Especialista, Arvato
Uma vez que seu pipeline esteja configurado, você pode definir tabelas usando nomes totalmente ou parcialmente qualificados tanto em SQL quanto em Python.
Exemplo SQL
Exemplo em Python
Você pode referenciar conjuntos de dados usando nomes totalmente ou parcialmente qualificados, com a palavra-chave LIVE sendo opcional para compatibilidade retroativa.
Exemplo SQL
Exemplo em Python
Com essa nova capacidade, os principais métodos da API foram atualizados para suportar vários catálogos e esquemas de forma mais integrada:
Anteriormente, esses métodos só podiam referenciar conjuntos de dados definidos dentro do pipeline atual. Agora, eles podem referenciar conjuntos de dados em vários catálogos e esquemas, rastreando automaticamente as dependências conforme necessário. Isso facilita a construção de pipelines que integram dados de diferentes localizações sem configuração manual adicional.
No passado, esses métodos exigiam referências explícitas a conjuntos de dados externos, tornando as consultas entre catálogos mais complicadas. Com a nova atualização, as dependências agora são rastreadas automaticamente, e o esquema LIVE não é mais necessário. Isso simplifica o processo de leitura de dados de várias fontes dentro de um único pipeline.
A sintaxe SQL do Databricks agora suporta a definição de catálogos e esquemas ativos dinamicamente, tornando mais fácil gerenciar dados em várias localizações.
Exemplo SQL
Exemplo em Python
Este recurso também permite que os proprietários de pipeline publiquem logs de eventos no metastore do Catálogo Unity para melhor observabilidade. Para habilitar isso, especifique o campo event_log
nas configurações do pipeline JSON. Por exemplo:
Com isso, você agora pode emitir GRANTS na tabela de log de eventos como qualquer tabela regular:
Você também pode criar uma visualização sobre a tabela de log de eventos:
Além de tudo acima, você também pode transmitir a partir da tabela de log de eventos:
Olhando para o futuro, essas melhorias se tornarão o padrão para todos os novos pipelines criados, seja através da UI, API, ou Databricks Asset Bundles. Além disso, em breve estará disponível uma ferramenta de migração para ajudar na transição de pipelines existentes para o novo modelo de publicação.
Leia mais na documentação aqui.
(This blog post has been translated using AI-powered tools) Original Post