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

การสแกนชุดข้อมูลแบบ hive-partitioned

ทีมงานยังจัดเก็บข้อมูล Parquet checkouts ที่ผ่านการทำความสะอาดแล้วในรูปแบบ hive-partitioned โดยแบ่งเป็นไดเรกทอรีตามปี (checkoutyear=2023/, checkoutyear=2024/) ให้สแกนชุดข้อมูล partitioned นี้ และกรองด้วยคอลัมน์ partition เพื่อให้ Polars อ่านเฉพาะปีที่ต้องการ

polars โหลดเป็น pl และไดเรกทอรีรากอยู่ในตัวแปร HIVE_DIR ไดเรกทอรีของ partition จะถูกแสดงไว้ให้แล้ว เพื่อให้เห็นโครงสร้างของข้อมูล

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

การปรับขนาดและเพิ่มประสิทธิภาพ Data Pipeline ด้วย Polars

ดูคอร์ส

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

  • สแกน HIVE_DIR โดยใช้อาร์กิวเมนต์ที่เหมาะสมเพื่อเปิดใช้งาน hive partitioning
  • กรองผลลัพธ์เพื่อเลือกเฉพาะ checkouts ตั้งแต่ปี 2024 เป็นต้นไป

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

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

requests = pl.scan_parquet(
    HIVE_DIR,
    # Enable hive partitioning
    ____=True,
)

result = (
    requests
    # Filter to the 2024 partition
    .filter(pl.col("checkoutyear") >= ____)
    .group_by("format")
    .agg(pl.col("checkouts").sum().alias("total"))
    .sort("total", descending=True)
    .collect()
)
print(result)
แก้ไขและรันโค้ด