Abfrageergebnisse stapelweise verarbeiten
Das Team möchte digitale Checkout-Zeilen in Blöcken an ein nachgelagertes System senden, statt ein riesiges DataFrame auf einmal zu sammeln. Iteriere durch 5.000er-Blöcke und erfasse dabei jeweils eine kleine Zusammenfassung.
Ein LazyFrame digital_rows mit den gefilterten digitalen Checkouts ist vorab geladen.
Diese Übung ist Teil des Kurses
<Kurs>Skalieren und Optimieren von Data-Pipelines mit Polars</Kurs>Übungsanweisungen
- Iteriere über
digital_rowsin Blöcken zu 5.000 Zeilen auf dem Streaming-Engine.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
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)