การใช้ custom batch sink
สำหรับการประมวลผลแบบกำหนดเองที่ Polars ไม่รองรับโดยตรง คุณสามารถส่งฟังก์ชันของตัวเองได้ ทีมต้องการเห็นรูปแบบนี้แม้ว่าปกติจะใช้ built-in sink ก็ตาม ให้สตรีม digital_rows ผ่านฟังก์ชัน record_batch ที่กำหนดไว้ล่วงหน้า
digital_rows โหลดไว้ให้แล้ว รวมถึงฟังก์ชัน record_batch(batch) ที่บันทึกจำนวนแถวและผลรวมของยอดชำระต่อ batch ลงใน batch_summaries
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การปรับขนาดและเพิ่มประสิทธิภาพ Data Pipeline ด้วย Polars
คำแนะนำการฝึกหัด
- สตรีม
digital_rowsผ่านฟังก์ชันทีละ 5,000 แถวต่อ batch โดยใช้ streaming engine
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Stream batches through the record_batch function
digital_rows.____(
record_batch,
____=5_000,
____="streaming",
)
result = pl.DataFrame(batch_summaries)
print(result)