Compartir a través de


¿Qué son las vistas de lago materializadas en Microsoft Fabric?

Nota:

Esta característica está actualmente en versión preliminar.

Las vistas de lago materializadas se precomputan, los resultados almacenados de las consultas SQL que se pueden actualizar a petición o según una programación. Piense en ellas como "tablas inteligentes" que contienen los resultados de transformaciones complejas, agregaciones o combinaciones, con estrategias de actualización inteligentes para mantener los datos actualizados.

¿Por qué usar vistas materializadas al lago?

Las vistas materializadas del lago resuelven los desafíos comunes de ingeniería de datos:

  • Rendimiento: en lugar de ejecutar consultas costosas repetidamente, los resultados se precomputan y almacenan.
  • Coherencia: todos los usuarios acceden a los mismos datos transformados, lo que reduce las discrepancias.
  • Eficiencia: solo se actualiza cuando los datos de origen cambian realmente, lo que guarda los recursos de proceso.
  • Simplicidad: definir transformaciones una vez mediante una sintaxis SQL conocida

¿Cuándo debe usar vistas materializadas al lago?

Considere la posibilidad de materializar vistas al lago cuando tenga:

  • Agregaciones a las que se accede con frecuencia (totales de ventas diarias, métricas mensuales)
  • Combinaciones complejas en varias tablas grandes que se consultan a menudo
  • Transformaciones de calidad de datos que deben aplicarse de forma coherente
  • Conjuntos de datos de informe que integran datos de múltiples fuentes
  • Arquitectura de Medallion en la que necesita transformaciones de bronce → plata → oro

No los use para:

  • Consultas a las que se accede de una sola vez o rara vez
  • Transformaciones simples que se ejecutan rápidamente
  • Datos de streaming de alta frecuencia (considere Real-Time Intelligence para actualizaciones en subsegundos)

¿Cómo funcionan las vistas al lago materializadas?

Las vistas de lago materializadas usan un enfoque declarativo: se define LO que desea, no cómo construirlo.

  1. Crear: Escribir SQL que define la transformación
  2. Actualización: Fabric determina la estrategia de actualización óptima (incremental, completa o omite)
  3. Consulta: las aplicaciones consultan la vista materializada como cualquier tabla
  4. Supervisión: seguimiento de la calidad de los datos, el linaje y el estado de actualización

Funcionalidades clave

Optimización de refresco automático

Fabric determina automáticamente cuándo y cómo actualizar las vistas:

  • Actualización incremental: solo procesa datos nuevos o modificados.
  • Actualización completa: recrea toda la vista cuando sea necesario.
  • Omitir actualización: no es necesario actualizar cuando los datos de origen no han cambiado

Calidad de datos integrada

Defina reglas directamente en SQL y especifique cómo controlar las infracciones:

CONSTRAINT valid_sales CHECK (sales_amount > 0) ON MISMATCH DROP

Administración de dependencias

  • Visualiza cómo tus vistas dependen unas de otras
  • Ordenación automática de la actualización basada en dependencias
  • El procesamiento sigue la cadena de dependencias para garantizar la coherencia de los datos

Supervisión e información

  • Seguimiento del rendimiento y el estado de ejecución de la actualización
  • Visualización de métricas de calidad de datos y recuentos de infracciones en el linaje
  • Monitoreo de instancias de trabajo y historial de actualizaciones

Casos de uso comunes

Panel de informes de ventas

-- 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;

Validación de calidad de datos

-- 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;

Arquitectura de Medallion

-- 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;

Nota:

Esta característica no está disponible actualmente en la región Centro-sur de EE. UU.

Limitaciones actuales

Actualmente, las siguientes características no están disponibles para las vistas materializadas del lago en Microsoft Fabric:

  • Compatibilidad con la sintaxis declarativa para PySpark. Puede usar la sintaxis de Spark SQL para crear y actualizar vistas materializadas del lago.
  • Características de ejecución y linaje de cross-lakehouse.