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

As visualizações de lago materializadas transformam transformações complexas do arquitetura lakehouse em ativos ágeis, prontos para consulta e reutilizáveis que aceleram a análise e reduzem o uso de recursos computacionais. Os resultados são persistentes como arquivos Delta no OneLake e atualizados automaticamente por meio de agendas ou gatilhos de evento, fornecendo dados confiáveis e atualizados. As principais vantagens incluem pipelines declarativos para implantações previsíveis, atualização otimizada para desempenho e custo, qualidade de dados embutida e monitoramento intuitivo para visibilidade e confiança.

Quando usar vistas materializadas do lago

Quando você já possui um lakehouse e executa notebooks Spark para transformar dados em tabelas Delta, e depois agenda esses notebooks por meio de pipelines, as visões materializadas de lake podem simplificar esse fluxo de trabalho. Em vez de gerenciar a lógica de atualização, a ordem de execução e o agendamento por conta própria, você define transformações de SQL e permite que Fabric lidar com o restante.

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 em múltiplas tabelas grandes que são consultadas com frequência e precisam de resultados consistentes para todos os clientes
  • Transformações de qualidade de dados que precisam ser aplicadas 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
  • Transformações simples que já são executadas rapidamente sem otimização
  • lógica Non-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 de sub-segundo – considere Real-Time Intelligence em vez disso

Observação

No momento, esse recurso não está disponível na região Centro-Sul dos EUA.

Comece com vistas materializadas do lago

Para criar sua primeira vista materializada de lago em Microsoft Fabric, consulte Introdução a vistas materializadas de 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 que define a transformação desejada e Fabric manipula a execução, o armazenamento e a atualização. O resultado é mantido como uma tabela Delta em sua lakehouse, para que os consumidores downstream possam consultá-lo diretamente sem executar novamente a transformação.

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.
  • Refresh: 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 visualizações usando instruções SQL padrão CREATE MATERIALIZED LAKE VIEW diretamente no editor do Fabric Lakehouse.

  • Criação do PySpark (versão prévia): crie, atualize e substitua exibições de blocos de anotações do 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 as alterações de dados de origem são detectadas 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: nenhuma atualização necessária quando os dados de origem não forem alterados

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ê.

  • Visualizar como suas vistas materializadas do lago dependem umas das outras
  • Atualização automática por ordem de 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:

  • Acompanhar o desempenho de atualização e o status de execução para cada exibição de lago materializada
  • Exibir métricas de qualidade de dados e contagens de violação na linhagem
  • Monitorar instâncias de trabalho e histórico de atualização

Casos de uso comuns

Os exemplos a seguir mostram como as views materializadas do lake simplificam tarefas comuns de engenharia de dados que, de outra forma, exigiriam código de notebook e orquestração de pipeline.

Painel de relatórios de vendas

Agregar dados de pedido em um resumo diário por região. Em vez de agendar um notebook de computação para recompilar essa tabela, a vista materializada do lago é atualizada automaticamente quando a tabela de origem orders é alterada.

-- 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 de qualidade de dados

Limpe e normalize os registros do cliente ao impor regras de qualidade de dados. A ON MISMATCH DROP cláusula na restrição descarta automaticamente as linhas em que o email é nulo, portanto, os consumidores downstream 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 de medalhão

Transforme dados de bronze brutos em uma camada de prata selecionada por tipos de conversão, filtrando registros inválidos e selecionando colunas relevantes. Vistas materializadas do lago lidam com a ordenação de dependência automaticamente, para que você possa encadear vistas de bronze → prata → ouro sem gerenciar 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

Você pode usar links privados para se conectar a exibições materializadas do lago (versão prévia). Leia mais em Segurança.

Limitações atuais

No momento, o recurso a seguir não está disponível para exibições materializadas do lago em Microsoft Fabric:

  • Recursos de execução e linhagem cross-lakehouse.