Comece com vistas materializadas do lago

Neste início rápido, cria tabelas de origem numa casa de lago no Microsoft Fabric, define vistas de lago materializadas para transformar dados brutos através de fases progressivas e configura agendas de atualização. No final, tens um pipeline bronze-to-gold totalmente funcional com orquestração consciente de dependências e rastreamento de linhagem.

Pré-requisitos

Crie a sua primeira vista materializada para o lago

  1. Vai ao portal do Fabric e navega até ao teu espaço de trabalho.

  2. Abra a sua casa do lago e selecione vistas materializadas para o lago.

    Captura de tela que mostra o item de menu para gerenciar vistas materializadas do lago.

  3. Selecionar Novo>Novo caderno>Criar com Spark SQL. Alternativamente, pode selecionar Abrir caderno a partir da tela principal.

    Captura de ecrã das opções para abrir um novo notebook para criar uma vista materializada do lago.

    Um novo caderno abre com um modelo para criar uma vista materializada do lago.

    Observação

    Se estiveres a usar uma mesa num armazém como fonte para uma vista materializada do lago, tens de criar um atalho de tabela na tua casa do lago.

  4. Crie as tabelas products de origem e orders. Introduza o seguinte comando SQL na célula do notebook existente e execute-o:

    CREATE SCHEMA IF NOT EXISTS bronze;
    
    CREATE TABLE IF NOT EXISTS bronze.products (
       product_id INT,
       product_name STRING,
       price DOUBLE
    );
    
    INSERT INTO bronze.products VALUES
    (101, 'Laptop', 1200.50),
    (102, 'Smartphone', 699.99),
    (103, 'Tablet', 450.00);
    
    CREATE TABLE IF NOT EXISTS bronze.orders (
       order_id INT,
       product_id INT,
       quantity INT,
       order_date DATE
       );
    
    INSERT INTO bronze.orders VALUES
       (1001, 101, 2, '2025-06-01'),
       (1002, 103, 1, '2025-06-02'),
       (1003, 102, 3, '2025-06-03');
    
  5. Atualize o explorador para visualizar as tabelas recém-criadas products e orders no esquema bronze. Selecione + Código para adicionar uma nova célula abaixo da existente.

    Captura de ecrã que mostra tabelas de origem criadas numa Lakehouse.

  6. Ative o fluxo de dados de alteração (CDF) nas tabelas de origem para que a atualização ótima possa usar processamento incremental. Copie o seguinte comando SQL para a nova célula e execute-o:

    ALTER TABLE bronze.products SET TBLPROPERTIES (delta.enableChangeDataFeed = true);
    ALTER TABLE bronze.orders SET TBLPROPERTIES (delta.enableChangeDataFeed = true);
    

    Selecionar + Código para adicionar outra célula nova.

  7. Crie vistas materializadas do lago a partir das tabelas de origem. Copie o seguinte comando SQL para a nova célula e execute-o:

    CREATE SCHEMA IF NOT EXISTS silver;
    
    CREATE MATERIALIZED LAKE VIEW IF NOT EXISTS silver.cleaned_order_data AS
    SELECT 
       o.order_id,
       o.order_date,
       o.product_id,
       p.product_name,
       o.quantity,
       p.price,
       o.quantity * p.price AS revenue
    FROM bronze.orders o
    JOIN bronze.products p
    ON o.product_id = p.product_id;
    
    CREATE SCHEMA IF NOT EXISTS GOLD;
    
    CREATE MATERIALIZED LAKE VIEW IF NOT EXISTS gold.product_sales_summary AS
    SELECT
       product_id,
       product_name,
       SUM(quantity) AS total_quantity_sold,
       SUM(revenue) AS total_revenue,
       ROUND(AVG(revenue), 2) AS average_order_value
    FROM
       silver.cleaned_order_data
    GROUP BY
       product_id,
       product_name;
    
  8. Atualize o explorador do Lakehouse para ver as visualizações materializadas recém-criadas cleaned_order_data e product_sales_summary sob os esquemas silver e gold, respetivamente.

    Captura de ecrã que mostra vistas materializadas do lago criadas numa casa do lago.

  9. Pode verificar ainda mais os resultados consultando a vista do lago materializada em ouro. Copie o seguinte comando SQL para uma nova célula e execute-o:

    SELECT * FROM gold.product_sales_summary;
    

    A saída mostra três linhas — uma para cada produto — com a quantidade total vendida, receita total e valor médio da encomenda calculados a partir dos dados das encomendas de origem.

  10. Fecha o caderno e volta para a tua Casa do Lago. Selecione Vistas materializadas do lago e selecione Gerir. Pode ser necessário selecionar o ícone de atualização para ver a linhagem gerada automaticamente.

    Captura de ecrã que mostra a linhagem.

  11. Programe a execução da linhagem. Selecione Gerir horários na fita. No painel Gerenciar horários , selecione o botão Novo horário para criar um horário. Liga o botão de rádio para atualizar horários em estado Ligado .

    Captura de tela do painel para agendamento de linhagem.

  12. Selecione as vistas materializadas a atualizar, escolha o tipo de atualização desejado, configure as definições para a atualização e guarde-a.

    Captura de ecrã do painel para agendar a linhagem com mais opções.

  13. Aceda à página Execuções recentes para ver o progresso da execução da linhagem de dados.

    Captura de ecrã que mostra a execução recente.

  14. Selecione uma corrida contínua para monitorizar o seu progresso.

    Captura de tela que mostra o progresso de uma execução em andamento.

  15. Assim que a run está concluída, o estado da linhagem é atualizado.

    Captura de ecrã que mostra uma execução de linhagem concluída.

O que acontece a seguir

Agora que tem uma atualização agendada da linhagem, o Fabric mantém automaticamente as suas vistas de lagos materializadas atualizadas à medida que os dados de origem mudam. Quando novas linhas são inseridas nas tabelas bronze.orders ou bronze.products, a próxima execução agendada deteta as alterações, atualiza primeiro a vista silver.cleaned_order_data (porque a vista gold depende dela) e depois atualiza gold.product_sales_summary com os totais atualizados. Não precisas de gerir a ordem de atualização ou de escrever lógica de orquestração — o Fabric trata disso com base no gráfico de linhagem.

Para saber mais sobre o comportamento de atualização e como o Fabric determina a estratégia ótima (incremental, completo ou omissão), consulte Atualização Ótima para vistas materializadas de lagos numa Lakehouse. Para um percurso completo de ponta a ponta que demonstra estes conceitos com um conjunto de dados maior, veja Tutorial: Implementar arquitetura medallion com vistas materializadas do lago.