เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

การแบ่งพาร์ติชันข้อมูลใหม่

มี DataFrame ชื่อ text_df ซึ่งมีคอลัมน์ id, word และ chapter โดย 5 แถวแรกของ text_df จะถูกแสดงในคอนโซล

สามารถตรวจสอบได้ว่ามีทั้งหมด 12 บท (chapter) ด้วยคำสั่งต่อไปนี้:

text_df.select('chapter')\
       .distinct()\
       .sort('chapter')\
       .show(truncate=False)

ผลลัพธ์ของคำสั่งนี้จะแสดงในคอนโซลในชื่อ Table 1

ขณะนี้ DataFrame text_df อยู่ในพาร์ติชันเดียว สมมติว่าขั้นตอนการประมวลผลถัดไปจะจัดกลุ่มข้อมูลตามบท การประมวลผลจะมีประสิทธิภาพสูงสุดหากข้อมูลของแต่ละบทอยู่ในเครื่องเดียวกัน เพื่อหลีกเลี่ยงการสับเปลี่ยนข้อมูลระหว่างเครื่องโดยไม่จำเป็น มาแบ่ง DataFrame ใหม่เป็นพาร์ติชันละ 1 บท โดยใช้คำสั่ง repartition และ getNumPartitions ที่สอนไว้ในวิดีโอแรกของบทนี้

หากลืมวิธีการทำสามารถดูได้จากสไลด์ที่อยู่ทางขวาของคอนโซล

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

Introduction to Spark SQL in Python

ดูคอร์ส

คำแนะนำการฝึกหัด

  • แบ่งพาร์ติชัน text_df ใหม่เป็น 12 พาร์ติชัน โดยให้แต่ละบทอยู่ในพาร์ติชันของตัวเอง
  • แสดงจำนวนพาร์ติชันใน DataFrame ใหม่

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Repartition text_df into 12 partitions on 'chapter' column
repart_df = text_df.____(____, ____)

# Prove that repart_df has 12 partitions
repart_df.____.____
แก้ไขและรันโค้ด