O que são vistas materializadas do lago em Microsoft Fabric?

Em Microsoft Fabric, uma exibição materializada do lago persiste e é atualizada automaticamente. Defina-o no Spark SQL ou PySpark. Ela simplifica transformações em múltiplos estágios de casas de lago – tipicamente a arquitetura medalhão de bronze para prata e depois de ouro – expressando-as como declarações declarativas em vez de trabalhos personalizados do Spark. Depois que você materializa um MLV, ele funciona como uma tabela padrão de lakehouse em termos de armazenamento, padrões de acesso e segurança. Você pode consultá-lo por meio de qualquer mecanismo de Fabric com as mesmas permissões e modelo de governança. O Fabric rastreia as dependências entre MLVs, orquestra as atualizações na ordem correta e aplica restrições de qualidade dos dados em cada etapa. Esse recurso permite que os engenheiros de dados criem pipelines confiáveis e mantenedíveis com menos código e sobrecarga operacional.

Quando usar vistas materializadas do lago

As vistas materializadas do lago são uma boa opção quando você tem:

  • Agregações acessadas com frequência (totais diários de vendas, métricas mensais) em que os resultados pré-compilados melhoram o desempenho em vez de executar consultas caras repetidamente
  • Junções complexas entre várias tabelas grandes que você consulta com frequência e para as quais precisa de resultados consistentes para todos os consumidores
  • Transformações de qualidade de dados que você precisa aplicar uniformemente, com regras definidas declarativamente e não em código personalizado
  • Conjuntos de dados para relatórios que combinam dados de várias fontes e se beneficiam de atualização automática quando os dados de origem são alterados
  • Arquitetura de medalhão em que você precisa de transformações de ouro → prata → bronze definidas no SQL

Vistas materializadas do lago não são a escolha certa para todos os cenários. Considere alternativas quando tiver:

  • Consultas com acesso único ou raramente que não se beneficiam de resultados pré-compilados
  • Lógica que não usa SQL, como inferência de ML, chamadas de API ou processamento complexo em Python — use notebooks do Spark
  • Dados de streaming de alta frequência que exigem atualizações em menos de um segundo — considere Real-Time Intelligence em vez disso

Comece com vistas materializadas do lago

Para criar uma vista materializada do lago em Fabric, veja Comece com vistas materializadas do lago. Para obter um passo a passo completo que cria uma arquitetura de medalhão, consulte Tutorial: Criar uma arquitetura de medalhão com vista materializada para o lago.

Como funcionam as vistas materializadas do lago?

As exibições de lago materializadas usam uma abordagem declarativa: você escreve uma consulta SQL para definir a transformação e Fabric manipula a execução, o armazenamento e a atualização. O resultado persiste como uma tabela Delta em sua lakehouse, para que os consumidores downstream possam consultá-la diretamente sem executar a transformação novamente.

O ciclo de vida de uma vista materializada do lago segue quatro estágios:

  • Criar: escreva uma consulta SQL que defina sua transformação. Fabric armazena a definição e materializa os resultados como uma tabela Delta.
  • Atualização: quando os dados de origem são alterados, Fabric determina a estratégia de atualização ideal – incremental (processar apenas dados novos ou alterados), completo (recompilar inteiramente) ou ignorar (nenhuma alteração detectada).
  • Consulta: Aplicativos e relatórios consultam a exibição do lago materializada como qualquer outra tabela Delta, sem reconhecimento da lógica de transformação subjacente.
  • Monitor: acompanhe o histórico de atualização, o status de execução, as métricas de qualidade de dados e a linhagem de dependência por meio de ferramentas internas de Fabric.

Opções de autoria

As visualizações de lago materializadas dão suporte a duas abordagens de autoria:

  • Criação de SQL: defina exibições usando instruções SQL CREATE MATERIALIZED LAKE VIEW padrão diretamente no editor do Fabric lakehouse.

  • Criação do PySpark (versão prévia): criar, atualizar e substituir exibições de blocos de anotações Fabric usando DataFrameWriter. Suporte a visualizações criadas pelo PySpark

    • Restrições de qualidade de dados
    • Propriedades da tabela
    • Atualizações agendadas

    Observação

    As visões criadas pelo PySpark executam atualização completa apenas atualmente.

