ประสิทธิภาพการนำเข้าไฟล์
คุณได้รับชุดข้อมูลขนาดใหญ่เพื่อนำเข้าสู่ Spark DataFrame และต้องการทดสอบความแตกต่างของความเร็วในการนำเข้าโดยการแบ่งไฟล์ออกเป็นส่วน ๆ
มีไฟล์สองประเภทให้ใช้งาน ได้แก่ departures_full.txt.gz และ departures_xxx.txt.gz โดยที่ xxx คือ 000 - 013 ซึ่งแบ่งจำนวนแถวที่เท่ากันไว้ในแต่ละไฟล์
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การทำความสะอาดข้อมูลด้วย PySpark
คำแนะนำการฝึกหัด
- นำเข้าไฟล์
departures_full.txt.gzและไฟล์departures_xxx.txt.gzลงใน DataFrame แยกกัน - รัน count บน DataFrame แต่ละตัว แล้วเปรียบเทียบเวลาในการประมวลผล
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Import the full and split files into DataFrames
full_df = spark.read.csv('____')
split_df = ____(____)
# Print the count and run time for each DataFrame
start_time_a = time.time()
print("Total rows in full DataFrame:\t%d" % ____)
print("Time to run: %f" % (time.time() - start_time_a))
start_time_b = time.time()
print("Total rows in split DataFrame:\t%d" % ____)
print("Time to run: %f" % (time.time() - start_time_b))