Repartiționarea datelor
Există un DataFrame text_df cu coloanele id, word și chapter. Primele 5 rânduri din text_df sunt afișate în consolă.
Poți determina că există 12 capitole folosind următoarea interogare:
text_df.select('chapter')\
.distinct()\
.sort('chapter')\
.show(truncate=False)
Rezultatul acestei comenzi este afișat în consolă sub forma Table 1.
DataFrame-ul text_df se află în prezent într-o singură partiție. Să presupunem că știi că pașii de procesare următori vor grupa datele după capitole. Procesarea va fi mai eficientă dacă fiecare capitol rămâne pe aceeași mașină. Pentru a evita transferul inutil al datelor între mașini, hai să repartiționăm DataFrame-ul astfel încât fiecare capitol să aibă propria partiție, folosind comenzile repartition și getNumPartitions prezentate în prima lecție video a acestui capitol.
Nu ezita să consulți slide-urile disponibile în dreapta consolei dacă nu îți amintești cum s-a procedat în video.
Acest exercițiu face parte din cursul
Introducere în Spark SQL în Python
Instrucțiuni pentru exercițiu
- Repartiționează
text_dfîn 12 partiții, cu câte un capitol în fiecare partiție. - Afișează numărul de partiții din noul DataFrame.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# Repartition text_df into 12 partitions on 'chapter' column
repart_df = text_df.____(____, ____)
# Prove that repart_df has 12 partitions
repart_df.____.____