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

# enable_* 세션 설정

> enable_*로 생성된 그룹의 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/ko/reference/system-tables/settings)에서 확인할 수 있으며, [소스 코드](https://github.com/ClickHouse/ClickHouse/blob/master/src/Core/Settings.cpp)를 기반으로 자동 생성됩니다.

<div id="enable_adaptive_memory_spill_scheduler">
  ## enable\_adaptive\_memory\_spill\_scheduler
</div>

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.2"},{"label": "0"},{"label": "새 설정입니다. 메모리 데이터를 외부 스토리지로 적응적으로 spill할 수 있도록 설정합니다."}]}]} />

프로세서가 데이터를 외부 스토리지로 적응적으로 spill하도록 트리거합니다. 현재는 grace join만 지원합니다.

<div id="enable_add_distinct_to_in_subqueries">
  ## enable\_add\_distinct\_to\_in\_subqueries
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.8"},{"label": "0"},{"label": "분산 IN 서브쿼리에 대해 전송되는 임시 테이블의 크기를 줄이기 위한 새로운 설정."}]}]} />

`IN` 서브쿼리에서 `DISTINCT`를 활성화합니다. 이 설정은 절충이 필요한 설정입니다. 활성화하면 고유한 값만 전송되므로, 분산 `IN` 서브쿼리에 대해 전송되는 임시 테이블의 크기를 크게 줄이고 세그먼트 간 데이터 전송 속도도 크게 높일 수 있습니다.
다만 이 설정을 활성화하면 중복 제거(`DISTINCT`)를 수행해야 하므로 각 노드에서 추가 병합 작업이 발생합니다. 네트워크 전송이 병목이고 추가 병합 비용을 감수할 수 있다면 이 설정을 사용하십시오.

<div id="enable_automatic_decision_for_merging_across_partitions_for_final">
  ## enable\_automatic\_decision\_for\_merging\_across\_partitions\_for\_final
</div>

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

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

설정된 경우, 파티션 키 표현식이 deterministic이고 파티션 키 표현식에 사용된 모든 컬럼이 프라이머리 키에 포함되면 ClickHouse가 이 최적화를 자동으로 활성화합니다.
이 자동 판별을 통해 동일한 기본 키 값을 가진 행은 항상 동일한 파티션에 속하게 되므로, 파티션 간 머지를 피해도 안전합니다.

<div id="enable_early_constant_folding">
  ## enable\_early\_constant\_folding
</div>

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

함수와 서브쿼리의 결과를 분석하고, 여기에 상수가 있으면 쿼리를 재작성하는 쿼리 최적화를 활성화합니다

<div id="enable_extended_results_for_datetime_functions">
  ## enable\_extended\_results\_for\_datetime\_functions
</div>

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

확장된 범위의 `Date32` 타입(`Date` 타입 대비) 또는 확장된 범위의 `DateTime64` 타입(`DateTime` 타입 대비) 결과를 반환하도록 설정하거나 해제합니다.

Possible values:

* `0` — 함수는 모든 인수 타입에 대해 `Date` 또는 `DateTime`을 반환합니다.
* `1` — 함수는 `Date32` 또는 `DateTime64` 인수에 대해서는 `Date32` 또는 `DateTime64`를 반환하고, 그 외의 경우에는 `Date` 또는 `DateTime`을 반환합니다.

아래 표는 다양한 날짜-시간 함수에서 이 설정이 어떻게 동작하는지 보여줍니다.

| Function                  | `enable_extended_results_for_datetime_functions = 0`                  | `enable_extended_results_for_datetime_functions = 1`                                                             |
| ------------------------- | --------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| `toStartOfYear`           | 반환값은 `Date` 또는 `DateTime`입니다                                          | `Date`/`DateTime` 입력에는 `Date`/`DateTime`을 반환합니다<br />`Date32`/`DateTime64` 입력에는 `Date32`/`DateTime64`를 반환합니다     |
| `toStartOfISOYear`        | `Date` 또는 `DateTime`을 반환                                              | `Date`/`DateTime` 입력 시 `Date`/`DateTime`을 반환합니다<br />`Date32`/`DateTime64` 입력 시 `Date32`/`DateTime64`를 반환합니다     |
| `toStartOfQuarter`        | `Date` 또는 `DateTime`을 반환                                              | `Date`/`DateTime` 입력인 경우 `Date`/`DateTime`를 반환합니다<br />`Date32`/`DateTime64` 입력인 경우 `Date32`/`DateTime64`를 반환합니다 |
| `toStartOfMonth`          | `Date` 또는 `DateTime`을 반환합니다                                           | `Date`/`DateTime` 입력에는 `Date`/`DateTime`을 반환합니다<br />`Date32`/`DateTime64` 입력에는 `Date32`/`DateTime64`를 반환합니다     |
| `toStartOfWeek`           | 반환값은 `Date` 또는 `DateTime`입니다                                          | `Date`/`DateTime` 입력에는 `Date`/`DateTime`을 반환합니다<br />`Date32`/`DateTime64` 입력에는 `Date32`/`DateTime64`를 반환합니다     |
| `toLastDayOfWeek`         | `Date` 또는 `DateTime`을 반환합니다                                           | `Date`/`DateTime` 입력 시 `Date`/`DateTime`를 반환합니다<br />`Date32`/`DateTime64` 입력 시 `Date32`/`DateTime64`를 반환합니다     |
| `toLastDayOfMonth`        | `Date` 또는 `DateTime`을 반환합니다                                           | `Date`/`DateTime` 입력에는 `Date`/`DateTime`을 반환합니다<br />`Date32`/`DateTime64` 입력에는 `Date32`/`DateTime64`를 반환합니다     |
| `toMonday`                | `Date` 또는 `DateTime`을 반환합니다                                           | `Date`/`DateTime` 입력 시 `Date`/`DateTime`을 반환합니다<br />`Date32`/`DateTime64` 입력 시 `Date32`/`DateTime64`를 반환합니다     |
| `toStartOfDay`            | `DateTime`을 반환합니다<br />*참고: 1970-2149 범위를 벗어나는 값은 잘못된 결과를 반환합니다*      | `Date`/`DateTime` 입력에는 `DateTime`을 반환합니다<br />`Date32`/`DateTime64` 입력에는 `DateTime64`를 반환합니다                     |
| `toStartOfHour`           | `DateTime`을 반환합니다.<br />*참고: 1970-2149 범위를 벗어난 값에서는 잘못된 결과가 반환됩니다.*   | `Date`/`DateTime` 입력에는 `DateTime`을 반환합니다<br />`Date32`/`DateTime64` 입력에는 `DateTime64`를 반환합니다                     |
| `toStartOfFifteenMinutes` | `DateTime` 반환<br />*참고: 1970-2149 범위를 벗어나는 값에는 잘못된 결과가 반환됩니다*         | `Date`/`DateTime` 입력에는 `DateTime`을 반환합니다<br />`Date32`/`DateTime64` 입력에는 `DateTime64`를 반환합니다                     |
| `toStartOfTenMinutes`     | 반환값은 `DateTime`입니다<br />*참고: 1970-2149 범위를 벗어나는 값에서는 잘못된 결과가 반환됩니다*   | `Date`/`DateTime` 입력에는 `DateTime`을 반환합니다<br />`Date32`/`DateTime64` 입력에는 `DateTime64`를 반환합니다                     |
| `toStartOfFiveMinutes`    | `DateTime`을 반환합니다<br />*참고: 1970-2149 범위를 벗어나는 값에 대해서는 잘못된 결과가 반환됩니다* | `Date`/`DateTime` 입력에는 `DateTime`을 반환<br />`Date32`/`DateTime64` 입력에는 `DateTime64`를 반환                           |
| `toStartOfMinute`         | `DateTime`을 반환<br />*참고: 1970-2149 범위를 벗어나는 값에는 잘못된 결과를 반환합니다*        | `Date`/`DateTime` 입력에는 `DateTime`을 반환합니다<br />`Date32`/`DateTime64` 입력에는 `DateTime64`를 반환합니다                     |
| `timeSlot`                | `DateTime`을 반환합니다<br />*참고: 1970-2149 범위를 벗어나는 값에는 잘못된 결과가 반환됩니다*     | `Date`/`DateTime` 입력의 경우 `DateTime`을 반환<br />`Date32`/`DateTime64` 입력의 경우 `DateTime64`를 반환                       |

<div id="enable_full_text_index">
  ## enable\_full\_text\_index
</div>

**별칭**: `allow_experimental_full_text_index`

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.2"},{"label": "1"},{"label": "텍스트 인덱스는 이제 일반 제공 상태입니다."}]}, {"id": "row-2","items": [{"label": "25.12"},{"label": "0"},{"label": "텍스트 인덱스가 베타로 전환되었습니다."}]}]} />

true로 설정하면 텍스트 인덱스 사용이 허용됩니다.

<div id="enable_global_with_statement">
  ## enable\_global\_with\_statement
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "21.2"},{"label": "1"},{"label": "기본적으로 WITH 문을 UNION 쿼리와 모든 서브쿼리에 전파합니다"}]}]} />

