O que são vistas materializadas para o lago no Microsoft Fabric?

As vistas materializadas do lago transformam transformações complexas de casas de lago em ativos rápidos, reutilizáveis e prontos para consultas, que aceleram análises e reduzem o uso de computação. Os resultados são mantidos como ficheiros Delta no OneLake e atualizados automaticamente através de agendas ou gatilhos de eventos, fornecendo dados fiáveis e atualizados. As principais vantagens incluem pipelines declarativos para implementações previsíveis, atualização ótima para desempenho e custo, qualidade dos dados incorporada e monitorização intuitiva para maior visibilidade e confiança.

Quando usar vistas materializadas para o lago

Quando já tem uma casa de lago e executa cadernos Spark para transformar dados em tabelas Delta — e depois agendar esses cadernos através de pipelines — as vistas materializadas do lago podem simplificar esse fluxo. Em vez de gerir tu próprio a lógica de atualização, a ordem de execução e o agendamento, defines as transformações SQL e deixas o Fabric tratar do resto.

Vistas materializadas para o lago são uma boa opção quando tem:

  • Agregações frequentemente acedidas (totais diários de vendas, métricas mensais) onde os resultados pré-computados melhoram o desempenho em relação à execução repetida de consultas dispendiosas
  • Junções complexas em várias tabelas grandes que são frequentemente consultadas e que necessitam de resultados consistentes para todos os consumidores
  • Transformações de qualidade dos dados que precisam de ser aplicadas de forma uniforme, com regras definidas de forma declarativa em vez de em código personalizado
  • Conjuntos de dados de reporte que combinam dados de múltiplas fontes e beneficiam de atualização automática quando os dados de origem mudam
  • Arquitetura Medallion, onde são necessárias transformações de bronze → prata → ouro definidas em SQL

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

  • Consultas únicas ou raramente acedidas que não beneficiam de resultados pré-computados
  • Transformações simples que já correm rapidamente sem otimização
  • Lógica Non-SQL como inferência de ML, chamadas de API ou processamento complexo de Python — utilize cadernos Spark em vez disso
  • Dados de streaming de alta frequência que requerem atualizações em menos de um segundo — considere Inteligência em Tempo Real em vez disso

Observação

Este recurso não está atualmente disponível na região Centro-Sul dos EUA.

Comece com vistas materializadas do lago

Para criar a sua primeira vista de lago materializada em Microsoft Fabric, veja Comece com vistas de lago materializadas. Para um percurso completo que constrói uma arquitetura de medalhões, veja o Tutorial: Construa uma arquitetura de medalhões com vistas materializadas para o lago.

Como funcionam as vistas materializadas do lago?

As visualizações de lago materializadas usam uma abordagem declarativa: escreve uma consulta SQL que define a transformação que pretende, e o Fabric trata da execução, armazenamento e atualização. O resultado é mantido como uma tabela Delta na sua casa do lago, para que os consumidores a jusante possam consultá-la diretamente sem ter de repetir a transformação.

O ciclo de vida de uma vista de lago materializada segue quatro etapas:

  • Criar: Escreva uma consulta SQL que defina a sua transformação. O Fabric armazena a definição e materializa os resultados como uma tabela Delta.
  • Refresh: Quando os dados de origem mudam, Fabric determina a estratégia ótima de atualização — incremental (processar apenas dados novos ou alterados), total (reconstruir completamente) ou skip (sem alterações detetadas).
  • Consulta: As aplicações e relatórios consultam a vista materializada do lago como qualquer outra tabela Delta, sem ter noção da lógica de transformação subjacente.
  • Monitor: Acompanhe o histórico de atualizações, estado de execução, métricas de qualidade dos dados e linhagem de dependências através de ferramentas de Fabric integradas.

Opções de autoria

As vistas materializadas do lago suportam duas abordagens de autoria:

  • Autoria SQL: Defina vistas usando instruções padrão SQL CREATE MATERIALIZED LAKE VIEW diretamente no editor do Fabric Lakehouse.

  • Autoria PySpark (Pré-visualização): Criar, atualizar e substituir vistas a partir de cadernos Fabric usando DataFrameWriter. Opiniões autoradas pelo PySpark apoiam:

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

    Observação

    As vistas criadas pelo PySpark realizam apenas uma atualização completa atualmente.