Principais capacidades

Visualizações materializadas do lago de dados incluem recursos embutidos que gerenciam a complexidade operacional que você gerenciaria em notebooks e pipelines.

Otimização automática de atualização

O Fabric determina automaticamente quando e como atualizar suas exibições materializadas do lago. Um mecanismo de decisão seleciona a estratégia de atualização mais eficiente e detecta alterações de dados de origem por padrão por meio do Feed de Dados de Alteração:

  • Atualização incremental: processa apenas dados novos ou alterados.
  • Atualização completa: recompila toda a vista materializada do lago quando necessário.
  • Ignorar atualização: Fabric ignora a atualização quando os dados de origem não contêm alterações.

Para habilitar a atualização incremental, você deve habilitar o feed de dados de alteração (CDF) do Delta nas tabelas de origem referenciadas pela visão materializada do lake. Sem o CDF habilitado, o mecanismo de decisão escolhe apenas entre ignorar a atualização e a atualização completa. Para obter mais informações, consulte a atualização ideal para vistas materializadas do lago em uma casa de lago.

A atualização ideal suporta uma variedade de consultas comuns, incluindo:

  • Agregações com GROUP BY
  • Junções externas e semi-esquerdas
  • Expressões de tabela comuns (CTEs)

Qualidade de dados interna

Visões materializadas de lago dão suporte a regras declarativas de qualidade de dados. Defina restrições diretamente em seu SQL e especifique como lidar com violações.

CONSTRAINT valid_sales CHECK (sales_amount > 0) ON MISMATCH DROP

Gerenciamento de dependências

Quando as vistas materializadas de lago fazem referência a outras vistas ou tabelas materializadas do lago, o Fabric detecta automaticamente essas relações e gerencia a ordem de execução para você.

  • Visualize como suas vistas materializadas do lago dependem umas das outras, através das casas do lago.
  • A ordem é atualizada automaticamente com base nas dependências.
  • O processamento segue a cadeia de dependências para garantir a consistência dos dados.

Monitoramento e insights

Fabric fornece ferramentas internas para acompanhar a integridade e o desempenho de suas vistas materializadas do lago:

  • Acompanhe o desempenho de atualização e o status de execução para cada exibição de lago materializada.
  • Exiba as métricas de qualidade dos dados e as contagens de violação na linhagem.
  • Monitore as instâncias de tarefas e o histórico de atualização na visualização Execuções recentes.

Além do hub Monitor execução por execução, o Fabric agora exibe a integridade operacional de cada lakehouse na própria página Execuções recentes, por meio de subabas adjacentes para Análises e Insights:

Subtarefa Responde à pergunta Página de aprendizado
Execuções recentes Quais execuções individuais ocorreram, e posso cancelá-las ou ver detalhes? Execuções recentes de vistas materializadas do lago
Analytics Qual é a tendência da minha taxa de sucesso, duração, principais erros e combinação de políticas de atualização, em gráficos ao longo das mesmas execuções? Exibir análise para execuções de exibição de lago materializada
Insights O que está falhando ou apresentando regressão, com links diretos com um clique para a visualização com falha? Exibir insights para execuções materializadas do modo de exibição do lago

Para acesso programático aos mesmos dados, o Fabric grava tabelas do sistema no esquema _mlv_systemsys_run_metrics, sys_node_metrics e sys_error_metrics — no lakehouse.

Importante

Não altere o _mlv_system esquema. As alterações afetam as atualizações às abas Analytics e Insights.

Segurança

As exibições materializadas do lake no Fabric seguem as medidas de segurança e governança aplicadas às tabelas do Lakehouse. Você também pode usar MLVs em lakehouses habilitados para o Link Privado. Para obter mais informações sobre Link Privado no Fabric, consulte Segurança.