ÎncepețiÎncepe gratuit

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

Vezi cursul

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.____.____
Editează și rulează codul