WITH 문을 UNION 쿼리와 모든 서브쿼리에 전파합니다

<div id="enable_hdfs_pread">
  ## enable\_hdfs\_pread
</div>

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

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

HDFS 파일에 `pread`를 사용할지 설정합니다. 기본적으로 `hdfsPread`를 사용합니다. 비활성화하면 HDFS 파일을 읽을 때 `hdfsRead`와 `hdfsSeek`를 사용합니다.

<div id="enable_http_compression">
  ## enable\_http\_compression
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.10"},{"label": "1"},{"label": "대체로 유용합니다"}]}]} />

HTTP 요청 응답에서 데이터 압축을 활성화하거나 비활성화합니다.

자세한 내용은 [HTTP 인터페이스 설명](/docs/ko/concepts/features/interfaces/http)을 참조하십시오.

가능한 값:

* 0 — 비활성화됨.
* 1 — 활성화됨.

<div id="enable_identifier_resolve_cache">
  ## enable\_identifier\_resolve\_cache
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.6"},{"label": "1"},{"label": "쿼리 분석기에서 식별자 해석 캐시를 제어하는 새로운 설정"}]}]} />

쿼리 분석기에서 식별자 해석 캐시를 활성화합니다. 이 캐시는 해석된 별칭(alias) 노드를 공유하여 동일한 별칭이 여러 번 참조될 때 AST가 과도하게 증가하는 것을 방지합니다. 잘못된 결과가 의심되면 캐싱을 비활성화하려면 `false`로 설정하십시오.

