Saltar al contenido
Lakehouse LabLakehouse LabPreparación Databricks Data Engineer
Módulo 04 · Lección

Transformaciones y acciones

Contenido abierto

Puedes leer todo sin registrarte. Solo crearemos un perfil anónimo cuando decidas guardar tu progreso.

Lección 1 de 5

Transformaciones y acciones

Las transformaciones construyen un plan lógico; las acciones lo ejecutan y materializan un resultado.

Duración
17 min aprox.
Objetivo
Las transformaciones construyen un plan lógico; las acciones lo ejecutan y materializan un resultado.
Siguiente paso
Continuar con la siguiente lección
Ver detalles del módulo

DataFrames, transformaciones y datos complejos

Domina las operaciones que aparecen en ETL real: joins, arrays, structs, ventanas y deduplicación.

Al terminar podrás
  • Transformar columnas y filas con funciones nativas
  • Manipular arrays, maps y structs
  • Combinar y deduplicar datasets de forma determinista
Ver fuentes y revisión

Metadatos editoriales

Última revisión
21 jul 2026
Nivel
Associate
Ruta relacionada
core
Dominios blueprint
Data Transformation and Modeling · PySpark DataFrames
Estado
Revisión editorial interna
Fuentes principales
PySpark DataFrames · DataFrame transformations
Reportar un error
01
Modelo mental

Transformaciones y acciones

Las transformaciones construyen un plan lógico; las acciones lo ejecutan y materializan un resultado.

Mostrar prerrequisitos
Dificultad
Associate
Prerrequisitos
m03
Reportar un error en esta lección

DataFrames son inmutables: select, filter o withColumn devuelven un nuevo plan sin leer todos los datos inmediatamente. Catalyst puede reorganizar y simplificar ese plan antes de ejecutarlo.

count, collect, write y display son acciones. Repetir acciones sobre el mismo linaje puede recalcularlo; cache solo compensa si hay reutilización medida y memoria suficiente.

Modelo mental

La API DataFrame es perezosa: una transformación describe una nueva relación y una acción exige un resultado. Spark no procesa fila por fila al escribir select, filter o join; acumula un plan lógico que Catalyst puede reorganizar. count, collect, write o una visualización desencadenan un job que materializa parte del linaje. Esta separación permite pushdown, poda de columnas y elección de joins, pero también sorprende cuando una acción repetida recalcula todo. Cache solo tiene sentido si el mismo resultado costoso se reutiliza y cabe con seguridad. Para razonar sobre rendimiento, identifica dónde se define el plan, dónde nace una acción y qué fronteras de shuffle dividen stages.

Transformación

Operación perezosa que produce un nuevo DataFrame y amplía el plan lógico.

Permite componer trabajo antes de que Spark elija cómo ejecutarlo.
Acción

Operación que solicita un resultado y desencadena la ejecución del plan necesario.

Marca el punto donde aparecen coste, jobs y errores ligados a datos.
Linaje

Cadena de dependencias de transformaciones necesaria para recomputar un DataFrame.

Explica recalculo, recuperación y cuándo una caché puede aportar valor.
PySparkObservar lazy evaluation
paid = orders.filter("status = 'paid'").select("order_id", "amount")
paid.explain("formatted")
rows = paid.count()

explain inspecciona el plan; count inicia la ejecución.

Puntos clave

  • Transformaciones son lazy
  • Acciones disparan jobs
  • Cache es una decisión medida

Evita

  • Usar collect sobre un dataset grande
  • Cachear cada DataFrame por costumbre

Recuerdo activo

¿filter ejecuta inmediatamente una lectura?

Borrador privado · solo en este navegador
5 lecciones pendientes

Fuente revisada · vista externa

Azure Databricks Hands-on

Azure Databricks Hands-on · commit a91650b

HandsOn.dbc

Archivo importable

Este notebook se abre desde su fuente revisada

El repositorio no permite republicar su contenido dentro de Lakehouse Lab. Conservamos la misma experiencia lateral, la ruta exacta y el commit auditado, y dejamos la lectura en GitHub para respetar la autoría.

Autor
Tsuyoshi Matsuzaki
Licencia
No verificada
Formato
dbc
Abrir / descargar .dbc