分批处理查询结果
团队希望将数字结账的行分批推送到下游系统,而不是收集成一个巨大的 DataFrame。请以 5,000 行为一批进行迭代,并记录每批的小型摘要。
已预加载包含筛选后数字结账记录的 LazyFrame digital_rows。
本练习是课程的一部分
使用 Polars 扩展与优化数据流水线
练习说明
- 在流式引擎上,以每批 5,000 行的方式对
digital_rows进行迭代。
交互式实操练习
通过完成这段示例代码来试试这个练习。
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)