Skanowanie zbioru danych z partycjonowaniem hive
Zespół przechowuje również oczyszczone pliki Parquet z wypożyczeniami w układzie partycjonowania hive — po jednym katalogu na rok (checkoutyear=2023/, checkoutyear=2024/). Zeskanuj podzielony na partycje zbiór danych i przefiltruj go po kolumnie partycji, aby Polars wczytał tylko te lata, które faktycznie cię interesują.
polars jest załadowany jako pl, a katalog główny znajduje się w zmiennej HIVE_DIR. Katalogi partycji są wypisane na ekranie, żebyś mógł zobaczyć strukturę układu.
To ćwiczenie jest częścią kursu
Skalowanie i optymalizacja potoków danych w Polars
Instrukcje do ćwiczenia
- Zeskanuj
HIVE_DIR, używając odpowiedniego argumentu, aby włączyć partycjonowanie hive. - Przefiltruj wynik tak, aby uwzględnić tylko wypożyczenia z 2024 roku wzwyż.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
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)