<div id="enable_job_stack_trace">
  ## enable\_job\_stack\_trace
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.6"},{"label": "0"},{"label": "성능 오버헤드를 방지하기 위해 이 설정은 기본적으로 비활성화됩니다."}]}, {"id": "row-2","items": [{"label": "24.11"},{"label": "0"},{"label": "작업 스케줄링에서 스택 트레이스를 수집할 수 있도록 합니다. 성능 오버헤드를 방지하기 위해 기본적으로 비활성화됩니다."}]}]} />

작업 실행 결과 예외가 발생하면 작업 생성자의 스택 트레이스를 출력합니다. 성능 오버헤드를 방지하기 위해 기본적으로 비활성화됩니다.

<div id="enable_lazy_columns_replication">
  ## enable\_lazy\_columns\_replication
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.11"},{"label": "1"},{"label": "기본적으로 JOIN 및 ARRAY JOIN에서 컬럼 지연 복제를 활성화합니다"}]}, {"id": "row-2","items": [{"label": "25.10"},{"label": "0"},{"label": "JOIN 및 ARRAY JOIN에서 컬럼 지연 복제를 활성화하는 설정을 추가합니다"}]}]} />

JOIN 및 ARRAY JOIN에서 컬럼 지연 복제를 활성화합니다. 이를 통해 메모리에서 동일한 행을 여러 번 불필요하게 복사하지 않아도 됩니다.

<div id="enable_materialized_cte">
  ## enable\_materialized\_cte
</div>

<ExperimentalBadge />

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

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

구체화된 공통 테이블 표현식을 활성화합니다. 이 설정은 enable\_global\_with\_statement보다 우선 적용됩니다.

