Xử lý kết quả truy vấn theo lô
Nhóm muốn đẩy các dòng checkout kỹ thuật số sang hệ thống hạ nguồn theo từng phần thay vì gom thành một DataFrame khổng lồ. Hãy lặp qua các lô 5.000 hàng và ghi lại một tóm tắt nhỏ cho mỗi lô.
Một LazyFrame digital_rows với các checkout kỹ thuật số đã lọc sẵn đã được nạp trước.
Bài tập này là một phần của khóa học
Mở rộng và tối ưu hóa pipeline dữ liệu với Polars
Hướng dẫn bài tập
- Lặp qua
digital_rowstheo các lô 5.000 hàng bằng streaming engine.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
batch_summaries = []
# Stream digital_rows in chunks of 5,000
for batch_no, batch in enumerate(
digital_rows.____(chunk_size=____, engine="streaming"),
start=1,
):
batch_summaries.append(
{
"batch": batch_no,
"rows": batch.height,
"checkouts": batch["checkouts"].sum(),
}
)
result = pl.DataFrame(batch_summaries)
print(result)