[13]Procesamiento distribuido con PySpark
DataFrames distribuidos, shuffle, broadcast joins, Spark UI y optimización a escala.
Cuando Pandas no puede más: el problema que resuelve Spark
Entiende con números reales por qué dividir el trabajo entre máquinas es la única salida cuando los datos crecen.
De Hadoop a Spark: la historia del procesamiento a escala
De MapReduce (2004) a Spark (2014), su arquitectura y los conceptos que lo sostienen: RDD, DataFrame, linaje, Catalyst y el DAG.
Instalar PySpark: levantar un cluster Spark con Docker
Docker Compose con Spark master + worker + Jupyter. Tu laboratorio de procesamiento distribuido en 5 minutos.
Transformaciones y acciones: por qué Spark es "perezoso" y es una ventaja
Lazy evaluation: las transformaciones no hacen nada hasta que una acción las ejecuta. Como escribir una lista de la compra antes de ir al supermercado.
JOINs distribuidos: shuffle, broadcast y por qué importa
El shuffle es el villano del rendimiento. El broadcast join es tu arma secreta cuando una tabla es pequeña.
Particiones: repartition, coalesce y controlando la distribución
Las particiones determinan el paralelismo. Aprende a controlar cuántas hay y cuándo ajustarlas.
Leer y escribir Parquet a escala: Spark + Data Lake
Spark y Parquet son la pareja perfecta: columnar, compresión, predicate pushdown y particionado por carpetas.
Spark UI: diagnosticar por qué tu job tarda 3 horas
El panel de control de un avión: stages, tasks, shuffles, GC y los indicadores que te dicen si algo va mal.