Memahami Parquet

Membersihkan Data dengan PySpark

Mike Metzger

Data Engineering Consultant

Kendala pada file CSV

  • Skema tidak baku
  • Data bertingkat perlu penanganan khusus
  • Format enkode terbatas
Membersihkan Data dengan PySpark

Spark dan file CSV

  • Lambat diparse
  • File tidak bisa difilter (tanpa "predicate pushdown")
  • Penggunaan perantara perlu mendefinisikan ulang skema
Membersihkan Data dengan PySpark

Format Parquet

  • Format data kolumnar
  • Didukung di Spark dan kerangka pemrosesan data lain
  • Mendukung predicate pushdown
  • Menyimpan informasi skema otomatis
Membersihkan Data dengan PySpark

Bekerja dengan Parquet

Membaca file Parquet

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

Menulis file Parquet

df.write.format('parquet').save('filename.parquet')
df.write.parquet('filename.parquet')
Membersihkan Data dengan PySpark

Parquet dan SQL

Parquet sebagai penyimpanan dasar untuk operasi SparkSQL

flight_df = spark.read.parquet('flights.parquet')
flight_df.createOrReplaceTempView('flights')
short_flights_df = spark.sql('SELECT * FROM flights WHERE flightduration < 100')
Membersihkan Data dengan PySpark

Ayo berlatih!

Membersihkan Data dengan PySpark

Preparing Video For Download...