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
Instrucciones del ejercicio
- Reparticiona
text_dfen 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.____.____