ComenzarEmpieza gratis

Reparticionar los datos

Existe un dataframe text_df con las columnas id, word y chapter. Las primeras 5 filas de text_df se imprimen en la consola.

Puedes comprobar que hay 12 capítulos con lo siguiente:

text_df.select('chapter')\
       .distinct()\
       .sort('chapter')\
       .show(truncate=False)

El resultado de este comando se imprime en la consola como Table 1.

Actualmente, el dataframe text_df está en una sola partición. Supón que sabes que los próximos pasos de procesamiento van a agrupar los datos por capítulos. El procesamiento será más eficiente si cada capítulo permanece en una única máquina. Para evitar traslados innecesarios de datos entre máquinas, vamos a reparticionar el dataframe en una partición por capítulo, usando los comandos repartition y getNumPartitions que se explicaron en el primer video de esta capítulo.

Si no recuerdas cómo se hizo en el video, no dudes en consultar las diapositivas disponibles a la derecha de la consola.

Este ejercicio forma parte del curso

Introducción a Spark SQL en Python

Ver curso

Instrucciones del ejercicio

  • Reparticiona text_df en 12 particiones, con cada capítulo en su propia partición.
  • Muestra el número de particiones del nuevo dataframe.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# Repartition text_df into 12 partitions on 'chapter' column
repart_df = text_df.____(____, ____)

# Prove that repart_df has 12 partitions
repart_df.____.____
Editar y ejecutar código