텍스트 인덱스 세션 설정

텍스트 인덱스 세션 설정 (text_index_*)

이 페이지에서는 역 텍스트 인덱스 사용과 관련된 text_index_* 세션 설정들을 다뤄요. 필터 선택성, posting list 교차 알고리즘, LIKE 평가 등을 제어해요. 이 설정들은 system.settings 테이블에서 확인할 수 있으며 ClickHouse 소스에서 자동 생성돼요.

출처: 문서

본문

이 설정들은 system.settings에서 확인할 수 있으며 소스에서 자동 생성돼요.

text_index_hint_max_selectivity

역 텍스트 인덱스에서 만든 힌트를 사용하기 위한 필터의 최대 선택성(selectivity)이에요.

text_index_lazy_intersection_density_threshold

별칭: text_index_density_threshold

지연 posting list 적용 모드(text_index_posting_list_apply_mode = 'lazy')에서 교차 알고리즘을 선택하는 posting list 밀도 임계값이에요. 임계값 미만: leapfrog 교차(희소한 posting list에 유리). 임계값 이상: brute-force 비트맵 교차(밀집한 posting list에 유리).

text_index_like_max_postings_to_read

사전 스캔에 의한 텍스트 인덱스 LIKE 평가가 활성화되었을 때 읽을 큰 postings의 최대 개수예요. use_text_index_like_evaluation_by_dictionary_scan이 활성화되어 있어야 해요.

text_index_like_min_pattern_length

LIKE/ILIKE 패턴의 영숫자 needle 또는 startsWith/endsWith needle의 최소 길이로, 사전 스캔에 의한 텍스트 인덱스 LIKE 평가를 사용하는 데 필요해요. 이 임계값보다 짧은 패턴은 너무 많은 사전 토큰과 일치하여 비용이 큰 스캔을 피하기 위해 건너뛰어져요. 배열 토크나이저를 사용하면 모든 패턴이 자격을 갖추므로 임계값은 전체 패턴의 비와일드카드 문자 수와 비교돼요. use_text_index_like_evaluation_by_dictionary_scan이 활성화되어 있어야 해요.

text_index_posting_list_apply_mode

텍스트 인덱스 쿼리 중 posting list가 어떻게 적용되는지 제어해요. materialize는 posting list를 Roaring Bitmap으로 즉시 디코딩해요. lazy(기본값)는 커서 기반의 요청 시 디코딩을 사용해요(직렬화된 코덱이 있는 인덱스 형식 필요). lazy는 지원되는 곳에만 적용돼요: 패턴이 있는 쿼리(예: LIKE)와 이전 버전이 작성한 인덱스가 있는 파츠는 materialize로 폴백돼요.

더 알아보기 (Learn more)