Publique em vários catálogos e esquemas de um único pipeline DLT


Dlt Oferece uma plataforma robusta para a criação de pipelines de processamento de dados confiáveis, sustentáveis ​​e testáveis ​​nos bancos de dados. Ao alavancar sua estrutura declarativa e provisionar automaticamente computação ideally suited sem servidor, o DLT simplifica as complexidades do streaming, transformação de dados e gerenciamento, fornecendo escalabilidade e eficiência para fluxos de trabalho de dados modernos.

Estamos animados em anunciar um aprimoramento muito esperado: A capacidade de publicar tabelas em vários esquemas e catálogos em um único pipeline DLT. Essa capacidade reduz a complexidade operacional, reduz os custos e simplifica o gerenciamento 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 este aprimoramento, você pode:

  • Simplifique a sintaxe do pipeline – Não há necessidade de LIVE Sintaxe para denotar dependências entre tabelas. Nomes de tabela totalmente e parcialmente qualificados são suportados, juntamente com USE SCHEMA e USE CATALOG Comandos, assim como no SQL padrão.
  • Reduzir a complexidade operacional – Processe e publique todas as tabelas em um pipeline DLT unificado, eliminando a necessidade de pipelines separados por esquema ou catálogo.
  • Custos mais baixos – Reduce a sobrecarga de infraestrutura consolidando várias cargas de trabalho em um único pipeline.
  • Melhorar a observabilidade – Publique o seu registro de eventos como uma tabela padrão no Catálogo da Unidade para Metastore para Monitoramento e Governança aprimorado.

“A capacidade de publicar em vários catálogos e esquemas de um pipeline de DLT – e não exigindo mais a palavra -chave ao vivo – nos ajudou a padronizar as melhores práticas de pipeline, otimizar nossos esforços de desenvolvimento e facilitar a transição fácil da equipe de equipes não -DLT para DLT como parte de nossa grande escala, a adoção da adoção da ferramenta da ferramenta.”

– Ron Defreitas, engenheiro de dados principal, HealthVerity

Publique em vários catálogos e esquemas de um único pipeline DLT

Como começar

Criando um pipeline

Todos os pipelines criados a partir da interface do usuário agora padrão para suportar vários catálogos e esquemas. Você pode definir um catálogo e esquema padrão no nível do pipeline através da interface do usuário, da API ou dos pacotes de ativos de banco de dados (DABS).

Da interface do usuário:

  1. Crie um novo pipeline como de costume.
  2. Defina o catálogo e o esquema padrão nas configurações do pipeline.

Da API:

Se você estiver criando um pipeline programaticamente, poderá ativar essa capacidade especificando o schema campo no PipelineSettings. Isso substitui o existente goal Campo, garantindo que os conjuntos de dados possam ser publicados em vários catálogos e esquemas.

Para criar um pipeline com este recurso by way of API, você pode seguir este exemplo de código (Observação: Token de acesso pessoal Autenticação deve estar ativada para o espaço de trabalho):

Definindo o schema Campo, o pipeline apoiará automaticamente tabelas de publicação para vários catálogos e esquemas sem exigir o LIVE palavra -chave.

Do dab

  1. Verifique se o seu banco de dados cli tem versão v0.230.0 ou acima. Caso contrário, atualize a CLI seguindo o documentação.
  2. Configure o ambiente de pacote de ativos (DAB) de Databricks, seguindo o documentação. Seguindo estas etapas, você deve ter um diretório DAB gerado a partir da CLI dos Databricks, que contém todos os arquivos de configuração e código -fonte.
  3. Encontre o arquivo YAML outline o pipeline DLT em:
    //_piPeline.yml
  4. Defina o schema campo no pipeline yaml e remova o goal campo se houver.
  5. Correr “databricks bundle validate“Para validar que a configuração do DAB é válida.
  6. Correr “databricks bundle deploy -t “Para implantar seu primeiro pipeline DPM!

“O recurso funciona como esperamos que funcione! Consegui dividir os diferentes conjuntos de dados no DLT em nossos esquemas de estágio, núcleo e UDM (basicamente uma configuração de bronze, prata e ouro) em um único pipeline. ”

– Florian Duhme, desenvolvedor de software program de dados especializado, Arvato

Arvato

Publicação de tabelas para vários catálogos e esquemas

Depois que o seu pipeline estiver configurado, você pode definir tabelas usando nomes totalmente ou parcialmente qualificados no SQL e no Python.

Exemplo SQL

Exemplo de Python

Leitura de conjuntos de dados

Você pode fazer referência a conjuntos de dados usando nomes totalmente ou parcialmente qualificados, com a palavra -chave ao vivo sendo opcional para compatibilidade com versões anteriores.

Exemplo SQL

Exemplo de Python

O comportamento da API muda

Com esse novo recurso, os principais métodos da API foram atualizados para suportar vários catálogos e esquemas com mais perfeição:

dlt.learn () e dlt.read_stream ()

Anteriormente, esses métodos só podiam fazer referência a conjuntos de dados definidos no pipeline atual. Agora, eles podem fazer referência a conjuntos de dados em vários catálogos e esquemas, rastreando automaticamente as dependências, conforme necessário. Isso facilita a criação de pipelines que integram dados de diferentes locais sem configuração guide adicional.

Spark.learn () e Spark.readstream ()

No passado, esses métodos exigiam referências explícitas a conjuntos de dados externos, tornando as consultas entre catálogo mais pesadas. Com a nova atualização, as dependências agora são rastreadas automaticamente e o esquema ao vivo não é mais necessário. Isso simplifica o processo de leitura de dados de várias fontes em um único pipeline.

Usando o catálogo de uso e o esquema de uso

O Databricks SQL Syntax agora suporta definir catálogos e esquemas ativos dinamicamente, facilitando o gerenciamento de dados em vários locais.

Exemplo SQL

Exemplo de Python

Gerenciando os registros de eventos no catálogo de unidades

Esse recurso também permite que os proprietários de pipeline publiquem logs de eventos no Metastore do Catálogo da Unidade para melhorar a observabilidade. Para ativar isso, especifique o event_log Campo nas configurações do pipeline JSON. Por exemplo:

Com isso, agora você pode emitir subsídios na tabela de log de eventos como qualquer tabela common:

Você também pode criar uma visualização sobre a tabela de log de eventos:

Além de tudo isso, você também pode transmitir a partir da tabela de log de eventos:

O que vem a seguir?

Olhando para o futuro, esses aprimoramentos se tornarão o padrão para todos os pipelines recém -criados, sejam criados by way of feixes de ativos de interface do usuário, API ou Databricks. Além disso, uma ferramenta de migração estará disponível em breve para ajudar a transição de pipelines existentes para o novo modelo de publicação.

Leia mais na documentação aqui.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *