कैशिंग

PySpark के साथ डेटा क्लीनिंग

Mike Metzger

Data Engineering Consultant

Caching क्या है?

Spark में Caching:

  • DataFrames को मेमोरी या डिस्क पर स्टोर करता है
  • बाद की transformations/actions की स्पीड बढ़ती है
  • रिसोर्स उपयोग घटता है
PySpark के साथ डेटा क्लीनिंग

Caching के नुकसान

  • बहुत बड़े datasets मेमोरी में फिट नहीं हो सकते
  • लोकल डिस्क-आधारित कैशिंग हमेशा प्रदर्शन नहीं बढ़ाती
  • कैश्ड ऑब्जेक्ट उपलब्ध न भी हों
PySpark के साथ डेटा क्लीनिंग

Caching टिप्स

जब Spark टास्क विकसित करें:

  • तभी cache करें जब ज़रूरत हो
  • अलग-अलग बिंदुओं पर DataFrames cache करके देखें कि प्रदर्शन सुधरता है या नहीं
  • मेमोरी और तेज SSD/NVMe स्टोरेज में cache करें
  • जरूरत हो तो धीमी लोकल डिस्क पर cache करें
  • Intermediate files का उपयोग करें!
  • काम पूरा होने पर caching बंद करें
PySpark के साथ डेटा क्लीनिंग

Caching कैसे लागू करें

Action से पहले DataFrame पर .cache() कॉल करें

voter_df = spark.read.csv('voter_data.txt.gz')
voter_df.cache().count()
voter_df = voter_df.withColumn('ID', monotonically_increasing_id())
voter_df = voter_df.cache()
voter_df.show()
PySpark के साथ डेटा क्लीनिंग

और cache ऑपरेशंस

कैश स्थिति जाँचने के लिए .is_cached देखें

print(voter_df.is_cached)
True

DataFrame का काम पूरा होने पर .unpersist() कॉल करें

voter_df.unpersist()
PySpark के साथ डेटा क्लीनिंग

अभ्यास करते हैं!

PySpark के साथ डेटा क्लीनिंग

Preparing Video For Download...