Parquet को समझना

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

Mike Metzger

Data Engineering Consultant

CSV फाइलों की मुश्किलें

  • परिभाषित schema नहीं
  • Nested डेटा के लिए विशेष हैंडलिंग चाहिए
  • Encoding फॉर्मेट सीमित
PySpark के साथ डेटा क्लीनिंग

Spark और CSV फाइलें

  • पार्स करना धीमा
  • फाइलें फ़िल्टर नहीं हो सकतीं ("predicate pushdown" नहीं)
  • किसी बीच के उपयोग पर schema फिर से परिभाषित करना पड़ता है
PySpark के साथ डेटा क्लीनिंग

Parquet फॉर्मेट

  • एक columnar डेटा फॉर्मेट
  • Spark और अन्य डेटा प्रोसेसिंग फ्रेमवर्क में समर्थित
  • Predicate pushdown सपोर्ट करता है
  • Schema जानकारी अपने-आप स्टोर करता है
PySpark के साथ डेटा क्लीनिंग

Parquet के साथ काम

Parquet फाइलें पढ़ना

df = spark.read.format('parquet').load('filename.parquet')
df = spark.read.parquet('filename.parquet')

Parquet फाइलें लिखना

df.write.format('parquet').save('filename.parquet')
df.write.parquet('filename.parquet')
PySpark के साथ डेटा क्लीनिंग

Parquet और SQL

SparkSQL ऑपरेशंस के लिए Parquet को बैकिंग स्टोर के रूप में

flight_df = spark.read.parquet('flights.parquet')
flight_df.createOrReplaceTempView('flights')
short_flights_df = spark.sql('SELECT * FROM flights WHERE flightduration < 100')
PySpark के साथ डेटा क्लीनिंग

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

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

Preparing Video For Download...