<div id="enable_memory_bound_merging_of_aggregation_results">
  ## enable\_memory\_bound\_merging\_of\_aggregation\_results
</div>

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

집계에 메모리 제한 기반 병합 전략을 사용합니다.

<div id="enable_multiple_prewhere_read_steps">
  ## enable\_multiple\_prewhere\_read\_steps
</div>

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

WHERE의 더 많은 조건을 PREWHERE로 이동하고, AND로 결합된 여러 조건이 있으면 디스크 읽기와 필터링을 여러 단계에 걸쳐 수행합니다

<div id="enable_named_columns_in_function_tuple">
  ## enable\_named\_columns\_in\_function\_tuple
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.7"},{"label": "0"},{"label": "모든 이름이 고유하고 따옴표 없이 식별자로 취급할 수 있는 경우 tuple() 함수에서 이름이 지정된 Tuple을 생성합니다."}]}, {"id": "row-2","items": [{"label": "24.10"},{"label": "0"},{"label": "사용성 개선 사항이 있을 때까지 비활성화됨"}]}]} />

모든 이름이 고유하고 따옴표 없이 식별자로 취급할 수 있는 경우 tuple() 함수에서 이름이 지정된 Tuple을 생성합니다.

<div id="enable_order_by_all">
  ## enable\_order\_by\_all
</div>

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

`ORDER BY ALL` 구문을 사용한 정렬 기능을 활성화하거나 비활성화합니다. 자세한 내용은 [ORDER BY](/docs/ko/reference/statements/select/order-by)를 참조하십시오.

가능한 값:

* 0 — ORDER BY ALL을 비활성화합니다.
* 1 — ORDER BY ALL을 활성화합니다.

**예시**

쿼리:

```sql theme={null}
CREATE TABLE TAB(C1 Int, C2 Int, ALL Int) ENGINE=Memory();

INSERT INTO TAB VALUES (10, 20, 30), (20, 20, 10), (30, 10, 20);

SELECT * FROM TAB ORDER BY ALL; -- returns an error that ALL is ambiguous

SELECT * FROM TAB ORDER BY ALL SETTINGS enable_order_by_all = 0;
```

결과:

```text theme={null}
┌─C1─┬─C2─┬─ALL─┐
│ 20 │ 20 │  10 │
│ 30 │ 10 │  20 │
│ 10 │ 20 │  30 │
└────┴────┴─────┘
```

<div id="enable_parallel_blocks_marshalling">
  ## enable\_parallel\_blocks\_marshalling
</div>

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

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

분산 쿼리에만 적용됩니다. 활성화하면 블록은 initiator로 보내기 전후에 파이프라인 스레드에서 (역)직렬화 및 (역)압축됩니다(즉, 기본 설정보다 더 높은 병렬성으로 처리됩니다).

<div id="enable_parsing_to_custom_serialization">
  ## enable\_parsing\_to\_custom\_serialization
</div>

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

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

true인 경우, 테이블에서 가져온 직렬화 힌트에 따라 데이터를 사용자 지정 직렬화(예: Sparse)가 적용된 컬럼으로 직접 파싱할 수 있습니다.

<div id="enable_producing_buckets_out_of_order_in_aggregation">
  ## enable\_producing\_buckets\_out\_of\_order\_in\_aggregation
</div>

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

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

메모리 효율적인 집계(`distributed_aggregation_memory_efficient` 참고)에서 버킷이 순서와 다르게 생성되도록 허용합니다.
이 설정은 집계 버킷 크기가 치우쳐 있을 때, 레플리카가 id가 낮은 무거운 버킷 일부를 아직 처리하는 동안 id가 더 높은 버킷을 initiator로 전송할 수 있게 하여 성능을 향상시킬 수 있습니다.
단점은 메모리 사용량이 더 늘어날 수 있다는 점입니다.

<div id="enable_reads_from_query_cache">
  ## enable\_reads\_from\_query\_cache
</div>

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

활성화되면 `SELECT` 쿼리의 결과를 [쿼리 캐시](/docs/ko/concepts/features/performance/caches/query-cache)에서 가져옵니다.

가능한 값:

