allow_suspicious_* 세션 설정

allow_suspicious_* 세션 설정

이 설정들은 ClickHouse에서 의심스러운(suspicious) 타입이나 인덱스, 압축 코덱 등을 사용할 수 있는지를 제어해요. ClickHouse 소스 코드에서 자동으로 생성된 세션 설정 문서예요.

출처: 문서

본문

이 설정들은 system.settings에서 사용할 수 있으며 소스 코드에서 자동으로 생성돼요.

allow_suspicious_codecs

true로 설정하면 의미 없는 압축 코덱을 지정할 수 있게 해요.

allow_suspicious_fixed_string_types

CREATE TABLE 문에서 n > 256인 FixedString(n) 타입의 열을 만들 수 있게 해요. 길이가 256 이상인 FixedString은 의심스럽고 대부분 잘못된 사용을 나타내요.

allow_suspicious_indices

동일한 표현식을 가진 기본/보조 인덱스와 정렬 키를 거부해요.

allow_suspicious_low_cardinality_types

고정 크기가 8바이트 이하인 데이터 타입(숫자 타입과 FixedString(8_bytes_or_less))에 LowCardinality를 사용하는 것을 허용하거나 제한해요.

작은 고정 값에 LowCardinality를 사용하는 것은 ClickHouse가 각 행마다 숫자 인덱스를 저장하므로 보통 비효율적이에요. 그 결과:

  • 디스크 공간 사용이 늘어날 수 있어요.
  • 사전 크기에 따라 RAM 소비가 더 높아질 수 있어요.
  • 추가 인코딩/디코딩 작업 때문에 일부 함수가 더 느리게 작동할 수 있어요.
  • MergeTree 엔진 테이블의 병합 시간은 위에서 설명한 모든 이유로 늘어날 수 있어요.

가능한 값:

  • 1 — LowCardinality 사용이 제한되지 않음.
  • 0 — LowCardinality 사용이 제한됨.

allow_suspicious_primary_key

MergeTree에 대해 의심스러운 PRIMARY KEY/ORDER BY를 허용해요(예: SimpleAggregateFunction).

allow_suspicious_ttl_expressions

테이블의 어떤 열에도 의존하지 않는 TTL 표현식을 거부해요. 대부분의 경우 사용자 오류를 나타내요.

allow_suspicious_types_in_group_by

GROUP BY 키에서 VariantDynamic 타입 사용을 허용하거나 제한해요.

allow_suspicious_types_in_order_by

ORDER BY 키에서 VariantDynamic 타입 사용을 허용하거나 제한해요.

allow_suspicious_variant_types

CREATE TABLE 문에서 유사한 variant 타입(예: 다른 숫자 또는 날짜 타입)을 가진 Variant 타입을 지정할 수 있게 해요. 이 설정을 활성화하면 유사한 타입의 값을 다룰 때 일부 모호함이 생길 수 있어요.

더 알아보기 (Learn more)