Un Lakehouse es la unión de un Data Lake (donde guardas archivos como CSV o JSON) y un Data Warehouse (donde consultas tablas con SQL). Aquí tienes un ejemplo paso a paso de un escenario de ventas.

1. El Escenario

Imagina que eres un analista de datos para una cadena de tiendas. Tienes:

  • Archivos Crudos: Un archivo Ventas_2024.csv que llega cada noche desde las cajas registradoras.
  • Objetivo: Limpiar esos datos y convertirlos en una tabla «Gold» (lista para reportes) que Power BI pueda leer instantáneamente.

2. Paso 1: Ingesta (Carga de archivos)

En la interfaz de Fabric, entras a tu Lakehouse y verás dos carpetas principales:

  • Files (Archivos): Aquí subes el CSV original. Es tu zona de aterrizaje (Landing Zone).
  • Tables (Tablas): Aquí es donde Fabric transformará ese CSV en formato Delta Parquet (un formato súper rápido y comprimido).

3. Paso 2: Transformación con Notebooks (Spark)

Para procesar los datos, usamos un Notebook. Aquí un ejemplo de código (PySpark) que podrías usar dentro de Fabric para limpiar los datos:

# 1. Leer el archivo CSV desde la carpeta 'Files'
df = spark.read.format("csv").option("header", "true").load("Files/Ventas_2024.csv")

# 2. Transformaciones básicas (Limpieza)
# Convertimos la columna 'Precio' a número y eliminamos nulos
df_clean = df.withColumn("Precio", df["Precio"].cast("double")).dropna()

# 3. Guardar como Tabla en el Lakehouse
df_clean.write.mode("overwrite").format("delta").saveAsTable("Ventas_Limpias")

4. Paso 3: La Magia del «SQL Analytics Endpoint»

Una vez que ejecutas el código anterior, la tabla Ventas_Limpias aparece automáticamente en la sección de Tables.

Lo increíble de Fabric es que, aunque sea un Lakehouse basado en archivos, puedes cambiar la vista a SQL endpoint y escribir consultas tradicionales:

SELECT Tienda, SUM(Precio) as Total_Ventas
FROM Ventas_Limpias
GROUP BY Tienda
ORDER BY Total_Ventas DESC;

5. Paso 4: Visualización con DirectLake

El último paso es conectar Power BI.

  • En el Lakehouse, haces clic en «New Report».
  • Fabric usa DirectLake: Power BI lee los archivos Delta directamente desde OneLake.
  • Resultado: No hay que programar «actualizaciones de datos» (Refresh). Si los datos en el Lakehouse cambian, el reporte se actualiza casi al instante.

Resumen de la Arquitectura del Ejemplo

  1. OneLake (Files): Almacena el CSV original.
  2. Fabric Notebook: Procesa el CSV con Python/Spark.
  3. OneLake (Tables): Guarda el resultado en formato Delta.
  4. Power BI: Visualiza la tabla sin importar los datos (Zero ETL).

5. Paso 4: Creación del Cuadro de Mando en Power BI

Ahora que los datos están listos en OneLake, vamos a crear el reporte visual:

Conectividad DirectLake

A diferencia del método tradicional donde importas datos, aquí usaremos DirectLake. Esto permite que Power BI analice millones de filas directamente desde el almacenamiento del Lakehouse con el rendimiento de una base de datos en memoria.

Pasos para el Cuadro de Mando:

  1. Crear el Modelo Semántico: En la vista del Lakehouse, selecciona las tablas limpias y haz clic en «New Semantic Model».
  2. Diseñar el Reporte: Haz clic en «New Report» para abrir el lienzo de Power BI en la web.
  3. Visualizaciones recomendadas para Ventas:
    • KPI Card: Muestra el «Total de Ventas Brutas».
    • Gráfico de Barras: «Ventas por Categoría de Producto».
    • Gráfico de Líneas: «Evolución de Ventas Semanal» (ideal para detectar tendencias).
    • Mapa: «Distribución Geográfica» si tienes datos de ubicación de tiendas.
  4. Filtros (Slicers): Añade segmentadores de «Fecha» y «Región» para que los usuarios interactúen con los datos.

6. Resultado Final

  • Actualización en Tiempo Real: Si el proceso de Spark (Paso 2) vuelve a ejecutarse con nuevos datos, el gráfico de Power BI reflejará los cambios automáticamente.
  • Sin Refresh: Te olvidas de programar actualizaciones de datasets; la conexión es directa a los archivos Delta.

Resumen de la Arquitectura del Ejemplo

  1. OneLake (Files): Almacena el CSV original.
  2. Fabric Notebook: Procesa el CSV con Python/Spark.
  3. OneLake (Tables): Guarda el resultado en formato Delta.
  4. Power BI: Visualiza la tabla sin importar los datos (Zero ETL).