> ## 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.

# s3_* 세션 설정

> s3_* 자동 생성 그룹의 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>;
};

이러한 설정은 [system.settings](/docs/ko/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" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.3"},{"label": "1000"},{"label": "s3 연결 타임아웃을 위한 새로운 전용 설정 추가"}]}]} />

S3 디스크의 호스트에 대한 연결 타임아웃입니다.

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

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

S3 엔진 테이블에서 각 삽입 시 새 파일을 생성할지 여부를 설정합니다. 활성화하면 각 삽입마다 key를 사용해 다음 패턴과 유사한 새 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가 설정되지 않은 경우 각 삽입마다 suffix를 사용해(두 번째 파일부터) 새 파일을 생성합니다.

자세한 내용은 [여기](/docs/ko/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가 체크섬으로 검증하며, HTTPS를 통해 S3에 접근하는 경우 네트워크 전송 중 무결성은 이미 TLS 계층에서 보장됩니다. 다만 S3에서 추가 체크섬을 사용하면 심층 방어 효과를 얻을 수 있습니다.

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

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.6"},{"label": "0"},{"label": "S3 table engine에서 요청한 파일이 존재하지 않을 때 예외를 발생시키는 대신 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" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.12"},{"label": "1000"},{"label": "새로운 설정"}]}]} />

글롭 목록 조회 대신 파일 반복 처리에 사용하기 위해 쿼리 필터에서 추출할 수 있는 `_path` 값의 최대 개수입니다.
0은 비활성화를 의미합니다.

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

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

S3로 데이터를 송수신할 때의 유휴 상태 타임아웃입니다. 단일 TCP read 또는 write 호출이 이 시간 동안 블로킹되면 실패합니다.

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

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.11"},{"label": "1"},{"label": "더 나은 UX를 제공할 수 있기를 바랍니다"}]}]} />

[S3](/docs/ko/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" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.5"},{"label": "1"},{"label": "새로운 설정"}]}]} />

`true`로 설정하면 동일한 백업 엔드포인트로 S3 요청을 수행하는 스레드 중 하나에서
socket timeout과 같은 재시도 가능한 네트워크 오류가 발생한 후,
해당 엔드포인트로 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 요청으로 일치하는 파일을 하나도 찾지 못하면 오류를 발생시킵니다

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

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

S3 엔진 테이블에서 삽입 전에 truncate를 수행할지 설정합니다. 비활성화하면 S3 객체가 이미 존재할 경우 삽입을 시도할 때 예외가 발생합니다.

가능한 값:

* 0 — `INSERT` 쿼리는 새 파일을 생성하거나, 파일이 이미 존재하고 s3\_create\_new\_file\_on\_insert가 설정되어 있지 않으면 실패합니다.
* 1 — `INSERT` 쿼리는 파일의 기존 내용을 새 데이터로 대체합니다.

자세한 내용은 [여기](/docs/ko/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" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.4"},{"label": "auto"},{"label": "새 설정입니다."}]}]} />

S3 endpoint 스타일을 강제로 지정합니다. 가능한 값: auto, virtual\_hosted, path.

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

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

`true`로 설정하면 모든 S3 요청에 대해 처음 두 번의 시도는 낮은 송신 및 수신 타임아웃으로 수행됩니다.
`false`로 설정하면 모든 시도가 동일한 타임아웃으로 수행됩니다.
