Ein hive-partitioniertes Dataset scannen
Das Team speichert bereinigte Parquet-Checkouts auch in einem hive-partitionierten Layout, mit einem Verzeichnis pro Jahr (checkoutyear=2023/, checkoutyear=2024/). Scanne das partitionierte Dataset und filtere auf der Partitionsspalte, damit Polars nur die Jahre liest, die du wirklich brauchst.
polars ist als pl geladen, und das Wurzelverzeichnis steht in HIVE_DIR. Die Partitionsverzeichnisse werden für dich ausgegeben, damit du das Layout sehen kannst.
Diese Übung ist Teil des Kurses
<Kurs>Skalieren und Optimieren von Data-Pipelines mit Polars</Kurs>Übungsanweisungen
- Scanne
HIVE_DIRund verwende das richtige Argument, um Hive-Partitionierung zu aktivieren. - Filtere das Ergebnis auf Checkouts ab 2024.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
requests = pl.scan_parquet(
HIVE_DIR,
# Enable hive partitioning
____=True,
)
result = (
requests
# Filter to the 2024 partition
.filter(pl.col("checkoutyear") >= ____)
.group_by("format")
.agg(pl.col("checkouts").sum().alias("total"))
.sort("total", descending=True)
.collect()
)
print(result)