← retour aux snippets

Dask bag: traiter JSON lines

charger un flux JSONL et mapper/filtrer facilement

python dask #dask#json#bag

Dask bag: traiter JSON lines

objectif

Expliquer et montrer comment charger un flux JSONL et mapper/filtrer facilement.

code minimal

import dask.bag as db
# b = db.read_text("s3://bucket/logs/*.jsonl").map(json.loads)
# filtrer et compter
# b.filter(lambda d: d.get("level") == "error").count().compute()

utilisation

# convertir en DataFrame pour groupby
# df = b.to_dataframe()

variante(s) utile(s)

# traiter des fichiers gzip transparents (*.jsonl.gz)
# b = db.read_text("*.jsonl.gz").map(json.loads)

notes

  • Dask bag est adapté aux données semi-structurées (JSONL, textes).
  • Pour colonnes fixes, préférez Dask DataFrame.