Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

max_partitions_* セッション設定

これらの設定は system.settings で確認でき、ソースコード から自動生成されています。

max_partitions_per_insert_block

UInt64
デフォルト値
100
バージョン履歴
バージョンデフォルト値コメント
19.51001 つのブロック内のパーティション数の制限を追加

1 つの挿入ブロックに含められるパーティションの最大数を制限します。 ブロック内のパーティション数が多すぎる場合は、例外がスローされます。

  • 正の整数。
  • 0 — パーティション数は無制限です。

詳細

データの挿入時に、ClickHouse は 挿入ブロック内のパーティション数を計算します。パーティション数が max_partitions_per_insert_block を超える場合、 ClickHouse は throw_on_max_partitions_per_insert_block の設定に応じて警告をログに記録するか、 例外をスローします。例外メッセージは次のとおりです。

"単一の INSERT ブロックに対してパーティション数が多すぎます (partitions_count 個のパーティション、上限は " + toString(max_partitions) + ") 。 この上限は 'max_partitions_per_insert_block' 設定で制御されます。 大量のパーティションを使用するのは、よくある誤解です。これにより、 server の起動や INSERT クエリ、 SELECT クエリが遅くなるなど、深刻なパフォーマンス低下を招きます。 table 全体のパーティション総数は 1000..10000 未満に抑えることが推奨されます。なお、 パーティション化は SELECT クエリを高速化するためのものではありません (範囲クエリを高速化するには ORDER BY key で十分です) 。 パーティションはデータ操作 (DROP PARTITION など) のためのものです。"

max_partitions_to_read

Int64
デフォルト値
-1

1 つのクエリでアクセスできるパーティションの最大数を制限します。

テーブル作成時に指定した設定値は、クエリレベルの設定で上書きできます。

設定可能な値:

  • 正の整数
  • -1 - 無制限 (デフォルト)
Navigation