Lebih banyak trik ID
Setelah Anda mendefinisikan suatu proses Spark, kemungkinan Anda akan menggunakannya berkali-kali. Bergantung pada kebutuhan, Anda mungkin ingin memulai ID pada nilai tertentu agar tidak tumpang tindih dengan hasil eksekusi tugas Spark sebelumnya. Perilaku ini mirip dengan cara ID bekerja di basis data relasional. Anda mendapat tugas untuk memastikan bahwa ID yang dihasilkan dari tugas Spark bulanan dimulai dari nilai tertinggi pada bulan sebelumnya.
Sesi spark dan dua DataFrame, voter_df_march dan voter_df_april, tersedia di lingkungan kerja Anda. Pustaka pyspark.sql.functions tersedia dengan alias F.
Latihan ini merupakan bagian dari kursus
Membersihkan Data dengan PySpark
Instruksi latihan
- Tentukan
ROW_IDtertinggi divoter_df_marchdan simpan dalam variabelprevious_max_ID. Pernyataan.rdd.max()[0]akan mendapatkan ID maksimum. - Tambahkan kolom
ROW_IDkevoter_df_aprilyang dimulai dari nilaiprevious_max_ID+ 1. - Tampilkan
ROW_IDdari kedua Data Frame dan bandingkan.
Latihan interaktif langsung praktik
Cobalah latihan ini dengan melengkapi kode contoh ini.
# Determine the highest ROW_ID and save it in previous_max_ID
____ = ____.select('ROW_ID').rdd.max()[0] + 1
# Add a ROW_ID column to voter_df_april starting at the desired value
voter_df_april = ____.withColumn('ROW_ID', ____ + ____)
# Show the ROW_ID from both DataFrames and compare
____.select('ROW_ID').show()
____