Bölümlendirme ve tembel işleme

PySpark ile Veri Temizleme

Mike Metzger

Data Engineering Consultant

Bölümlendirme

  • DataFrame'ler bölümlere ayrılır
  • Bölüm boyutu değişebilir
  • Her bölüm bağımsız işlenir
PySpark ile Veri Temizleme

Tembel (lazy) işleme

  • Dönüşümler tembeldir (lazy)
    • .withColumn(...)
    • .select(...)
  • Bir eylem yapılana kadar aslında hiçbir şey çalışmaz
    • .count()
    • .write(...)
  • Dönüşümler en iyi performans için yeniden sıralanabilir
  • Bazen beklenmedik davranışa yol açar
PySpark ile Veri Temizleme

ID ekleme

Normal ID alanları:

  • İlişkisel veritabanlarında yaygındır
  • Genelde artan, sıralı ve benzersiz tamsayıdır
  • Pek paralel değildir
id soyadı adı eyalet
0 Smith John TX
1 Wilson A. IL
2 Adams Wendy OR
PySpark ile Veri Temizleme

Monotonik artan ID'ler

pyspark.sql.functions.monotonically_increasing_id()

  • 64 bit tamsayı, artar ve benzersizdir
  • Mutlaka sıralı değildir (boşluklar olabilir)
  • Tamamen paraleldir
id soyadı adı eyalet
0 Smith John TX
134520871 Wilson A. IL
675824594 Adams Wendy OR
PySpark ile Veri Temizleme

Notlar

Unutmayın, Spark tembeldir!

  • Ara sıra sırasız olabilir
  • Join yaparken, ID join'den sonra atanabilir
  • Dönüşümlerinizi test ediniz
PySpark ile Veri Temizleme

Haydi pratik yapalım!

PySpark ile Veri Temizleme

Preparing Video For Download...