और भी ID ट्रिक्स
एक बार जब आप कोई Spark प्रोसेस तय कर लेते हैं, तो आप उसे कई बार चलाना चाहेंगे. ज़रूरत के अनुसार, आप चाहेंगे कि आपकी IDs किसी खास मान से शुरू हों ताकि Spark टास्क की पिछली रन से टकराव न हो. यह व्यवहार रिलेशनल डेटाबेस में IDs के काम करने जैसा है. आपको यह सुनिश्चित करने का काम दिया गया है कि मासिक Spark टास्क से निकलने वाली IDs पिछले महीने के सबसे बड़े मान से शुरू हों.
spark सेशन और दो DataFrames, voter_df_march और voter_df_april, आपके वर्कस्पेस में उपलब्ध हैं. pyspark.sql.functions लाइब्रेरी F उपनाम के साथ उपलब्ध है.
यह अभ्यास पाठ्यक्रम का हिस्सा है
PySpark के साथ डेटा क्लीनिंग
अभ्यास निर्देश
voter_df_marchमें सबसे बड़ीROW_IDनिकालें और उसे वैरिएबलprevious_max_IDमें सहेजें. स्टेटमेंट.rdd.max()[0]अधिकतम ID दिलाएगा.voter_df_aprilमेंROW_IDकॉलम जोड़ें, जोprevious_max_ID+ 1 के मान से शुरू हो.- दोनों DataFrames से
ROW_IDदिखाएँ और तुलना करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# 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()
____