Melakukan repartition pada data
Sebuah dataframe text_df tersedia, dengan kolom id, word, dan chapter. Lima baris pertama text_df dicetak ke konsol.
Anda dapat menentukan bahwa ada 12 bab dengan perintah berikut:
text_df.select('chapter')\
.distinct()\
.sort('chapter')\
.show(truncate=False)
Hasil perintah ini dicetak ke konsol sebagai Table 1.
Dataframe text_df saat ini berada dalam satu partisi. Misalkan Anda mengetahui bahwa langkah pemrosesan berikutnya akan mengelompokkan data berdasarkan bab. Pemrosesan data akan paling efisien jika setiap bab berada pada satu mesin. Untuk menghindari pengacakan data yang tidak perlu dari satu mesin ke mesin lain, mari lakukan repartition pada dataframe menjadi satu partisi per bab, menggunakan perintah repartition dan getNumPartitions yang diajarkan pada video pelajaran pertama di bab ini.
Jangan ragu untuk merujuk ke slide yang tersedia di sebelah kanan konsol jika Anda lupa bagaimana sesuatu dilakukan di video.
Latihan ini adalah bagian dari kursus
Pengantar Spark SQL dalam Python
Petunjuk latihan
- Lakukan repartition pada
text_dfmenjadi 12 partisi, dengan setiap bab berada pada partisinya masing-masing. - Tampilkan jumlah partisi pada dataframe yang baru.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Repartition text_df into 12 partitions on 'chapter' column
repart_df = text_df.____(____, ____)
# Prove that repart_df has 12 partitions
repart_df.____.____