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
Você usa 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 Spark ao criar ou editar um pipeline:
- Ao editar um pipeline no LakeFlow Pipelines Editor, clique no botão Configurações .
- 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 :
{
"clusters": [
{
"aws_attributes": {
"instance_profile_arn": "arn:aws:..."
}
}
]
}
Você também pode configurar o perfil da instância ao criar a política de cluster para seu pipeline LakeFlow Spark Declarative. 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:
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.