Utilize o pipeline declarativo LakeFlow Spark com Hive metastorelegado.
Este artigo detalha as configurações e ressalvas específicas do pipeline declarativo LakeFlow Spark configurado para publicar dados no Hive metastore legado. Databricks recomenda o uso Unity Catalog para todos os novos pipelines. Consulte Usar Unity Catalog com o pipeline.
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.
Após a publicação, as tabelas do pipeline declarativo do LakeFlow Spark podem ser consultadas a partir de qualquer ambiente com acesso ao esquema de destino. Isso inclui Databricks SQL, Notebook e outros pipelines declarativos LakeFlow Spark .
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 legado, selecione "Usar Hive metastore em "Opções avançadas" ao criar um novo pipeline (talvez seja necessário selecionar "Ver mais" para visualizar a opção). Você deve especificar um esquema de destino default ao publicar no Hive metastore. Consulte Configurar pipeline.
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 Spark Declarative são totalmente gerenciados pelo LakeFlow pipeline, a maior parte da interação com o conjunto de dados Spark LakeFlow Spark Declarative ocorre por meio de tabelas registradas no Hive metastore ou 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 do Google Cloud Storage, consulte Conectar-se ao Google Cloud Storage. Você pode adicionar a configuração account serviço ao criar ou editar um pipeline com a API de pipeline declarativa LakeFlow Spark ou na interface do usuário do pipeline declarativa do LakeFlow Spark :
- Ao editar um pipeline no LakeFlow Pipelines Editor, clique em
Configurações .
- Clique no botão JSON .
- Insira a configuração account serviço no campo
gcp_attributes.google_service_accountna configuração cluster :
{
"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:
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:
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 implantar o pipeline declarativo LakeFlow Spark . Ao configurar um pipeline com a opção de armazenamento Hive metastore , importe o Notebook na linguagem escolhida e especifique o caminho no campo Código-fonte . Consulte Configurar pipeline.