メインコンテンツまでスキップ

パーティション分割

指定された列または変換を使用して、 createcreateOrReplace 、またはreplaceによって作成された出力テーブルを分割します。指定されている場合、テーブルデータは効率的な読み取りのためにこれらの値によって格納されます。

例えば、テーブルが日ごとに分割されている場合、次のようなディレクトリ構造で保存されることがあります。

  • table/day=2019-06-01/
  • table/day=2019-06-02/

パーティショニングは、物理データレイアウトを最適化するために最も広く用いられている手法の一つです。これは、クエリがパーティション化された列に対して述語を持つ場合に、不要なデータ読み取りをスキップするための粗粒度インデックスを提供します。パーティショニングが適切に機能するためには、各列に含まれる異なる値の数は、通常、数万未満であるべきです。

col また、 cols以下の変換関数のみをサポートします。

  • pyspark.sql.functions.years
  • pyspark.sql.functions.months
  • pyspark.sql.functions.days
  • pyspark.sql.functions.hours
  • pyspark.sql.functions.bucket

構文

partitionedBy(col, *cols)

パラメーター

パラメーター

Type

説明

col

列または文字列

最初のパーティショニング列または変換。

*cols

列または文字列(省略可能)

追加のパーティショニング列または変換。

戻り値

DataFrameWriterV2

このページの見出し