Skip to main content
이 설정은 system.settings에서 확인할 수 있으며, 소스 코드에서 자동으로 생성됩니다.

use_top_k_dynamic_filtering

ORDER BY <column> LIMIT n 쿼리를 실행할 때 동적 필터링 최적화를 활성화합니다. 활성화되면 쿼리 실행기는 결과 집합의 최종 top N 행에 포함되지 않을 그래뉼과 행을 건너뛰려고 시도합니다. 이 최적화는 동적으로 작동하며, 지연 시간 개선 효과는 데이터 분포와 쿼리 내 다른 프레디케이트의 존재 여부에 따라 달라집니다. 가능한 값:
  • 0 — 비활성화됨.
  • 1 — 활성화됨.

use_top_k_dynamic_filtering_for_variable_length_types

정렬 컬럼이 가변 길이 데이터 타입(예: String, Array, Map, 가변 길이 원소를 포함하는 Tuple)인 경우 use_top_k_dynamic_filtering을 적용할 수 있도록 합니다. 이러한 타입에서는 동적 필터가 수행하는 행별 임계값 비교 비용이, 컬럼의 사전식 최소값이 지배적이고(예: 대부분이 빈 문자열) 건너뛸 수 있는 그래뉼이 적을 때, 절감되는 비용보다 더 커질 수 있습니다. 이런 경우 동적 필터는 쿼리 지연 시간을 개선하기는커녕 오히려 악화시킵니다. 이 설정이 0이면 동적 필터링은 메모리에서 값의 최대 크기가 고정된 컬럼(숫자, Date, DateTime, FixedString, Enum, 이러한 타입의 Nullable, 이러한 타입으로 구성된 Tuple)에만 제한됩니다. 1로 설정하면 동적 필터링이 가변 길이 타입에도 적용됩니다. 가능한 값:
  • 0 — 비활성화됨.
  • 1 — 활성화됨.
마지막 수정일 2026년 7월 23일