始める無料で始める

Hive パーティション分割されたデータセットのスキャン

チームはクリーニング済みの Parquet 形式のチェックアウトデータを、年ごとにディレクトリを分けた Hive パーティション構成(checkoutyear=2023/checkoutyear=2024/)で保存しています。パーティション分割されたデータセットをスキャンし、パーティション列でフィルタリングすることで、必要な年のデータだけを読み込みましょう。

polarspl としてインポート済みで、ルートディレクトリは HIVE_DIR に格納されています。パーティションディレクトリの構成を確認できるよう、内容はあらかじめ表示されています。

この演習はコースの一部です

Polars によるデータパイプラインのスケーリングと最適化

コースを見る

演習の手順

  • 適切な引数を指定して HIVE_DIR をスキャンし、Hive パーティショニングを有効にします。
  • 結果を 2024 年以降のチェックアウトに絞り込みます。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

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)
コードを編集して実行