> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# max_* セッション設定

> max_* 生成グループの ClickHouse セッション設定。

export const SettingsInfoBlock = ({type, default_value, changeable_without_restart}) => {
  return <div className="not-prose" style={{
    display: "flex",
    flexWrap: "wrap",
    alignItems: "baseline",
    columnGap: "0.5rem",
    rowGap: "0.125rem",
    margin: "0.375rem 0",
    fontSize: "0.8125rem",
    lineHeight: "1.125rem"
  }}>
      <div style={{
    fontWeight: 600,
    opacity: 0.72
  }}>型</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{type}</div>
      <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>デフォルト値</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{default_value}</div>
      {changeable_without_restart && <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>
          再起動せずに変更可能
        </div>}
      {changeable_without_restart && <div style={{
    overflowWrap: "anywhere"
  }}>
          {changeable_without_restart}
        </div>}
    </div>;
};

export const ExperimentalBadge = () => {
  return <div className="experimentalBadge">
            <div className="experimentalIcon">
            <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
                <path strokeWidth="1.25" d="M5.5 2H10.5" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" />
                <path strokeWidth="1.25" d="M9.50015 2V6.19625L13.4283 12.7425C13.4738 12.8183 13.4985 12.9049 13.4996 12.9934C13.5008 13.0818 13.4785 13.169 13.435 13.246C13.3914 13.323 13.3283 13.3871 13.2519 13.4317C13.1755 13.4764 13.0886 13.4999 13.0002 13.5H3.00015C2.91164 13.5 2.8247 13.4766 2.74822 13.432C2.67174 13.3874 2.60847 13.3233 2.56487 13.2463C2.52126 13.1693 2.49889 13.082 2.50004 12.9935C2.50119 12.905 2.52582 12.8184 2.5714 12.7425L6.50015 6.19625V2" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" />
                <path strokeWidth="1.25" d="M4.47656 9.56754C5.30344 9.41254 6.47656 9.47942 7.99969 10.25C10.0153 11.2707 11.4216 11.0569 12.2184 10.7282" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" />
            </svg>
        </div>
            実験的な機能です。 <u><a href="/docs/docs/beta-and-experimental-features#experimental-features">詳細を見る。</a></u>
        </div>;
};

