การใช้งาน Lazy Processing
การดำเนินการแบบ Lazy Processing มักใช้เวลาพอกันโดยประมาณ ไม่ว่าข้อมูลจะมีปริมาณเท่าใดก็ตาม เนื่องจาก Spark จะยังไม่ประมวลผล transformation ใดๆ จนกว่าจะมีการเรียกใช้ action
ในแบบฝึกหัดนี้ เราจะกำหนด Data Frame (aa_dfw_df) แล้วเพิ่ม transformation สองรายการ ให้สังเกตความแตกต่างของเวลาที่ใช้ระหว่างตอนที่กำหนด transformation กับตอนที่ดึงข้อมูลจริง ความแตกต่างอาจไม่มากนัก แต่สังเกตได้ และจะยิ่งชัดเจนขึ้นเมื่อทำงานกับ Spark cluster จริงที่มีข้อมูลขนาดใหญ่
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การทำความสะอาดข้อมูลด้วย PySpark
คำแนะนำการฝึกหัด
- โหลด Data Frame
- เพิ่ม transformation
F.lower()ให้กับคอลัมน์Destination Airport - แสดงผล Data Frame โดยสังเกตความแตกต่างของเวลาที่ใช้ในการดำเนินการนี้
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Load the CSV file
aa_dfw_df = ____.____.____('csv').options(Header=True).load('AA_DFW_2018.csv.gz')
# Add the airport column using the F.lower() method
aa_dfw_df = aa_dfw_df.withColumn('airport', ____(aa_dfw_df['Destination Airport']))
# Show the DataFrame
____