Capacidades chave

As visualizações materializadas do data lake incluem funcionalidades integradas que lidam com a complexidade operacional que você mesmo geriria de outra forma em notebooks e pipelines.

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

O tecido determina automaticamente quando e como renovar as vistas materializadas para o lago. Um motor de decisão seleciona a estratégia de atualização mais eficiente, e as alterações nos dados de origem são detetadas por defeito através do Change Data Feed:

  • Atualização incremental: Processa apenas dados novos ou alterados
  • Atualização completa: Reconstrói toda a vista materializada do lago quando necessário
  • Saltar a atualização: Não é necessária atualização quando os dados de origem não mudaram

A atualização ótima suporta uma variedade de padrões comuns de consulta, incluindo:

  • Agregações com GROUP BY
  • Junções exteriores à esquerda e semi-junções
  • Expressões de tabelas comuns (CTEs)

Qualidade dos dados incorporada

As vistas materializadas de lagos suportam regras declarativas de qualidade de dados. Defina restrições diretamente no seu SQL e especifique como lidar com violações:

CONSTRAINT valid_sales CHECK (sales_amount > 0) ON MISMATCH DROP

Gestão de dependências

Quando as vistas de lago materializadas referenciam outras vistas ou tabelas materializadas, o Fabric deteta automaticamente essas relações e gere a ordem de execução por si.

  • Visualize como as suas vistas materializadas para o lago dependem uma da outra
  • Ordenação automática de atualização baseada em dependências
  • O processamento segue a cadeia de dependências para garantir a consistência dos dados

Monitorização e informações

A Fabric disponibiliza ferramentas integradas para acompanhar a saúde e o desempenho das suas vistas materializadas para o lago:

  • Acompanhar o desempenho da atualização e o estado da execução para cada vista do lago materializada
  • Veja métricas de qualidade dos dados e contagens de violações por linhagem
  • Monitorizar instâncias de trabalho e histórico de atualizações

Casos comuns de utilização

Os seguintes exemplos mostram como as visualizações materializadas de lago simplificam tarefas comuns de engenharia de dados que, de outra forma, exigiriam a escrita de código em notebooks e a orquestração de pipelines.

Painel de relatórios de vendas

Agrega os dados das encomendas num resumo diário por região. Em vez de agendar um caderno para reconstruir esta tabela, a visualização do lago materializada atualiza-se automaticamente quando a tabela de origem orders muda.

-- Daily sales summary that refreshes automatically
CREATE MATERIALIZED LAKE VIEW daily_sales AS
SELECT 
    DATE(order_date) as sale_date,
    region,
    SUM(amount) as total_sales,
    COUNT(*) as order_count
FROM orders 
GROUP BY DATE(order_date), region;

Validação da qualidade dos dados

Limpar e normalizar os registos dos clientes enquanto aplica as regras de qualidade dos dados. A ON MISMATCH DROP cláusula da restrição elimina automaticamente as linhas onde o email é nulo, por isso os consumidores a jusante só veem dados válidos.

-- Clean customer data with quality rules
CREATE MATERIALIZED LAKE VIEW clean_customers (
    CONSTRAINT valid_email CHECK (email IS NOT NULL) ON MISMATCH DROP
) AS
SELECT 
    customer_id,
    TRIM(customer_name) as customer_name,
    LOWER(email) as email
FROM raw_customers
WHERE customer_name IS NOT NULL;

Arquitetura do medalhão

Transforme dados brutos de bronze numa camada de prata tratada, definindo tipos, filtrando registos inválidos e selecionando colunas relevantes. As visualizações de lago materializadas tratam automaticamente a ordenação de dependências, por isso podes encadear visões bronze → prata → ouro sem gerir a sequência de execução.

-- Bronze → Silver transformation
CREATE MATERIALIZED LAKE VIEW silver_products AS
SELECT 
    product_id,
    product_name,
    category,
    CAST(price as DECIMAL(10,2)) as price
FROM bronze_products
WHERE price > 0;

Segurança

Pode usar links privados para se ligar a vistas materializadas do lago (pré-visualização). Leia mais em Segurança.

Limitações atuais

A seguinte funcionalidade atualmente não está disponível para vistas materializadas de lagos no Microsoft Fabric:

  • Linhagem cross-lakehouse e características de execução.