> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-postgresql-tls-support.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# s3_* セッション設定

> s3_* の生成グループに含まれる ClickHouse のセッション設定。

export const VersionHistory = ({rows = []}) => {
  if (rows.length === 0) {
    return null;
  }
  const headers = ["バージョン", "デフォルト値", "コメント"];
  const border = "1px solid rgba(128, 128, 128, 0.3)";
  const cell = {
    border,
    padding: "0.25rem 0.5rem",
    textAlign: "start",
    verticalAlign: "top"
  };
  return <details className="not-prose" style={{
    border,
    borderRadius: "0.5rem",
    margin: "0.5rem 0",
    padding: "0.5rem 0.75rem",
    fontSize: "0.8125rem",
    lineHeight: "1.125rem"
  }}>
      <summary style={{
    cursor: "pointer",
    fontWeight: 600,
    opacity: 0.72
  }}>
        バージョン履歴
      </summary>
      <table style={{
    borderCollapse: "collapse",
    width: "100%",
    margin: "0.5rem 0 0"
  }}>
        <thead>
          <tr>
            {headers.map(header => <th key={header} style={{
    ...cell,
    fontWeight: 600,
    opacity: 0.72
  }}>
                {header}
              </th>)}
          </tr>
        </thead>
        <tbody>
          {rows.map((row, row_index) => <tr key={row.id ?? row_index}>
              {(row.items ?? []).map((item, item_index) => <td key={item_index} style={{
    ...cell,
    overflowWrap: "anywhere"
  }}>
                  {item?.label}
                </td>)}
            </tr>)}
        </tbody>
      </table>
    </details>;
};

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>;
};

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

<div id="s3_check_objects_after_upload">
  ## s3\_check\_objects\_after\_upload
</div>

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

アップロードが正常に完了したことを確認するため、S3 にアップロードされた各オブジェクトを HEAD リクエストで確認します

<div id="s3_connect_timeout_ms">
  ## s3\_connect\_timeout\_ms
</div>

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

S3 ディスクのホストへの接続タイムアウト。

<div id="s3_create_new_file_on_insert">
  ## s3\_create\_new\_file\_on\_insert
</div>

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

S3エンジンテーブルで、各 insert ごとに新しいファイルを作成するかどうかを有効または無効にします。有効にすると、insert のたびに、次のようなパターンでキー付きの新しい S3 オブジェクトが作成されます。

initial: `data.Parquet.gz` -> `data.1.Parquet.gz` -> `data.2.Parquet.gz`, など。

設定可能な値:

* 0 — `INSERT` クエリは新しいファイルを作成します。ファイルがすでに存在し、s3\_truncate\_on\_insert が設定されていない場合は失敗します。
* 1 — `INSERT` クエリは、s3\_truncate\_on\_insert が設定されていない場合、各 insert ごとに接尾辞を使用して新しいファイルを作成します (2 回目以降) 。

詳細は[こちら](/ja/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse#inserting-data)を参照してください。

<div id="s3_disable_checksum">
  ## s3\_disable\_checksum
</div>

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

ファイルを S3 に送信する際にチェックサムを計算しません。これにより、ファイルに対する過剰な処理パスを避け、書き込みを高速化できます。MergeTree テーブルのデータはどうせ ClickHouse 側でチェックサムが計算されるため、通常は問題ありません。また、S3 へのアクセスに HTTPS を使用している場合は、ネットワーク経由での転送中の整合性は TLS レイヤーですでに確保されます。ただし、S3 で追加のチェックサムを使用すると、多層防御になります。

<div id="s3_ignore_file_doesnt_exist">
  ## s3\_ignore\_file\_doesnt\_exist
</div>

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

特定のキーの読み込み時に、ファイルが存在しない場合はその不在を無視します。

設定可能な値:

* 1 — `SELECT` は空の結果を返します。
* 0 — `SELECT` は例外をスローします。

<div id="s3_list_object_keys_size">
  ## s3\_list\_object\_keys\_size
</div>

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

ListObject リクエストで一度に返されるファイルの最大数

<div id="s3_min_upload_part_size">
  ## s3\_min\_upload\_part\_size
</div>

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

S3 へのマルチパートアップロード時にアップロードする各パートの最小サイズです。

<div id="s3_path_filter_limit">
  ## s3\_path\_filter\_limit
</div>

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

glob による一覧取得の代わりにファイルの反復処理で使用するため、クエリフィルターから抽出できる `_path` 値の最大数です。
0 は無効を意味します。

<div id="s3_request_timeout_ms">
  ## s3\_request\_timeout\_ms
</div>

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

S3 との間でデータを送受信する際のアイドルタイムアウトです。1 回の TCP read または write 呼び出しがこの時間以上ブロックされると、失敗します。

<div id="s3_skip_empty_files">
  ## s3\_skip\_empty\_files
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

[S3](/ja/reference/engines/table-engines/integrations/s3) エンジンテーブルで、空のファイルをスキップする機能を有効または無効にします。

設定可能な値:

* 0 — 空のファイルが要求されたフォーマットと互換性がない場合、`SELECT` は例外をスローします。
* 1 — 空のファイルに対して、`SELECT` は空の結果を返します。

<div id="s3_slow_all_threads_after_network_error">
  ## s3\_slow\_all\_threads\_after\_network\_error
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

`true` に設定すると、同じバックアップ用エンドポイントへの S3 リクエストを実行しているすべてのスレッドは、
いずれか 1 つの S3 リクエストでソケットタイムアウトなどの再試行可能なネットワークエラーが発生した後、
すべて速度が抑制されます。
`false` に設定すると、各スレッドは他のスレッドとは独立して S3 リクエストのバックオフを処理します。

<div id="s3_strict_upload_part_size">
  ## s3\_strict\_upload\_part\_size
</div>

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

S3 への マルチパートアップロード 時にアップロードする パート の厳密なサイズです (実装によっては、可変サイズの パート をサポートしていません) 。

<div id="s3_throw_on_zero_files_match">
  ## s3\_throw\_on\_zero\_files\_match
</div>

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

ListObjects リクエストで一致するファイルが1つもない場合、エラーを発生させます

<div id="s3_truncate_on_insert">
  ## s3\_truncate\_on\_insert
</div>

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

S3 エンジンテーブルで、INSERT 前に truncate するかどうかを有効または無効にします。無効な場合、S3 オブジェクト がすでに存在していると、INSERT を試行した際に例外がスローされます。

設定可能な値:

* 0 — `INSERT` クエリは新しいファイルを作成します。ファイルがすでに存在し、s3\_create\_new\_file\_on\_insert が設定されていない場合は失敗します。
* 1 — `INSERT` クエリは、ファイルの既存の内容を新しいデータで置き換えます。

詳しくは[こちら](/ja/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse#inserting-data)を参照してください。

<div id="s3_uri_style">
  ## s3\_uri\_style
</div>

<SettingsInfoBlock type="S3UriStyle" default_value="auto" />

S3エンドポイントのスタイルを強制します。設定可能な値: auto、virtual\_hosted、path。

<div id="s3_use_adaptive_timeouts">
  ## s3\_use\_adaptive\_timeouts
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

`true` に設定すると、すべての S3 リクエストで、最初の 2 回の試行は短い送信／受信タイムアウトで実行されます。
`false` に設定すると、すべての試行が同一のタイムアウトで実行されます。