これらの設定は [system.settings](/docs/ja/reference/system-tables/settings) で参照でき、[ソースコード](https://github.com/ClickHouse/ClickHouse/blob/master/src/Core/Settings.cpp) から自動生成されています。

<div id="max_analyze_depth">
  ## max\_analyze\_depth
</div>

<SettingsInfoBlock type="UInt64" default_value="5000" />

インタープリターが実行する解析の最大数。

<div id="max_autoincrement_series">
  ## max\_autoincrement\_series
</div>

<SettingsInfoBlock type="UInt64" default_value="1000" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.1"},{"label": "1000"},{"label": "新しい設定"}]}]} />

`generateSerialID` 関数によって作成される系列の数の上限です。

各系列は Keeper 内のノードを表すため、その数は多くても数百万個までに抑えることを推奨します。

<div id="max_backup_bandwidth">
  ## max\_backup\_bandwidth
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

サーバー上の特定のバックアップに対する、1 秒あたりの最大読み取り速度 (バイト数) です。0 は無制限を意味します。

<div id="max_block_size">
  ## max\_block\_size
</div>

<SettingsInfoBlock type="NonZeroUInt64" default_value="65409" />

ClickHouse では、データはブロック単位で処理されます。ブロックはカラムのパーツの集合です。単一のブロックに対する内部処理サイクル自体は効率的ですが、各ブロックの処理には無視できないコストがかかります。

`max_block_size` 設定は、テーブルからデータを読み込む際に、1 つのブロックに含める行数の推奨最大値を示します。常に `max_block_size` サイズのブロックがテーブルから読み込まれるわけではありません。ClickHouse が取得するデータ量はそれより少なくてよいと判断した場合は、より小さいブロックが処理されます。

各ブロックの処理コストが目立つものになるのを避けるため、ブロックサイズは小さすぎてはいけません。また、LIMIT 句を含むクエリが最初のブロックの処理後すぐに実行できるようにするため、大きすぎてもいけません。`max_block_size` を設定する際は、多数のカラムを複数のスレッドで抽出するときにメモリを過剰に消費しないこと、そして少なくともある程度のキャッシュ局所性を維持することを目指すべきです。

<div id="max_columns_to_read">
  ## max\_columns\_to\_read
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

1 回のクエリで テーブル から読み取れるカラム数の上限です。
クエリで指定された数を超えるカラムを読み取る必要がある場合、例外
がスローされます。

<Tip>
  この設定は、過度に複雑なクエリを防ぐのに役立ちます。
</Tip>

`0` は無制限を意味します。

<div id="max_compress_block_size">
  ## max\_compress\_block\_size
</div>

<SettingsInfoBlock type="UInt64" default_value="1048576" />

テーブルへの書き込み時に圧縮する前の、非圧縮データのブロックの最大サイズです。デフォルトは 1,048,576 (1 MiB) です。より小さいブロックサイズを指定すると、一般に圧縮率はわずかに低下しますが、キャッシュ局所性 により圧縮および展開の速度はわずかに向上し、メモリ使用量は削減されます。

<Note>
  これは expert-level setting です。ClickHouse を使い始めたばかりの場合は、変更しないでください。
</Note>

圧縮用のブロック (バイトで構成されるメモリの chunk) と、クエリ処理用のブロック (テーブルの行の集合) を混同しないでください。

<div id="max_consume_snapshots">
  ## max\_consume\_snapshots
</div>

<ExperimentalBadge />

<SettingsInfoBlock type="UInt64" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.5"},{"label": "0"},{"label": "新しい設定"}]}]} />

1 回のインクリメンタル読み取りで消費する Paimon スナップショットの最大数。0 は無制限を意味します。

<div id="max_estimated_execution_time">
  ## max\_estimated\_execution\_time
</div>

<SettingsInfoBlock type="Seconds" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.1"},{"label": "0"},{"label": "max_execution_time と max_estimated_execution_time を分離"}]}]} />

秒単位で指定する、クエリの推定実行時間の上限です。各データブロックごとに、
[`timeout_before_checking_execution_speed`](/docs/ja/reference/settings/session-settings/other#timeout_before_checking_execution_speed)
が経過した時点でチェックされます。

<div id="max_expanded_ast_elements">
  ## max\_expanded\_ast\_elements
</div>

<SettingsInfoBlock type="UInt64" default_value="500000" />

別名とアスタリスクを展開した後のクエリ構文木の最大サイズ (ノード数) 。

<div id="max_fetch_partition_retries_count">
  ## max\_fetch\_partition\_retries\_count
</div>

<SettingsInfoBlock type="UInt64" default_value="5" />

別のホストからパーティションをフェッチする際の再試行回数。

<div id="max_final_threads">
  ## max\_final\_threads
</div>

<SettingsInfoBlock type="MaxThreads" default_value="auto(N)" />

[FINAL](/docs/ja/reference/statements/select/from#final-modifier) 修飾子を使用する `SELECT`クエリのデータ読み取りフェーズにおける、並列スレッドの最大数を設定します。

設定可能な値:

* 正の整数。
* 0 または 1 — 無効。`SELECT`クエリは単一スレッドで実行されます。

<div id="max_http_get_redirects">
  ## max\_http\_get\_redirects
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

許可される HTTP GET リダイレクトの最大ホップ数です。悪意のあるサーバーによって、リクエストが想定外のサービスへリダイレクトされるのを防ぐための追加のセキュリティ対策です。\n\nこれは、外部サーバーが別のアドレスにリダイレクトし、そのアドレスが社内のインフラストラクチャ内にあるように見える場合に起こりえます。このとき、内部サーバーに HTTP リクエストを送ることで、認証を回避して内部ネットワーク上の内部 API にアクセスしたり、Redis や Memcached などの別のサービスに問い合わせたりできてしまう可能性があります。内部インフラストラクチャ (localhost 上で動作しているものを含む) が存在しない場合、またはそのサーバーを信頼している場合は、リダイレクトを許可しても安全です。ただし、URL が HTTPS ではなく HTTP を使用している場合は、リモートサーバーだけでなく、ISP や通信経路上にあるすべてのネットワークも信頼する必要がある点に注意してください。

Cloud でのデフォルト値: `10`.

<div id="max_limit_for_vector_search_queries">
  ## max\_limit\_for\_vector\_search\_queries
</div>

<SettingsInfoBlock type="UInt64" default_value="1000" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.5"},{"label": "1000"},{"label": "新しい設定"}]}]} />

LIMIT がこの設定値を超える SELECT クエリでは、ベクトル類似度索引を使用できません。ベクトル類似度索引でのメモリオーバーフローの防止に役立ちます。

<div id="max_number_of_partitions_for_independent_aggregation">
  ## max\_number\_of\_partitions\_for\_independent\_aggregation
</div>

<SettingsInfoBlock type="UInt64" default_value="128" />

最適化を適用するテーブル内のパーティションの最大数

<div id="max_os_cpu_wait_time_ratio_to_throw">
  ## max\_os\_cpu\_wait\_time\_ratio\_to\_throw
</div>

<SettingsInfoBlock type="Float" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.5"},{"label": "0"},{"label": "設定値が変更され、25.4 にバックポート"}]}, {"id": "row-2","items": [{"label": "25.4"},{"label": "0"},{"label": "新しい設定"}]}]} />

クエリを拒否するかどうかを判断するための、OS CPU の待機時間 (OSCPUWaitMicroseconds メトリクス) とビジー時間 (OSCPUVirtualTimeMicroseconds メトリクス) の最大比率。確率の計算には最小比率と最大比率の間で線形補間が使用され、この値では確率は 1 になります。

<div id="max_parallel_replicas">
  ## max\_parallel\_replicas
</div>

<SettingsInfoBlock type="NonZeroUInt64" default_value="1000" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.1"},{"label": "1000"},{"label": "デフォルトでは、最大1000個の並列レプリカを使用します。"}]}]} />

クエリの実行時に、各分片で使用するレプリカの最大数です。

設定可能な値:

* 正の整数。

**追加情報**

このオプションでは、使用する設定によって結果が異なる場合があります。

<div id="parallel-processing-using-sample-key">
  ### `SAMPLE` キーを使用した並列処理
</div>

クエリは、複数のサーバーで並列に実行することで、より高速に処理できる場合があります。ただし、次のような場合はクエリパフォーマンスが低下する可能性があります。

* パーティション化キー内でのサンプリングキーの位置によっては、効率的な範囲スキャンができません。
* テーブルにサンプリングキーを追加すると、他のカラムでのフィルタリング効率が低下します。
* サンプリングキーが、計算コストの高い式である場合。
* クラスターのレイテンシ分布にロングテールがあると、より多くのサーバーにクエリすることで、クエリ全体のレイテンシが増加します。

<div id="parallel-processing-using-parallel_replicas_custom_keyreferencesettingssession-settingsparallel-replicasparallel_replicas_custom_key">
  ### [parallel\_replicas\_custom\_key](/docs/ja/reference/settings/session-settings/parallel-replicas#parallel_replicas_custom_key)を使用した並列処理
</div>

この設定は、あらゆるレプリケートテーブルで有用です。

<div id="max_parsing_threads">
  ## max\_parsing\_threads
</div>

<SettingsInfoBlock type="MaxThreads" default_value="auto(N)" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.4"},{"label": "0"},{"label": "ファイルの並列パース時のスレッド数を制御する個別の設定を追加"}]}]} />

並列パースに対応した入力フォーマットでデータをパースする際の最大スレッド数です。デフォルトでは自動的に決定されます。

<div id="max_partition_size_to_drop">
  ## max\_partition\_size\_to\_drop
</div>

<SettingsInfoBlock type="UInt64" default_value="50000000000" />

クエリ時にパーティションを削除する際の制限です。値 `0` は、パーティションを制限なく削除できることを意味します。

Cloud でのデフォルト値: 1 TB。

<Note>
  このクエリ設定は、対応するサーバー設定を上書きします。詳しくは [max\_partition\_size\_to\_drop](/docs/ja/reference/settings/server-settings/settings#max_partition_size_to_drop) を参照してください
</Note>

<div id="max_parts_to_move">
  ## max\_parts\_to\_move
</div>

<SettingsInfoBlock type="UInt64" default_value="1000" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.10"},{"label": "1000"},{"label": "新しい設定"}]}]} />

1回のクエリで移動できるパーツ数を制限します。0 は無制限を意味します。

<div id="max_projection_rows_to_use_projection_index">
  ## max\_projection\_rows\_to\_use\_projection\_index
</div>

<SettingsInfoBlock type="UInt64" default_value="1000000" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.11"},{"label": "1000000"},{"label": "新しい設定"}]}]} />

プロジェクション索引から読み取る行数がこのしきい値以下の場合、ClickHouse はクエリ実行時にプロジェクション索引の適用を試みます。

<div id="max_query_size">
  ## max\_query\_size
</div>

<SettingsInfoBlock type="UInt64" default_value="262144" />

SQL パーサーが解析するクエリ文字列の最大バイト数です。
INSERT クエリの VALUES 句内のデータは、別個のストリームパーサー (O(1) の RAM を使用) によって処理されるため、この制限の影響を受けません。

<Note>
  `max_query_size` は SQL クエリ内 (例: `SELECT now() SETTINGS max_query_size=10000`) では設定できません。これは、ClickHouse がクエリを解析するためのバッファを確保する必要があり、そのバッファサイズは `max_query_size` 設定によって決まるためです。そのため、この設定はクエリの実行前に行っておく必要があります。
</Note>

<div id="max_recursive_cte_evaluation_depth">
  ## max\_recursive\_cte\_evaluation\_depth
</div>

<SettingsInfoBlock type="UInt64" default_value="1000" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.4"},{"label": "1000"},{"label": "再帰CTEの評価深さの上限値"}]}]} />

再帰CTEの評価深さの上限値

<div id="max_replica_delay_for_distributed_queries">
  ## max\_replica\_delay\_for\_distributed\_queries
</div>

<SettingsInfoBlock type="UInt64" default_value="300" />

分散クエリで、遅延しているレプリカを使用しないようにします。[レプリケーション](/docs/ja/reference/engines/table-engines/mergetree-family/replication) を参照してください。

時間を秒単位で設定します。レプリカの遅延が設定した値以上の場合、そのレプリカは使用されません。

設定可能な値:

* 正の整数。
* 0 — レプリカの遅延はチェックされません。

ゼロ以外の遅延があるレプリカを一切使用しないようにするには、このパラメータを 1 に設定します。

レプリケートテーブルを参照する分散テーブルに対して `SELECT` を実行する際に使用されます。

<div id="max_reverse_dictionary_lookup_cache_size_bytes">
  ## max\_reverse\_dictionary\_lookup\_cache\_size\_bytes
</div>

<SettingsInfoBlock type="UInt64" default_value="104857600" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.12"},{"label": "104857600"},{"label": "新しい設定。関数 `dictGetKeys` が使用する、クエリごとの逆引き Dictionary ルックアップキャッシュの最大サイズ（バイト単位）。このキャッシュには、同じクエリ内で Dictionary を再スキャンしないよう、属性値ごとにシリアライズされたキー Tuple が保存されます。"}]}]} />

関数 `dictGetKeys` が使用する、クエリごとの逆引き Dictionary ルックアップキャッシュの最大サイズ (バイト単位) 。このキャッシュには、同じクエリ内で Dictionary を再スキャンしないよう、属性値ごとにシリアライズされたキー Tuple が保存されます。上限に達すると、エントリは LRU 方式で追い出されます。キャッシュを無効にするには 0 に設定します。

<div id="max_sessions_for_user">
  ## max\_sessions\_for\_user
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

ClickHouse server で、認証済みユーザーごとに同時に使用できるセッションの最大数です。

例:

```xml theme={null}
<profiles>
    <single_session_profile>
        <max_sessions_for_user>1</max_sessions_for_user>
    </single_session_profile>
    <two_sessions_profile>
        <max_sessions_for_user>2</max_sessions_for_user>
    </two_sessions_profile>
    <unlimited_sessions_profile>
        <max_sessions_for_user>0</max_sessions_for_user>
    </unlimited_sessions_profile>
</profiles>
<users>
    <!-- User Alice can connect to a ClickHouse server no more than once at a time. -->
    <Alice>
        <profile>single_session_user</profile>
    </Alice>
    <!-- User Bob can use 2 simultaneous sessions. -->
    <Bob>
        <profile>two_sessions_profile</profile>
    </Bob>
    <!-- User Charles can use arbitrarily many of simultaneous sessions. -->
    <Charles>
        <profile>unlimited_sessions_profile</profile>
    </Charles>
</users>
```

設定可能な値:

* 正の整数
* `0` - 同時セッション数は無制限 (デフォルト)

<div id="max_subquery_depth">
  ## max\_subquery\_depth
</div>

<SettingsInfoBlock type="UInt64" default_value="100" />

クエリ内でネストされたサブクエリの数が指定した値を超えると、
例外をスローします。

<Tip>
  これにより、クラスターのユーザーが過度に複雑なクエリを作成しないようにするための
  妥当性チェックとして利用できます。
</Tip>

<div id="max_table_size_to_drop">
  ## max\_table\_size\_to\_drop
</div>

<SettingsInfoBlock type="UInt64" default_value="50000000000" />

クエリ実行時にテーブルを削除する際の制限です。値 `0` は、すべてのテーブルを制限なく削除できることを意味します。

Cloud でのデフォルト値: 1 TB。

<Note>
  このクエリ設定は、対応するサーバー設定を上書きします。詳細は [max\_table\_size\_to\_drop](/docs/ja/reference/settings/server-settings/settings#max_table_size_to_drop) を参照してください。
</Note>

<div id="max_untracked_memory">
  ## max\_untracked\_memory
</div>

<SettingsInfoBlock type="UInt64" default_value="4194304" />

小さな割り当てと解放はスレッドローカル変数にまとめて保持され、量 (絶対値) が指定した値を超えた場合にのみ追跡またはプロファイリングされます。値が `memory_profiler_step` より大きい場合は、実質的に `memory_profiler_step` に引き下げられます。

<div id="max_wkb_geometry_elements">
  ## max\_wkb\_geometry\_elements
</div>

<SettingsInfoBlock type="UInt64" default_value="1000000" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.4"},{"label": "1000000"},{"label": "不正なデータによる過剰なメモリ割り当てを防ぐため、WKB ジオメトリのパース時の要素数を制限する新しい設定。"}]}]} />

`readWKB` および関連関数でパースする際、単一の WKB ジオメトリ要素内で許可される Point、Ring、または Polygon の最大数です。これにより、不正な WKB データによる過剰なメモリ割り当てを防ぎます。ハードコードされた上限 (1 億) を使用するには、0 に設定します。
