Pular para o conteúdo principal

Use o pipeline declarativo LakeFlow com Hive metastore

Este artigo detalha configurações e advertências específicas do pipeline declarativo LakeFlow configurado para publicar dados no Hive metastore. Databricks recomenda usar Unity Catalog para todos os novos pipelines. Consulte Usar Unity Catalog com seu pipeline declarativo LakeFlow.

nota

Este artigo discute a funcionalidade do modo de publicação default atual para pipeline. o pipeline criado antes de 5 de fevereiro de 2025 pode usar o modo de publicação legado e o esquema virtual LIVE . Veja o esquema LIVE (legado).

Como consultar tabelas de transmissão e visualização materializada no Hive metastore

Após a conclusão de uma atualização, você pode view o esquema e as tabelas, consultar os dados ou usá-los em aplicativos posteriores.

Uma vez publicadas, as tabelas de pipeline declarativas LakeFlow podem ser consultadas de qualquer ambiente com acesso ao esquema de destino. Isso inclui Databricks SQL, Notebook e outros pipelines declarativos LakeFlow .

important

Quando você cria uma configuração target , somente tabelas e metadados associados são publicados. as visualizações não são publicadas no metastore.

Configurar um pipeline para publicar no Hive metastore

Para publicar no Hive metastore, escolha Usar Hive metastore em Opções avançadas ao criar um novo pipeline (talvez seja necessário escolher Ver mais para ver a opção). Você deve especificar um esquema de destino default ao publicar no Hive metastore. Consulte Configurar pipeline declarativo LakeFlow.

Especifique um local de armazenamento

Você pode especificar um local de armazenamento para um pipeline que publica no Hive metastore. A principal motivação para especificar um local é controlar o local de armazenamento de objetos para dados gravados pelo seu pipeline. Databricks recomenda sempre especificar um local de armazenamento para evitar gravar na DBFS root.

Como todas as tabelas, dados, pontos de verificação e metadados do pipeline LakeFlow Declarative são totalmente gerenciados pelo pipeline LakeFlow Declarative, a maior parte da interação com o conjunto de dados do pipeline LakeFlow Declarative acontece por meio de tabelas registradas no Hive metastore ou no Unity Catalog.

configuração de armazenamento em nuvem

Use o perfil de instância AWS para configurar o acesso ao armazenamentoS3 na AWS. Para adicionar um instance profile na interface do usuário do pipeline declarativo LakeFlow ao criar ou editar um pipeline:

  1. Ao editar um pipeline no LakeFlow Pipelines Editor, clique no botão Configurações .
  2. No menu suspenso do perfil de instância na seção de computação das configurações pipeline , selecione um instance profile.

Para configurar um instance profile AWS editando as configurações JSON para seus clusters pipeline , clique no botão JSON e insira a configuração instance profile no campo aws_attributes.instance_profile_arn na configuração cluster :

JSON
{
"clusters": [
{
"aws_attributes": {
"instance_profile_arn": "arn:aws:..."
}
}
]
}

Você também pode configurar o perfil da instância ao criar uma política de cluster para seu pipeline declarativo LakeFlow . Para ver um exemplo, consulte a base de conhecimento.

Trabalhar com log de eventos para pipeline Hive metastore

Se o seu pipeline publicar tabelas no Hive metastore, o log de eventos será armazenado em /system/events no local storage . Por exemplo, se você tiver configurado a configuração do pipeline storage como /Users/username/data, o log de eventos será armazenado no caminho /Users/username/data/system/events no DBFS.

Se você não tiver configurado a configuração storage , o local default log eventos será /pipelines/<pipeline-id>/system/events no DBFS. Por exemplo, se o ID do seu pipeline for 91de5e48-35ed-11ec-8d3d-0242ac130003, o local de armazenamento será /pipelines/91de5e48-35ed-11ec-8d3d-0242ac130003/system/events.

Você pode criar uma view para simplificar a consulta do log de eventos. O exemplo a seguir cria uma view temporária chamada event_log_raw. Esta view é usada nas consultas log eventos de exemplo incluídas neste artigo:

SQL
CREATE OR REPLACE TEMP VIEW event_log_raw
AS SELECT * FROM delta.`<event-log-path>`;

Substitua <event-log-path> pelo local do log de eventos.

Cada instância de uma execução de pipeline é chamada de atualização . Muitas vezes você deseja extrair informações da atualização mais recente. execute a seguinte consulta para encontrar o identificador da atualização mais recente e salvá-lo na view temporária latest_update_id . Esta view é usada nas consultas log eventos de exemplo incluídas neste artigo:

SQL
CREATE OR REPLACE TEMP VIEW latest_update AS
SELECT origin.update_id AS id
FROM event_log_raw
WHERE event_type = 'create_update'
ORDER BY timestamp DESC
LIMIT 1;

Você pode consultar o log in um Databricks Notebook ou no editorSQL. Use um Notebook ou o editor SQL para executar as consultas log eventos de exemplo.

Exemplo de código-fonte pipeline Notebook para espaço de trabalho sem Unity Catalog

Você pode importar o seguinte Notebook para um workspace Databricks sem Unity Catalog habilitado e usá-lo para implementar o pipeline declarativo LakeFlow . Importe o Notebook do idioma escolhido e especifique o caminho no campo Código-fonte ao configurar um pipeline com a opção de armazenamento Hive metastore . Consulte Configurar pipeline declarativo LakeFlow.

Comece com o pipeline declarativo LakeFlow Python Notebook

Open notebook in new tab

Comece com SQL Notebook do pipeline declarativo LakeFlow

Open notebook in new tab