Bất biến và xử lý lười

Làm sạch dữ liệu với PySpark

Mike Metzger

Data Engineering Consultant

Ôn biến số

Biến trong Python:

  • Có thể thay đổi (mutable)
  • Linh hoạt
  • Dễ phát sinh vấn đề khi đồng thời (concurrency)
  • Dễ làm tăng độ phức tạp
Làm sạch dữ liệu với PySpark

Tính bất biến

Biến bất biến:

  • Là thành phần của lập trình hàm
  • Được định nghĩa một lần
  • Không thể sửa trực tiếp
  • Được tạo lại khi gán mới
  • Chia sẻ hiệu quả
Làm sạch dữ liệu với PySpark

Ví dụ về bất biến

Tạo data frame mới:

voter_df = spark.read.csv('voterdata.csv')

Thực hiện thay đổi:

voter_df = voter_df.withColumn('fullyear', 
    voter_df.year + 2000)

voter_df = voter_df.drop(voter_df.year)
Làm sạch dữ liệu với PySpark

Xử lý lười

  • Có chậm không?
  • Phép biến đổi (transformations)
  • Hành động (actions)
  • Cho phép lập kế hoạch hiệu quả
voter_df = voter_df.withColumn('fullyear', 
    voter_df.year + 2000)
voter_df = voter_df.drop(voter_df.year)

voter_df.count()
Làm sạch dữ liệu với PySpark

Ayo berlatih!

Làm sạch dữ liệu với PySpark

Preparing Video For Download...