Tingkatkan kinerja impor

Membersihkan Data dengan PySpark

Mike Metzger

Data Engineering Consultant

Spark clusters

Spark Clusters terdiri dari dua jenis proses

  • Proses driver
  • Proses worker
Membersihkan Data dengan PySpark

Kinerja impor

Parameter penting:

  • Jumlah objek (file, lokasi jaringan, dll.)
    • Lebih banyak objek lebih baik daripada yang berukuran besar
    • Dapat mengimpor dengan wildcard
      airport_df = spark.read.csv('airports-*.txt.gz')
      
  • Ukuran umum objek
    • Spark bekerja lebih baik jika ukuran objek serupa
Membersihkan Data dengan PySpark

Skema

Skema yang terdefinisi baik akan sangat meningkatkan kinerja impor

  • Menghindari membaca data berulang kali
  • Memberikan validasi saat impor
Membersihkan Data dengan PySpark

Cara membagi objek

  • Gunakan utilitas/script OS (split, cut, awk)
    split -l 10000 -d largefile chunk-
    
  • Gunakan skrip kustom
  • Tulis ke Parquet
    df_csv = spark.read.csv('singlelargefile.csv')
    df_csv.write.parquet('data.parquet')
    df = spark.read.parquet('data.parquet')
    
Membersihkan Data dengan PySpark

Ayo berlatih!

Membersihkan Data dengan PySpark

Preparing Video For Download...