การแคช DataFrame
ได้รับมอบหมายให้รันการวิเคราะห์หลายรายการบน DataFrame เดียวกัน หลังจากเรียนรู้ว่าการแคชช่วยเพิ่มประสิทธิภาพเมื่อต้องใช้ DataFrame ซ้ำ จึงอยากลองนำไปใช้จริง
ในแบบฝึกหัดนี้จะทำงานกับชุดข้อมูลใหม่ที่บันทึกข้อมูลการออกเดินทางของสายการบิน ชุดข้อมูลนี้อาจมีข้อมูลซ้ำและจำเป็นต้องกำจัดออก
กำหนด DataFrame departures_df ไว้แล้ว แต่ยังไม่มีการดำเนินการใดเกิดขึ้น
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การทำความสะอาดข้อมูลด้วย PySpark
คำแนะนำการฝึกหัด
- แคชเฉพาะแถวที่ไม่ซ้ำกันใน DataFrame
departures_df - รันคิวรีนับจำนวนแถวบน
departures_dfและสังเกตเวลาที่ใช้ - นับจำนวนแถวอีกครั้ง และสังเกตความแตกต่างของเวลาเมื่อใช้ DataFrame ที่แคชไว้แล้ว
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
start_time = time.time()
# Add caching to the unique rows in departures_df
departures_df = departures_df.____.____
# Count the unique rows in departures_df, noting how long the operation takes
print("Counting %d rows took %f seconds" % (departures_df.____, time.time() - start_time))
# Count the rows again, noting the variance in time of a cached DataFrame
start_time = time.time()
print("Counting %d rows again took %f seconds" % (____, time.time() - start_time))