* 0 - 비활성화
* 1 - 활성화

<div id="enable_s3_requests_logging">
  ## enable\_s3\_requests\_logging
</div>

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

S3 request에 대한 매우 상세한 로깅을 활성화합니다. Debug 용도로만 사용하는 것이 좋습니다.

<div id="enable_scalar_subquery_optimization">
  ## enable\_scalar\_subquery\_optimization
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "19.18"},{"label": "1"},{"label": "큰 스칼라 값의 직렬화/역직렬화를 스칼라 서브쿼리에서 방지하고, 가능하면 동일한 서브쿼리를 두 번 이상 실행하지 않도록 합니다"}]}]} />

true로 설정하면 스칼라 서브쿼리에서 큰 스칼라 값의 직렬화/역직렬화를 방지하고, 가능하면 동일한 서브쿼리를 두 번 이상 실행하지 않도록 합니다.

<div id="enable_scopes_for_with_statement">
  ## enable\_scopes\_for\_with\_statement
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.7"},{"label": "1"},{"label": "이전 분석기와의 호환성을 유지하기 위한 새로운 설정."}]}, {"id": "row-2","items": [{"label": "25.6"},{"label": "1"},{"label": "이전 분석기와의 호환성을 유지하기 위한 새로운 설정."}]}, {"id": "row-3","items": [{"label": "25.5"},{"label": "1"},{"label": "이전 분석기와의 호환성을 유지하기 위한 새로운 설정."}]}, {"id": "row-4","items": [{"label": "25.4"},{"label": "1"},{"label": "이전 분석기와의 호환성을 유지하기 위한 새로운 설정."}]}]} />

비활성화하면 상위 WITH 절의 선언은 현재 스코프에 선언된 것과 같은 스코프에서 동작합니다.

이는 이전 분석기가 실행할 수 있었던 일부 유효하지 않은 쿼리를 실행할 수 있도록 하기 위한 분석기의 compatibility 설정이라는 점에 유의하십시오.

<div id="enable_sharding_aggregator">
  ## enable\_sharding\_aggregator
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.6"},{"label": "0"},{"label": "그룹화 키를 해시하여 행을 여러 스레드에 분산하는 세그먼트 분할 `GROUP BY` 최적화를 활성화하는 새로운 설정입니다. 이를 통해 각 스레드는 머지 단계 없이 서로 겹치지 않는 키 부분 집합을 집계합니다. 이 방식은 데이터가 고르게 분포된 카디널리티가 높은 키에서 효율적입니다."}]}]} />

그룹화 키를 해시하여 행을 여러 스레드에 분산하는 세그먼트 분할 `GROUP BY` 최적화를 활성화합니다. 이를 통해 각 스레드는 머지 단계 없이 서로 겹치지 않는 키 부분 집합을 집계합니다.

이 방식은 데이터가 고르게 분포된 카디널리티가 높은 키에서 효율적이지만, 키 분포가 심하게 치우쳐 있거나 서로 다른 키가 매우 적은 쿼리에서는 성능이 떨어질 수 있습니다.

가능한 값:

* 0 — 세그먼트 분할 집계 최적화가 비활성화됩니다.
* 1 — 세그먼트 분할 집계 최적화가 활성화됩니다.

<div id="enable_shared_storage_snapshot_in_query">
  ## enable\_shared\_storage\_snapshot\_in\_query
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.6"},{"label": "0"},{"label": "쿼리에서 스토리지 스냅샷을 공유하기 위한 새로운 설정"}]}, {"id": "row-2","items": [{"label": "25.12"},{"label": "1"},{"label": "기본적으로 쿼리에서 스토리지 스냅샷 공유를 활성화"}]}]} />

활성화하면 단일 쿼리 내의 모든 서브쿼리가 각 테이블에 대해 동일한 StorageSnapshot을 공유합니다.
따라서 동일한 테이블에 여러 번 접근하더라도 쿼리 전체에서 일관된 데이터 뷰가 보장됩니다.

이는 데이터 파트(data part)의 내부 일관성이 중요한 쿼리에서 필요합니다. 예시:

