EmpezarEmpieza gratis

Procesar resultados de consultas por lotes

El equipo quiere enviar las filas de checkout digital a un sistema posterior en bloques, en lugar de recopilar un único DataFrame enorme. Recorre lotes de 5.000 filas y captura un pequeño resumen de cada uno.

Un LazyFrame digital_rows con los checkouts digitales filtrados está precargado.

Este ejercicio forma parte del curso

Escala y optimiza canalizaciones de datos con Polars

Ver curso

Instrucciones del ejercicio

  • Recorre digital_rows en lotes de 5.000 filas usando el motor de streaming.

ejercicio interactivo práctico

Prueba este ejercicio completando este código de ejemplo.

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)
Editar y ejecutar código