Traiter les résultats de requête par lots
L'équipe souhaite envoyer les lignes de passage à la caisse numérique vers un système en aval par blocs, plutôt que de récupérer un seul énorme DataFrame. Parcourez des lots de 5 000 lignes et captez un petit résumé pour chacun.
Un LazyFrame digital_rows contenant les passages à la caisse numériques filtrés est préchargé.
Cette activité fait partie du cours
Mise à l'échelle et optimisation des pipelines de données avec Polars
Instructions de l’exercice
- Parcourez
digital_rowspar lots de 5 000 lignes avec le moteur de diffusion en continu.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
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)