```sql theme={null}
SELECT
    count()
FROM events
WHERE (_part, _part_offset) IN (
    SELECT _part, _part_offset
    FROM events
    WHERE user_id = 42
)
```

이 설정이 없으면 외부 쿼리와 내부 쿼리가 서로 다른 데이터 스냅샷을 기준으로 처리될 수 있어, 잘못된 결과가 나올 수 있습니다.

<Note>
  이 설정을 활성화하면 계획 단계가 완료된 뒤 스냅샷에서 불필요한 데이터 파트를 제거하는 최적화가 비활성화됩니다.
  따라서 장시간 실행되는 쿼리는 실행되는 내내 더 이상 사용되지 않는 파트를 붙잡고 있을 수 있으며, 이로 인해 파트 정리가 지연되고 스토리지 부담이 커질 수 있습니다.

  현재 이 설정은 MergeTree 엔진 계열의 테이블에만 적용됩니다.
</Note>

가능한 값:

* 0 - 비활성화됨
* 1 - 활성화됨

<div id="enable_sharing_sets_for_mutations">
  ## enable\_sharing\_sets\_for\_mutations
</div>

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

IN 서브쿼리용으로 생성된 Set 객체를 동일한 뮤테이션의 여러 작업 간에 공유할 수 있도록 합니다. 이렇게 하면 메모리 사용량과 CPU 사용량을 줄일 수 있습니다.

<div id="enable_streaming_queries">
  ## enable\_streaming\_queries
</div>

<ExperimentalBadge />

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

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

`SELECT ... FROM t STREAM [CURSOR '{...}']` 지속 쿼리를 허용합니다.
비활성화되면 `STREAM` 수정자를 사용하는 모든 테이블 표현식이
계획 생성 시점에 거부됩니다. 이는 `streaming-queries`
기능을 위한 상위 제어 설정이며, 추가 기능은 각자의 설정으로
별도로 제어될 수 있습니다.

<div id="enable_time_time64_type">
  ## enable\_time\_time64\_type
</div>

**별칭**: `allow_experimental_time_time64_type`

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.6"},{"label": "0"},{"label": "새로운 설정. 새로운 실험적 Time 및 Time64 데이터 타입을 사용할 수 있습니다."}]}, {"id": "row-2","items": [{"label": "25.12"},{"label": "1"},{"label": "기본적으로 Time 및 Time64 타입을 활성화합니다"}]}]} />

[Time](/docs/ko/reference/data-types/time) 및 [Time64](/docs/ko/reference/data-types/time64) 데이터 타입을 생성할 수 있습니다.

<div id="enable_unaligned_array_join">
  ## enable\_unaligned\_array\_join
</div>

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

크기가 서로 다른 여러 배열에 대해 ARRAY JOIN을 허용합니다. 이 설정을 활성화하면 배열 크기가 가장 긴 배열에 맞춰 조정됩니다.

<div id="enable_url_encoding">
  ## enable\_url\_encoding
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.5"},{"label": "0"},{"label": "기존 설정의 기본값이 변경되었습니다"}]}]} />

[URL](/docs/ko/reference/engines/table-engines/special/url) 엔진 테이블에서 URI 경로의 디코딩/인코딩을 활성화하거나 비활성화할 수 있습니다.

기본적으로 비활성화되어 있습니다.

<div id="enable_vertical_final">
  ## enable\_vertical\_final
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.6"},{"label": "1"},{"label": "버그 수정 후 vertical final을 다시 기본적으로 활성화"}]}, {"id": "row-2","items": [{"label": "24.1"},{"label": "1"},{"label": "vertical final을 기본적으로 사용"}]}]} />

활성화하면 FINAL 중에 행을 병합하는 대신 행을 삭제된 것으로 표시한 뒤 나중에 필터링하여 중복 행을 제거합니다

<div id="enable_writes_to_query_cache">
  ## enable\_writes\_to\_query\_cache
</div>

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

이 설정을 활성화하면 `SELECT` 쿼리의 결과가 [쿼리 캐시](/docs/ko/concepts/features/performance/caches/query-cache)에 저장됩니다.

Possible values:

* 0 - 비활성화됨
* 1 - 활성화됨
