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

Para acessar um bucket no Google Cloud Storage (GCS), você deve criar uma account de serviço com acesso a esse bucket GCS e adicionar essa account de serviço às configurações cluster . Para obter mais informações sobre como criar uma account serviço em nuvem do Google, consulte Conectar ao Google Cloud Storage. Você pode adicionar a configuração account serviço ao criar ou editar um pipeline com a API do pipeline declarativo LakeFlow ou na interface do usuário do pipeline declarativo LakeFlow :

  1. Ao editar um pipeline no LakeFlow Pipelines Editor, clique em Ícone de engrenagem. Configurações .
  2. Clique no botão JSON .
  3. Insira a configuração account serviço no campo gcp_attributes.google_service_account na configuração cluster :
JSON
{
"clusters": [
{
"gcp_attributes": {
"google_service_account": "test-gcs-doc@databricks-dev.iam.gserviceaccount.com"
}
}
]
}

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