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

Fast-path filter บนข้อมูลที่เรียงลำดับแล้ว

ทีมวิเคราะห์ข้อมูลย้อนหลังต้องการทุกรายการยืม-คืนที่เกิดขึ้นก่อนปี 2021 ไฟล์ CSV ถูกเรียงลำดับตามคอลัมน์ date อยู่แล้ว ดังนั้นหากแจ้งให้ Polars ทราบ มันจะหยุดสแกนทันทีที่พบแถวแรกของปี 2021 โดยไม่ต้องอ่านข้อมูลทั้งหมด

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

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

ดูคอร์ส

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

  • ทำเครื่องหมายคอลัมน์ date ว่าเรียงลำดับแล้ว เพื่อให้ Polars ใช้การสแกนแบบ fast-path ได้
  • กรองเฉพาะแถวที่ date อยู่ก่อนวันที่ 1 มกราคม 2021
  • รัน lazy query เพื่อดูผลลัพธ์

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

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

result = (
    library
    # Mark date as sorted to enable the fast-path scan
    .____("date")
    # Filter to rows before 2021-01-01
    .filter(pl.col("date") < pl.____(2021, 1, 1))
    # Execute the lazy query
    .____()
)
print(result.head())
แก้ไขและรันโค้ด