(+351) 21 24 10006  ·  info@bconcepts.pt
Carnaxide, Lisboa

Cómo usar PySpark en un Notebook de Microsoft Fabric

João Barros 15 de July de 2026 4 min de lectura

Microsoft Fabric reúne la ingeniería de datos, la ciencia de datos y Power BI en un mismo lugar, y el Notebook es la herramienta ideal para transformar datos con código. Saber usar PySpark en un Notebook de Microsoft Fabric te permite leer, transformar y guardar datos como tabla Delta en el Lakehouse de forma reproducible — y esta guía te muestra cómo hacerlo paso a paso, desde cero. PySpark es la API de Python para Apache Spark, el motor distribuido que Fabric usa para procesar datos a escala.

Requisitos previos

  • Un workspace de Microsoft Fabric asociado a una capacidad activa (sirve la prueba gratuita).
  • Un Lakehouse en el que tengas permiso de escritura (rol Contributor o superior).
  • Conocimientos básicos de Python — no necesitas experiencia previa con Spark.

Paso 1: Crear el Notebook

En tu workspace, selecciona + Nuevo elemento y elige Notebook. Como alternativa, abre tu Lakehouse y usa Abrir notebook > Nuevo notebook. El Notebook se abre con una celda vacía y usa PySpark como lenguaje predeterminado — justo lo que necesitamos.

No hay que configurar ningún clúster: Fabric proporciona un pool de Spark inicial que arranca en pocos segundos en cuanto ejecutas la primera celda.

Paso 2: Conectar el Lakehouse al Notebook

A la izquierda, en el Explorer, selecciona Agregar (o Agregar Lakehouse) y elige tu Lakehouse. Cuando quede como Lakehouse predeterminado, podrás usar rutas relativas como Files/ y Tables/ y escribir tablas directamente en él. Este paso es esencial: sin un Lakehouse conectado, el comando que guarda la tabla más adelante no sabe dónde escribir.

Paso 3: Leer datos con PySpark

Para que el ejemplo sea reproducible sin subir archivos, crearemos un pequeño DataFrame en memoria. Pega este código en la primera celda y ejecútalo con Shift+Enter:

from pyspark.sql import Row

sales = [
    Row(product="Keyboard", category="Accessories", quantity=3, price=25.0),
    Row(product="Monitor", category="Screens", quantity=1, price=180.0),
    Row(product="Mouse", category="Accessories", quantity=5, price=15.0),
    Row(product="Laptop", category="Computers", quantity=2, price=950.0),
]
df = spark.createDataFrame(sales)
display(df)

La función display() muestra el DataFrame como una tabla interactiva. Si en su lugar quieres leer un archivo que ya tengas en la sección Files del Lakehouse, el patrón es: spark.read.format("csv").option("header", "true").load("Files/ventas.csv").

Paso 4: Transformar los datos

Con el DataFrame cargado, añadiremos una columna calculada con el total por fila y nos quedaremos solo con las ventas por encima de 50. PySpark usa la función col() para referirse a las columnas:

from pyspark.sql.functions import col

df_total = df.withColumn("total", col("quantity") * col("price"))
df_filtered = df_total.filter(col("total") > 50)
display(df_filtered)

A continuación, agregamos el total por categoría — el tipo de resumen que suele alimentar un informe:

from pyspark.sql.functions import sum as sum_

sales_by_category = df_filtered.groupBy("category").agg(sum_("total").alias("total_by_category"))
display(sales_by_category)

Paso 5: Guardar como tabla Delta

En Fabric, Delta es el formato de tabla predeterminado. Delta añade un registro de transacciones sobre los archivos Parquet, lo que aporta fiabilidad ACID e historial de versiones a tus tablas. Para guardar el resultado en la sección Tables del Lakehouse, usa saveAsTable con el modo overwrite (sustituye la tabla si ya existe):

sales_by_category.write.format("delta").mode("overwrite").saveAsTable("sales_by_category")

Si prefieres añadir filas a una tabla existente en vez de sustituirla, cambia overwrite por append.

Verificar el resultado

Actualiza el Explorer del Lakehouse (menú de tres puntos > Actualizar) y confirma que la tabla sales_by_category aparece en Tables. Para verificar los datos con código, consulta la tabla con Spark SQL:

result = spark.sql("SELECT * FROM sales_by_category ORDER BY total_by_category DESC")
display(result)

Deberías ver una fila por categoría con su total. La misma tabla queda también disponible a través del SQL analytics endpoint del Lakehouse, lista para usar en un informe de Power BI.

Conclusión

En pocos pasos creaste un Notebook, conectaste un Lakehouse y usaste PySpark para leer, transformar y guardar datos como tabla Delta — la base de cualquier pipeline de ingeniería de datos en Fabric. A partir de aquí, prueba a leer datos reales de la sección Files, a programar el Notebook dentro de un Data Pipeline, o a aplicar la arquitectura Medallion (Bronze, Silver, Gold). ¿Cuál será la primera transformación que necesitas automatizar en tu proyecto?