Processando resultados de consultas em lotes
A equipe quer enviar as linhas de checkouts digitais para um sistema downstream em partes, em vez de coletar um único DataFrame enorme. Faça a iteração em lotes de 5.000 linhas e registre um pequeno resumo de cada um.
Um LazyFrame digital_rows com os checkouts digitais filtrados já está carregado.
Este exercicio faz parte do curso
Dimensionamento e Otimização de Pipelines de Dados com Polars
Instruções do exercicio
- Faça a iteração por
digital_rowsem lotes de 5.000 linhas usando o mecanismo de streaming.
exercicio interativo prático
Tente este exercicio completando este código de exemplo.
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)