Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Este artigo descreve como monitorar e consultar dados de atualização sobre uma exibição materializada no Databricks SQL.
Veja os detalhes de uma única vista materializada
Você pode exibir os detalhes de uma única exibição materializada usando o Gerenciador de Catálogos, ou programaticamente, com a DESCRIBE EXTENDED operação. Você também pode consultar o log de eventos para obter detalhes do histórico de atualização de uma visão materializada.
Ver detalhes no Catalog Explorer
Você pode acessar informações sobre sua exibição materializada visualizando-a no Gerenciador de Catálogos. No Gerenciador de Catálogos, você pode ver o último status de atualização e quaisquer agendas de atualização criadas no SQL. Para obter detalhes sobre agendas criadas em SQL, consulte CREATE MATERIALIZED VIEW.
O Catalog Explorer mostra detalhes para cada vista materializada num painel à direita, incluindo:
- Status de atualização atual e tempo de última execução. Para ver mais detalhes sobre a atualização, incluindo a duração da execução, quaisquer erros detalhados, bem como o tipo de atualização (incluindo se a exibição materializada foi total ou incrementalmente atualizada e por quê), clique em Ver detalhes da atualização.
- Atualizar agenda. Se a exibição materializada tiver uma agenda definida via SQL, a agenda será mostrada. Para atualizar a agenda, use ALTER MATERIALIZED VIEW.
- Etiquetas. Para adicionar etiquetas personalizadas, clique em Adicionar etiquetas. As tags não são usadas automaticamente para atribuir custos, mas você pode criar manualmente uma consulta para conectar tags personalizadas aos seus custos. Para obter detalhes, consulte Atribuir custos ao SQL warehouse com tags personalizadas.
Há propriedades do modo de exibição materializado que não estão disponíveis no Gerenciador de Catálogos. Para essas propriedades, ou para obter as informações programaticamente, você pode usar o DESCRIBE EXTENDED comando.
Ver detalhes com DESCRIBE EXTENDED
Você pode visualizar detalhes sobre uma vista materializada programaticamente usando o comando DESCRIBE EXTENDED. Isso inclui detalhes além do que você obtém do Gerenciador de Catálogos. Entre eles contam-se:
O status da última atualização concluída.
O cronograma de atualização.
As colunas da vista materializada.
O tipo de atualização da vista materializada (não disponível no Explorador de Catálogos).
O tamanho dos dados para a exibição materializada, em bytes totais (não disponível no Explorador de Catálogo).
O local de armazenamento da exibição materializada (não disponível no Gerenciador de Catálogos).
Algumas informações só são incluídas no resultado quando ativadas:
- Agrupamento de colunas, se habilitado.
- Se os vetores de exclusão estão habilitados (mostrados apenas quando
true). - Se o rastreamento de linhas está habilitado (mostrado apenas quando
true).
-- As table:
DESCRIBE TABLE EXTENDED sales;
-- As a single JSON object:
DESCRIBE TABLE EXTENDED sales AS JSON;
Consultando o log de eventos programaticamente
Para obter detalhes sobre o histórico de atualizações de uma vista materializada, ou detalhes enquanto uma atualização está a acontecer, pode consultar o log de eventos de forma programática.
Como proprietário do pipeline, você pode criar uma exibição para permitir que outras pessoas consultem o log de eventos do pipeline. A consulta a seguir cria um modo de exibição que outras pessoas podem usar para consultar o log de eventos. Essa consulta usa a TABLE função value para consultar a tabela de log de eventos correta.
CREATE VIEW my_event_log_view AS
SELECT *
FROM event_log(TABLE(<catalog_name>.<schema_name>.<mv_name>));
Para consultar a exibição do log de eventos, use uma consulta como a seguinte.
SELECT *
FROM my_event_log_view
WHERE event_type = "update_progress"
ORDER BY timestamp desc;
Para consultar o log de eventos diretamente como proprietário do pipeline, não é necessário criar uma exibição. Você pode usar a função de valor TABLE e consultar os dados diretamente, como a consulta de exemplo a seguir.
SELECT *
FROM event_log(TABLE(<catalog_name>.<schema_name>.<mv_name>))
WHERE event_type = "update_progress"
ORDER BY timestamp desc;
Para obter uma lista completa de consultas de exemplo usando o log de eventos, consulte Exemplos de consulta básica.
Monitorizar processos de execução de visualizações materializadas
Você pode monitorizar as execuções de pipeline no seu espaço de trabalho, usando a página Trabalhos & Pipelines, a página Histórico de Consultas ou de forma programática consultando o log de eventos.
Exibir todas as execuções de exibição materializada na interface do usuário
Se você usar a página Jobs & Pipelines para monitorar o status de diferentes trabalhos de orquestração em seu espaço de trabalho, também poderá acompanhar todas as visualizações materializadas e tabelas de streaming criadas lá. Cada exibição materializada criada no Databricks SQL tem um pipeline que a suporta. Para ver todas as visualizações materializadas e tabelas de streaming às quais você tem acesso:
- Clique no
Botão Jobs & Pipelines no lado esquerdo do seu espaço de trabalho.
- Clique no botão Pipelines para filtrar sua exibição apenas para pipelines.
- Clique no botão Tipo de pipeline e selecione MV/ST para filtrar apenas pipelines criados pelo Databricks SQL.
- Clique no filtro Acessível por mim , para mostrar todos os pipelines aos quais você tem acesso.
Você poderá ver todas as visualizações materializadas e tabelas de streaming criadas na sua organização, incluindo uma visão geral dos status de execuções recentes. Clicar no nome de um pipeline abre a página de detalhes do monitoramento do pipeline para obter mais informações. Para saber mais sobre a página de detalhes do monitoramento de pipeline, consulte Solucionar problemas de uma atualização com falha.
Visualizar execuções através do histórico de consultas
Se você estiver mais familiarizado com a guia Histórico de Consultas , também poderá usá-la para exibir todas as execuções anteriores de todas as consultas em que você tem pelo menos CAN VIEW acesso ao SQL warehouse em execução. Você pode usar a página de histórico de consultas para acessar detalhes de consulta e perfis de consulta que podem ajudá-lo a identificar consultas de baixo desempenho e gargalos no pipeline usado para executar as atualizações da tabela de streaming. Para obter uma visão geral do tipo de informações disponíveis para históricos de consultas e perfis de consulta, consulte Histórico de consultas e Perfil de consulta.
Importante
Este recurso está no Public Preview. Os administradores do espaço de trabalho podem controlar o acesso a esse recurso na página Visualizações . Consulte Gerenciar visualizações do Azure Databricks.
Todas as instruções relacionadas a visões materializadas aparecem no histórico de consultas. Você pode usar o Instrução filtro suspenso para selecionar qualquer comando e inspecionar as consultas relacionadas. Todas as CREATE declarações são seguidas por uma REFRESH declaração que é executada de forma assíncrona num pipeline. As REFRESH instruções geralmente incluem planos de consulta detalhados que fornecem informações sobre a otimização do desempenho.
Para aceder a declarações REFRESH na interface do utilizador do histórico de consultas, siga os seguintes passos:
- Clique no
Histórico de consultas na barra lateral esquerda.
- Selecione a caixa de seleção REFRESH no filtro de lista suspensa Statement.
- Clique no nome da instrução de consulta para exibir detalhes de resumo, como a duração da consulta e métricas agregadas.
- Clique em Ver perfil de consulta para abrir o perfil de consulta. Para obter detalhes sobre como navegar no perfil de consulta, consulte Perfil de consulta.
- Opcionalmente, use os links na seção Fonte da Consulta para abrir a consulta ou o pipeline relacionado.
Consulte CREATE MATERIALIZED VIEW.
Solucionar problemas de uma atualização com falha
Você pode encontrar atualizações com falha para vistas materializadas (ou tabelas de streaming) consultando a lista Jobs & Pipelines. Para resolver problemas de uma atualização com falha, use a página de detalhes de monitorização de pipeline ou o registo de eventos.
Para solucionar problemas de uma atualização que está completa quando você acredita que ela deve ser incremental, primeiro verifique se você tem o rastreamento de linhas habilitado para qualquer tabela Delta de origem. Para obter outros detalhes sobre atualização incremental, consulte Suporte para atualização incremental de exibição materializada.
Você pode obter detalhes adicionais na página de monitorização de pipeline ou consultando o registo de eventos de forma programática.
Usando a página de monitoramento de pipeline
Para obter mais detalhes sobre uma exibição materializada (ou tabela de streaming) que falhou, você pode usar a página de monitoramento de pipeline para depurar problemas. Cada visão materializada tem um pipeline que a apoia. A página de monitorização do pipeline inclui informações, tais como:
- O status da última execução e o histórico de execução.
- A duração da última execução.
- Se a visão materializada foi atualizada totalmente ou incrementalmente. Para obter mais detalhes sobre como atualizar incrementalmente a vista materializada, consulte Suporte para atualização incremental da vista materializada.
- O registo de eventos para uma depuração mais em detalhe. Caso sua exibição materializada não tenha sido atualizada ou tenha outros problemas, clique no painel de problemas para exibir os logs com mais detalhes.
Para solucionar problemas de sua exibição materializada:
- No espaço de trabalho, clique no
Botão Jobs & Pipelines na barra de navegação esquerda.
- Clique no nome do seu pipeline na lista.
- Se a atualização não for executada, a interface do usuário mostrará um erro (ou uma lista de erros) no painel inferior.
- Clique no botão para Exibir logs ou clique no painel de problemas para visualizar os erros com mais detalhes.
- Isso abre a interface de log de eventos. Cada erro tem uma mensagem de alto nível e um resumo, bem como uma guia JSON com mais detalhes. Para corrigir um problema com o Assistente Databricks, clique em Diagnosticar Erro.
Para obter mais detalhes na página de monitoramento de gasodutos, veja aqui.
Consultar o histórico de atualizações para obter uma vista materializada
O log de eventos pode ser útil para configurar painéis para monitorar o status ou a duração da atualização no espaço de trabalho ou se você preferir o monitoramento programático em vez de usar a interface do usuário. As exibições materializadas criadas com o Databricks SQL não suportam salvar o log de eventos em um metastore, portanto, somente o proprietário da exibição materializada pode consultar o log de eventos diretamente.
Para verificar o estado das operações numa vista materializada, incluindo as atualizações atuais e passadas, consulte o log de eventos do REFRESH pipeline:
SELECT *
FROM event_log(TABLE(<fully-qualified-table-name>))
WHERE event_type = "update_progress"
ORDER BY timestamp desc;
Substitua <fully-qualified-table-name> pelo nome totalmente qualificado da exibição materializada, incluindo o catálogo e o esquema. Se tu não fores o proprietário do pipeline, talvez seja necessário primeiro que seja criada uma vista para consultar o log de eventos. Consulte Consultando o log de eventos programaticamente.
Consultar o tipo de atualização que ocorreu para um modo de exibição materializado
Algumas consultas podem ser atualizadas incrementalmente. Se uma atualização incremental não puder ser executada, uma atualização completa será executada.
Para ver o tipo de atualização para uma exibição materializada, consulte o log de eventos:
SELECT timestamp, message
FROM event_log(TABLE(my_catalog.my_schema.sales))
WHERE event_type = 'planning_information'
ORDER BY timestamp desc;
Saída de exemplo para este comando:
-
- carimbo de data/hora
- mensagem
-
2025-03-21T22:23:16.497+00:00Flow 'sales' has been planned in :re[LDP] to be executed as ROW_BASED.
Atribua custos ao SQL warehouse com tags personalizadas
As etiquetas não são automaticamente acrescentadas aos registos de faturação, mas pode associá-las manualmente às suas informações de faturação numa consulta.
Depois de adicionar tags a cada vista materializada (ou tabela de streaming) com o Explorador de Catálogo, pode monitorizar os custos das vistas materializadas juntando as tabelas do sistema table_tags e billing. Esta é uma consulta de exemplo para recuperar registros de faturamento para todas as exibições materializadas e tabelas de streaming criadas com Databricks SQL e acrescentar tags no nível da tabela:
SELECT
u.*,
tag_info.tags
FROM
system.billing.usage u
LEFT JOIN (
SELECT
t.catalog_name,
t.schema_name,
t.table_name,
collect_list(named_struct('tag_name', t.tag_name, 'tag_value', t.tag_value)) AS tags
FROM
main.information_schema.table_tags t
GROUP BY
t.catalog_name,
t.schema_name,
t.table_name
) tag_info
ON tag_info.catalog_name = u.usage_metadata.uc_table_catalog
AND tag_info.schema_name = u.usage_metadata.uc_table_schema
AND tag_info.table_name = u.usage_metadata.uc_table_name
WHERE usage_metadata.uc_table_name is not null;
Em vez disso, você pode usar essa mesma ideia para unir tags de coluna da column_tags tabela.