Přerozdělení dat do oddílů
Existuje dataframe text_df se sloupci id, word a chapter. Prvních 5 řádků text_df je vypsáno do konzole.
Počet 12 kapitol můžeš zjistit takto:
text_df.select('chapter')\
.distinct()\
.sort('chapter')\
.show(truncate=False)
Výsledek tohoto příkazu je v konzoli zobrazen jako Table 1.
Dataframe text_df je momentálně v jediném oddílu. Předpokládejme, že víš, že následující kroky zpracování budou data seskupovat podle kapitol. Zpracování bude nejefektivnější, pokud každá kapitola zůstane na jednom stroji. Aby nedocházelo k zbytečnému přesouvání dat mezi stroji, rozdělme dataframe do oddílů — jeden oddíl na kapitolu — pomocí příkazů repartition a getNumPartitions, které byly představeny v prvním videu této kapitoly.
Neváhej se podívat na snímky prezentace dostupné vpravo od konzole, pokud si potřebuješ něco připomenout.
Toto cvičení je součástí kurzu
Úvod do Spark SQL v Pythonu
Pokyny k cvičení
- Rozděl
text_dfdo 12 oddílů tak, aby každá kapitola měla vlastní oddíl. - Zobraz počet oddílů nového dataframu.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Repartition text_df into 12 partitions on 'chapter' column
repart_df = text_df.____(____, ____)
# Prove that repart_df has 12 partitions
repart_df.____.____