이 설정은 소스에서 자동으로 생성됩니다.
output_format_always_write_decimal_point_in_float_and_decimal
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 26.6 | 0 | 값이 정수이더라도, 텍스트 형식의 부동소수점 및 Decimal 숫자에 항상 소수점을 출력하는 새로운 설정입니다. |
값이 정수이더라도, 텍스트 형식의 부동소수점 및 Decimal 숫자에 항상 소수점을 출력합니다. 예를 들어 1 대신 1.을 출력합니다.
기본적으로 비활성화되어 있습니다.
output_format_arrow_compression_method
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 23.3 | lz4_frame | 기본적으로 Arrow 출력 형식에 lz4 압축을 사용합니다 |
Arrow 출력 형식의 압축 방식입니다. 지원되는 코덱은 lz4_frame, zstd, none (비압축)입니다.
output_format_arrow_date_as_uint16
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 26.2 | 0 | 기본적으로 Date 값을 일반 UInt16이 아닌 Arrow DATE32로 씁니다(다시 읽으면 Date32로 읽힘). |
Date 값을 32비트 Arrow DATE32 유형으로 변환하는 대신(다시 읽으면 Date32로 읽힘), 일반 16비트 숫자로 씁니다(다시 읽으면 UInt16으로 읽힘).
output_format_arrow_fixed_string_as_fixed_byte_array
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 23.2 | 1 | 기본적으로 FixedString에 Binary 대신 Arrow FIXED_SIZE_BINARY 타입 사용 |
FixedString 컬럼에는 Binary 대신 Arrow FIXED_SIZE_BINARY 타입을 사용합니다.
output_format_arrow_low_cardinality_as_dictionary
LowCardinality 유형을 딕셔너리 Arrow 유형으로 출력할 수 있게 합니다
output_format_arrow_string_as_string
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.3 | 1 | ClickHouse는 일반적으로 UTF-8로 사용되는 String 데이터 타입에서 임의의 바이너리 데이터를 허용합니다. Parquet/ORC/Arrow의 String은 UTF-8만 지원합니다. 따라서 ClickHouse String 데이터 타입에 Arrow의 어떤 데이터 타입을 사용할지(String 또는 Binary) 선택할 수 있습니다. Binary가 더 정확하고 호환성도 높지만, 대부분의 경우 기본값으로 String을 사용하면 사용자 기대에 더 잘 부합합니다. |
String 컬럼에 Binary 대신 Arrow String 타입 사용
output_format_arrow_unsupported_types_as_binary
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 26.4 | 1 | 지원되지 않는 CH 타입을 UNKNOWN_TYPE 예외 대신 arrow 바이너리로 변환하는 새로운 설정입니다. |
변환할 수 없는 출력 타입을 원시 바이너리 데이터로 처리합니다. false이면 이러한 타입에서 UNKNOWN_TYPE 예외가 발생합니다.
output_format_arrow_use_64_bit_indexes_for_dictionary
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.1 | 0 | Arrow 딕셔너리에서 64비트 인덱스 유형 사용을 허용합니다 |
| 24.1 | 0 | Arrow 딕셔너리에서 64비트 인덱스 유형 사용을 허용합니다 |
Arrow 형식의 딕셔너리 인덱스에는 항상 64비트 정수를 사용합니다
output_format_arrow_use_signed_indexes_for_dictionary
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.1 | 1 | 권장 사항에 따라 기본적으로 Arrow 딕셔너리에 부호 있는 인덱스 유형을 사용합니다 |
Arrow 형식에서 딕셔너리 인덱스에 부호 있는 정수를 사용합니다
output_format_avro_codec
출력에 사용하는 압축 코덱입니다. 가능한 값은 'null', 'deflate', 'snappy', 'zstd'입니다.
output_format_avro_confluent_subject
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 26.5 | AvroConfluent 출력 작성 시 Confluent 스키마 레지스트리에서 스키마 등록에 사용할 subject name을 지정하는 새로운 설정입니다. |
AvroConfluent 출력 형식의 경우: Confluent 스키마 레지스트리에서 스키마가 등록될 subject name입니다. AvroConfluent 출력 작성 시 필요합니다.
output_format_avro_rows_in_file
파일당 최대 행 수(스토리지에서 허용하는 경우)
output_format_avro_string_column_pattern
Avro format: AVRO string으로 선택할 String 컬럼을 지정하는 정규식입니다.
output_format_avro_sync_interval
바이트 단위 동기화 간격입니다.
output_format_binary_encode_types_in_binary_format
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.7 | 0 | RowBinaryWithNamesAndTypes 출력 형식에서 타입 이름을 바이너리 형식으로 기록할 수 있도록 새로운 설정이 추가되었습니다 |
RowBinaryWithNamesAndTypes 출력 형식에서 타입 이름 대신 데이터 타입을 바이너리 형식으로 기록합니다
output_format_binary_write_json_as_string
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.10 | 0 | RowBinary 출력 형식에서 JSON 타입 값을 JSON String 값으로 기록하는 새로운 설정 추가 |
RowBinary 출력 형식에서 JSON 데이터 타입 값을 JSON String 값으로 기록합니다.
output_format_bson_string_as_string
String 컬럼에는 Binary 대신 BSON String 유형을 사용합니다.
output_format_compression_level
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.1 | 3 | 쿼리 출력의 압축 수준을 변경할 수 있도록 허용 |
쿼리 출력이 압축될 때 사용되는 기본 압축 수준입니다. 이 설정은 SELECT 쿼리에 INTO OUTFILE이 있거나 테이블 함수 file, url, hdfs, s3, azureBlobStorage에 쓸 때 적용됩니다.
가능한 값: 1부터 22까지
output_format_compression_zstd_window_log
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.1 | 0 | zstd 압축 사용 시 쿼리 출력의 zstd window log를 변경할 수 있습니다 |
출력 압축 방식(Compression method)이 zstd일 때 사용할 수 있습니다. 값이 0보다 크면 이 설정은 압축 윈도우 크기(2의 거듭제곱)를 명시적으로 설정하고 zstd 압축의 long-range 모드를 활성화합니다. 이를 통해 더 높은 압축률을 얻는 데 도움이 될 수 있습니다.
가능한 값: 음이 아닌 숫자입니다. 값이 너무 작거나 너무 크면 zstdlib이 예외를 발생시킵니다. 일반적으로는 20(window size = 1MB)에서 30(window size = 1GB) 사이의 값을 사용합니다.
output_format_csv_crlf_end_of_line
true로 설정하면 CSV 형식의 줄 끝에 \n 대신 \r\n이 사용됩니다.
output_format_csv_header_serialize_tuple_into_separate_columns
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 26.7 | 1 | 새 설정입니다. output_format_csv_serialize_tuple_into_separate_columns가 활성화되면 이제 CSVWithNames/CSVWithNamesAndTypes 헤더에서 Tuple 컬럼이 리프 필드로 평탄화되어 헤더의 너비가 데이터와 일치합니다. 이전의 단일 이름 헤더를 복원하려면 false로 설정하십시오. |
output_format_csv_serialize_tuple_into_separate_columns가 활성화되면 CSVWithNames 및 CSVWithNamesAndTypes의 헤더 행은 각 순수 Tuple 컬럼을 리프 필드(t.a, t.b와 같은 점 표기 이름과 리프 타입 이름)로 평탄화하므로, 헤더의 컬럼 수가 데이터와 같아집니다. Nullable(Tuple) 컬럼은 절대로 평탄화되지 않으므로(데이터는 단일 CSV 필드로 유지됨), 헤더에서도 단일 최상위 컬럼명과 타입을 유지합니다. CustomSeparated*에서는 format_custom_escaping_rule = 'CSV'이고 format_custom_field_delimiter가 format_csv_delimiter와 동일한 단일 문자일 때만 이 평탄화가 적용됩니다. 그렇지 않으면(예: 기본 탭 구분자이거나 format_custom_field_delimiter = '|'인 경우) 헤더는 평탄화되지 않은 상태로 유지되어 계속 데이터와 일치합니다. 헤더가 단일 최상위 Tuple 이름과 타입을 유지하는 이전 동작을 계속 사용하려면 0으로 설정하십시오.
참고: 평탄화된 헤더는 input_format_with_names_use_header = 1일 때 이름 기준으로 다시 Tuple로 읽어들여지지 않습니다. 이런 데이터를 다시 Tuple로 읽으려면 출력 시 이 설정을 0으로 설정하거나, input_format_with_names_use_header = 0으로 읽어야 합니다(*WithNamesAndTypes 포맷인 CSVWithNamesAndTypes 및 CustomSeparatedWithNamesAndTypes의 경우에는 input_format_with_types_use_header = 0도 함께 설정해야 합니다. 그렇지 않으면 평탄화된 타입 행이 단일 최상위 Tuple 입력 필드를 기준으로 검증되어 거부됩니다).
output_format_csv_serialize_tuple_into_separate_columns
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.6 | 1 | CSV 형식에서 튜플을 해석하는 새로운 방식이 추가되었습니다. |
| 24.3 | 1 | CSV 형식에서 튜플을 해석하는 새로운 방식이 추가되었습니다. |
true로 설정하면 CSV 형식에서 Tuple 자체인 컬럼은 별도의 컬럼으로 직렬화됩니다(즉, 튜플 내부의 중첩 구조는 사라집니다).
이 평탄화는 Tuple 자체인 경우에만 적용됩니다. Nullable(Tuple)은 이 설정과 관계없이 항상 단일 CSV 필드로 직렬화됩니다(NULL 행과 non-NULL 행이 동일한 개수의 필드를 차지하도록 하기 위해서입니다).
output_format_decimal_trailing_zeros
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 21.9 | 0 | 출력 결과를 더 보기 좋게 하기 위해 기본적으로 Decimal 타입의 텍스트 표현에서 후행 0을 출력하지 않습니다 |
Decimal 값을 출력할 때 후행 0도 함께 출력합니다. 예: 1.23 대신 1.230000.
기본적으로 비활성화되어 있습니다.
output_format_float_precision
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 26.6 | 0 | 부동소수점 출력의 소수 자릿수를 제어하는 새로운 설정 |
0이 아닌 경우, 부동소수점 출력(Float32, Float64, BFloat16)은 소수점 이하 자릿수를 최대 이 값까지만 사용해 포맷합니다(끝의 0은 제거됨).
0인 경우(기본값), 가장 짧은 round-trip 표현을 사용합니다.
고정 소수점 표기법으로 표현하기에 값이 너무 크거나, 요청한 정밀도로 반올림할 때 모든 유효 자릿수가 사라져 가수가 ±0이 될 정도로 값의 크기가 매우 작은 경우에는 대신 과학적 표기법으로 출력됩니다. 이러한 폴백 상황에서는 가수에 요청한 소수 자릿수보다 더 많은 자릿수가 포함될 수 있습니다.
유효 범위: 0~100입니다.
output_format_image_height
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 26.6 | 1024 | PNG와 같은 이미지 출력 형식의 출력 이미지 높이를 제어하는 새로운 설정입니다. |
PNG와 같은 이미지 출력 형식에서 출력 이미지의 높이(픽셀 단위)입니다.
기본값: 1024.
output_format_image_streaming_animation
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 26.8 | 0 | 애니메이션의 모든 프레임을 메모리에 버퍼링하지 않고, `t`의 다음 값을 확인하는 즉시 `PNG`와 같은 이미지 출력 형식에서 각 프레임을 기록할지 제어하는 새로운 설정입니다. |
PNG와 같은 이미지 출력 형식에서 쿼리가 끝날 때까지 모든 프레임을 메모리에 버퍼링하지 않고, t 컬럼의 다음 값을 확인하는 즉시 애니메이션의 각 프레임을 기록합니다.
메모리에는 프레임 1개만 유지되며, 쿼리가 실행되는 동안 프레임이 출력으로 전달됩니다. 대신 t의 값은 감소하지 않아야 합니다. 그렇지 않으면 쿼리에서 예외가 발생합니다. 또한 애니메이션 헤더를 기록할 때는 프레임 수를 알 수 없으므로, 선언된 프레임 수는 정확한 값이 아니라 상한값입니다. 브라우저에서는 이러한 파일을 재생할 수 있지만, 선언된 프레임 수를 신뢰하는 디코더는 마지막 실제 프레임 뒤에서 오류를 보고합니다.
기본값: false.
output_format_image_terminal_mode
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 26.6 | PNG와 같은 이미지 출력 형식을 원시 이미지 바이트로 기록하는 대신 인라인 이미지 프로토콜을 사용해 터미널에 직접 렌더링할지 제어하는 새로운 설정입니다. |
PNG와 같은 이미지 출력 형식의 경우, 원시 이미지 바이트를 기록하는 대신 인라인 이미지 프로토콜을 사용해 이미지를 터미널에 직접 출력합니다.
가능한 값:
- `` (비어 있음) — 원시 이미지 바이트를 기록합니다(기본값).
iterm— iTerm2 인라인 이미지 프로토콜을 사용합니다.kitty— Kitty 그래픽 프로토콜을 사용합니다.sixel— Sixel 프로토콜을 사용합니다.auto— 출력 대상이 터미널이면 해당 capability를 감지해iterm,kitty,sixel을 이 순서대로 사용하고, 그렇지 않으면 원시 이미지 바이트를 기록합니다.
기본값: `` (비어 있음).
output_format_image_time_divisor_seconds
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 26.8 | 60 | 이미지 출력 형식(예: `PNG`)에서 애니메이션을 생성할 수 있도록 `t` 컬럼의 시간 단위 분모를 제어하는 새로운 설정입니다. |
이미지 출력 형식(예: PNG)에서 사용하는 t 컬럼 시간 단위의 분모(초)입니다.
output_format_image_time_multiplier_seconds를 참조하십시오.
기본값: 60.
output_format_image_time_multiplier_seconds
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 26.8 | 1 | `PNG`와 같은 이미지 출력 형식이 애니메이션을 생성하도록 하는 `t` 컬럼 시간 단위의 분자를 제어하는 새로운 설정입니다. |
PNG와 같은 이미지 출력 형식에서 사용하는 t 컬럼 시간 단위의 분자이며, 단위는 초입니다.
t 컬럼이 있으면 해당 포맷은 애니메이션을 생성하며, 이때 t는 프레임의 상대 시간 오프셋입니다.
t의 1단위는 output_format_image_time_multiplier_seconds / output_format_image_time_divisor_seconds초에 해당합니다.
기본값(1 및 60)을 사용하면 t의 1단위는 1/60초입니다.
기본값: 1.
output_format_image_width
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 26.6 | 1024 | PNG와 같은 이미지 출력 형식의 출력 이미지 너비를 제어하는 새로운 설정입니다. |
PNG와 같은 이미지 출력 형식에서 출력 이미지의 너비를 픽셀 단위로 지정합니다.
기본값: 1024.
output_format_json_array_of_rows
JSONEachRow 포맷에서 모든 행을 JSON 배열로 출력할 수 있도록 합니다.
가능한 값:
- 1 — ClickHouse가 모든 행을 배열로 출력하며, 각 행은
JSONEachRow포맷을 따릅니다. - 0 — ClickHouse가 각 행을
JSONEachRow포맷으로 개별 출력합니다.
설정이 활성화된 쿼리 예시
쿼리:
SET output_format_json_array_of_rows = 1;
SELECT number FROM numbers(3) FORMAT JSONEachRow;결과:
[
{"number":"0"},
{"number":"1"},
{"number":"2"}
]설정이 비활성화된 쿼리 예시
쿼리:
SET output_format_json_array_of_rows = 0;
SELECT number FROM numbers(3) FORMAT JSONEachRow;결과:
{"number":"0"}
{"number":"1"}
{"number":"2"}output_format_json_escape_forward_slashes
JSON 출력 형식에서 문자열을 출력할 때 슬래시(/)를 이스케이프할지 제어합니다. 이는 JavaScript와의 호환성을 위한 것입니다. 항상 이스케이프되는 백슬래시와 혼동하지 마십시오.
기본적으로 사용 설정되어 있습니다.
output_format_json_map_as_array_of_tuples
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.7 | 0 | 새로운 설정 |
맵 컬럼을 튜플로 이루어진 JSON 배열로 직렬화합니다.
기본적으로 비활성화되어 있습니다.
output_format_json_named_tuples_as_objects
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 22.6 | 1 | 기본적으로 JSON 포맷에서 named tuple을 JSON 객체로 직렬화할 수 있습니다 |
named tuple 컬럼을 JSON 객체로 직렬화합니다.
기본적으로 활성화되어 있습니다.
output_format_json_pretty_print
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.1 | 1 | 기본적으로 JSON 출력 형식에서 값을 Pretty 형식으로 표시합니다 |
이 설정은 JSON 출력 형식을 사용할 때 data 배열 내에서 튜플, 맵, 배열과 같은 중첩된 구조를 어떻게 표시할지 결정합니다.
예를 들어, 다음과 같이 출력되는 대신:
"data":
[
{
"tuple": {"a":1,"b":2,"c":3},
"array": [1,2,3],
"map": {"a":1,"b":2,"c":3}
}
],출력은 다음과 같은 포맷으로 표시됩니다:
"data":
[
{
"tuple": {
"a": 1,
"b": 2,
"c": 3
},
"array": [
1,
2,
3
],
"map": {
"a": 1,
"b": 2,
"c": 3
}
}
],기본적으로 활성화되어 있습니다.
output_format_json_quote_64bit_floats
JSON* 포맷으로 출력할 때 64비트 부동소수점 값을 따옴표로 묶을지 제어합니다.
기본적으로 비활성화되어 있습니다.
output_format_json_quote_64bit_integers
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.8 | 0 | 기본적으로 JSON에서 64비트 정수에 따옴표를 붙이지 않도록 설정합니다 |
JSON 포맷으로 출력할 때 64비트 이상 정수(예: UInt64, Int128)에 따옴표를 붙일지 제어합니다.
이러한 정수는 기본적으로 따옴표로 묶여 출력됩니다. 이 동작은 대부분의 JavaScript 구현과 호환됩니다.
가능한 값:
- 0 — 정수를 따옴표 없이 출력합니다.
- 1 — 정수를 따옴표로 묶어 출력합니다.
output_format_json_quote_decimals
JSON 출력 형식에서 Decimal 값을 따옴표로 감쌀지 여부를 제어합니다.
기본적으로 비활성화되어 있습니다.
output_format_json_quote_denormals
JSON 출력 형식에서 +nan, -nan, +inf, -inf를 출력하도록 설정합니다.
가능한 값:
- 0 — 비활성화됨.
- 1 — 활성화됨.
예시
다음 테이블 account_orders를 살펴보겠습니다:
┌─id─┬─name───┬─duration─┬─period─┬─area─┐
│ 1 │ Andrew │ 20 │ 0 │ 400 │
│ 2 │ John │ 40 │ 0 │ 0 │
│ 3 │ Bob │ 15 │ 0 │ -100 │
└────┴────────┴──────────┴────────┴──────┘output_format_json_quote_denormals = 0이면, 쿼리 결과 출력에 null 값이 반환됩니다:
SELECT area/period FROM account_orders FORMAT JSON;{
"meta":
[
{
"name": "divide(area, period)",
"type": "Float64"
}
],
"data":
[
{
"divide(area, period)": null
},
{
"divide(area, period)": null
},
{
"divide(area, period)": null
}
],
"rows": 3,
"statistics":
{
"elapsed": 0.003648093,
"rows_read": 3,
"bytes_read": 24
}
}output_format_json_quote_denormals = 1이면, 쿼리는 다음을 반환합니다:
{
"meta":
[
{
"name": "divide(area, period)",
"type": "Float64"
}
],
"data":
[
{
"divide(area, period)": "inf"
},
{
"divide(area, period)": "-nan"
},
{
"divide(area, period)": "-inf"
}
],
"rows": 3,
"statistics":
{
"elapsed": 0.000070241,
"rows_read": 3,
"bytes_read": 24
}
}output_format_json_skip_null_value_in_named_tuples
named tuple 컬럼을 JSON 객체로 직렬화할 때 NULL 값을 가진 키-값 쌍을 건너뜁니다. 이 설정은 output_format_json_named_tuples_as_objects가 true일 때만 유효합니다.
output_format_json_validate_utf8
JSON 출력 형식에서 UTF-8 시퀀스의 유효성을 검사할지 제어합니다. JSON/JSONCompact/JSONColumnsWithMetadata 포맷에는 적용되지 않으며, 이러한 포맷은 항상 UTF-8을 검증합니다.
기본적으로 비활성화되어 있습니다.
output_format_markdown_escape_special_characters
활성화되면 Markdown의 특수 문자를 이스케이프합니다.
Common Mark에서는 이스케이프할 수 있는 다음 특수 문자를 정의합니다:
! " # $ % & ' ( ) * + , - . / : ; < = > ? @ [ \ ] ^ _ ` { | } ~가능한 값:
- 0 — 비활성화.
- 1 — 활성화.
output_format_msgpack_uuid_representation
MsgPack 포맷에서 UUID를 출력하는 방법입니다.
output_format_native_encode_types_in_binary_format
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.7 | 0 | Native 출력 형식에서 타입 이름을 바이너리 형식으로 기록할 수 있는 새로운 설정이 추가되었습니다 |
Native 출력 형식에서 타입 이름 대신 데이터 타입을 바이너리 형식으로 기록합니다
output_format_native_use_flattened_dynamic_and_json_serialization
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.6 | 0 | Native 형식에 평탄화된 Dynamic/JSON 직렬화 추가 |
JSON 및 Dynamic 컬럼의 데이터를 평탄화된 포맷으로 씁니다(모든 타입/경로가 별도의 서브컬럼으로 처리됨).
output_format_native_write_json_as_string
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.10 | 0 | Native 형식에서 JSON 컬럼을 단일 String 컬럼으로 쓸 수 있게 하는 새로운 설정 추가 |
기본 네이티브 JSON 직렬화 대신 JSON 컬럼 데이터를 JSON 문자열이 들어 있는 String 컬럼으로 씁니다.
output_format_orc_compression_block_size
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.8 | 262144 | 새로운 설정 |
ORC 출력 형식의 압축 블록 크기(바이트 단위)입니다.
output_format_orc_compression_method
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.3 | zstd | Parquet/ORC/Arrow는 lz4 및 zstd를 포함한 다양한 압축 방식을 지원합니다. ClickHouse는 이러한 모든 압축 방식을 지원합니다. 'duckdb'와 같은 일부 도구는 더 빠른 `lz4` 압축 방식을 지원하지 않으므로 기본값을 zstd로 설정했습니다. |
| 23.3 | lz4_frame | 기본적으로 ORC 출력 형식에서 lz4 압축을 사용합니다 |
ORC 출력 형식에 사용할 압축 방식입니다. 지원되는 코덱: lz4, snappy, zlib, zstd, none (비압축)
output_format_orc_dictionary_key_size_threshold
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.9 | 0 | ORC 출력 형식의 문자열 컬럼에서 고유 값 수가 전체 non-NULL 행 수 대비 이 비율을 초과하면 딕셔너리 인코딩을 비활성화합니다. 그렇지 않으면 딕셔너리 인코딩이 활성화됩니다 |
ORC 출력 형식의 문자열 컬럼에서 고유 값 수가 전체 non-NULL 행 수 대비 이 비율을 초과하면 딕셔너리 인코딩을 비활성화합니다. 그렇지 않으면 딕셔너리 인코딩이 활성화됩니다
output_format_orc_row_index_stride
ORC 출력 형식의 대상 행 인덱스 stride
output_format_orc_string_as_string
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.3 | 1 | ClickHouse는 일반적으로 UTF-8로 처리되는 String 데이터 타입에서 임의의 바이너리 데이터를 허용합니다. 반면 Parquet/ORC/Arrow의 String은 UTF-8만 지원합니다. 따라서 ClickHouse String 데이터 타입에 대해 Arrow의 데이터 타입으로 String과 Binary 중 어떤 것을 사용할지 선택할 수 있습니다. Binary가 더 정확하고 호환성 측면에서도 적절하지만, 대부분의 경우 기본값으로 String을 사용하면 사용자 기대에 더 잘 부합합니다. |
String 컬럼에는 Binary 대신 ORC String 타입을 사용합니다
output_format_orc_writer_time_zone_name
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.1 | GMT | ORC writer의 시간대 이름입니다. 기본 ORC writer 시간대는 GMT입니다. |
ORC writer의 시간대 이름입니다. 기본 ORC writer 시간대는 GMT입니다.
output_format_parallel_formatting
데이터 포맷의 병렬 포맷팅을 활성화하거나 비활성화합니다. TSV, TSKV, CSV, JSONEachRow 포맷에서만 지원됩니다.
가능한 값:
- 1 — 활성화됨.
- 0 — 비활성화됨.
output_format_parquet_batch_size
이 행 수마다 페이지 크기를 확인합니다. 평균값 크기가 몇 KB를 초과하는 컬럼이 있으면 값을 줄이는 것을 고려하십시오.
output_format_parquet_bloom_filter_bits_per_value
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.2 | 10.5 | 새 설정입니다. |
Parquet 블룸 필터에서 각 고유값에 사용할 비트 수의 대략적인 값입니다. 예상 오탐지율은 다음과 같습니다.
- 6 비트 - 10%
- 10.5 비트 - 1%
- 16.9 비트 - 0.1%
- 26.4 비트 - 0.01%
- 41 비트 - 0.001%
output_format_parquet_bloom_filter_flush_threshold_bytes
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.2 | 134217728 | 새 설정입니다. |
Parquet 파일에서 블룸 필터를 배치할 위치를 지정합니다. 블룸 필터는 대략 이 크기 단위로 묶어 기록됩니다. 구체적으로는 다음과 같습니다.
- 0이면 각 row group의 블룸 필터가 해당 row group 바로 뒤에 즉시 기록됩니다.
- 이 값이 모든 블룸 필터의 총크기보다 크면, 모든 row group의 블룸 필터를 메모리에 누적한 다음 파일 끝부분 근처에 함께 기록합니다.
- 그렇지 않으면 블룸 필터를 메모리에 누적하다가, 총크기가 이 값을 초과할 때마다 기록합니다.
output_format_parquet_compression_method
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.3 | zstd | Parquet/ORC/Arrow는 lz4와 zstd를 포함한 다양한 압축 방식을 지원합니다. ClickHouse는 이러한 모든 압축 방식을 지원합니다. 'duckdb'와 같은 일부 도구는 더 빠른 `lz4` 압축 방식을 지원하지 않기 때문에 기본값으로 zstd를 설정했습니다. |
| 23.3 | lz4 | 기본적으로 Parquet 출력 형식에서 lz4 압축을 사용합니다 |
Parquet 출력 형식의 압축 방식입니다. 지원되는 코덱: snappy, lz4, brotli, zstd, gzip, none (비압축)
output_format_parquet_data_page_size
압축 전 페이지의 목표 크기(바이트)입니다.
output_format_parquet_date_as_uint16
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.8 | 0 | 24.12에 도입된 경미한 호환성 비호환 변경에 대해 compatibility 설정을 추가했습니다. |
| 24.12 | 0 | Date를 일반 UInt16이 아닌 Date32로 씁니다(Parquet에서 Date와 가장 가까운 두 가지 타입입니다). |
Date 값을 32비트 Parquet DATE 타입으로 변환해 기록하는 대신 일반 16비트 숫자로 기록합니다(다시 읽을 때는 UInt16으로 읽음). 기존 방식은 다시 읽을 때 Date32로 읽습니다.
output_format_parquet_datetime_as_uint32
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.12 | 0 | UInt32 대신 DateTime을 DateTime64(3)로 씁니다(Parquet에서 DateTime에 가장 가까운 두 가지 타입입니다). |
DateTime 값을 밀리초로 변환해 쓰고(다시 읽을 때는 DateTime64(3)로 읽음), 대신 원시 Unix timestamp로 씁니다(다시 읽을 때는 UInt32로 읽음).
output_format_parquet_enum_as_byte_array
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.8 | 1 | 기본적으로 Parquet에서 Enum을 byte array로 기록하도록 활성화 |
| 25.7 | 0 | Parquet 물리 타입: BYTE_ARRAY 및 논리 타입: ENUM을 사용해 enum 기록 |
Parquet 물리 타입: BYTE_ARRAY 및 논리 타입: ENUM을 사용해 enum 기록
output_format_parquet_fixed_string_as_fixed_byte_array
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 23.2 | 1 | 기본적으로 FixedString에 Parquet FIXED_LENGTH_BYTE_ARRAY 타입 사용 |
FixedString 컬럼에 대해 Binary 대신 Parquet FIXED_LEN_BYTE_ARRAY 타입을 사용합니다.
output_format_parquet_geometadata
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.7 | 1 | Parquet 메타데이터에 Geo 컬럼 정보를 기록하고 컬럼을 WKB 포맷으로 인코딩할 수 있도록 하는 새로운 설정입니다. |
Parquet 메타데이터에 Geo 컬럼 정보를 기록하고 컬럼을 WKB 포맷으로 인코딩할 수 있습니다.
output_format_parquet_max_dictionary_size
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.8 | 1048576 | 새로운 설정 |
딕셔너리 크기가 이 바이트 수를 초과하면 딕셔너리를 사용하지 않는 인코딩으로 전환됩니다. 딕셔너리 encoding을 비활성화하려면 0으로 설정하십시오.
output_format_parquet_parallel_encoding
Parquet 인코딩을 여러 스레드로 수행합니다.
output_format_parquet_row_group_size
대상 row group의 크기(행 수 기준)입니다.
output_format_parquet_row_group_size_bytes
압축 전 기준 row group의 목표 크기(바이트)입니다.
output_format_parquet_string_as_string
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.3 | 1 | ClickHouse는 일반적으로 UTF-8로 처리되는 String 데이터 타입에 임의의 바이너리 데이터를 저장할 수 있습니다. Parquet/ORC/Arrow의 String은 UTF-8만 지원합니다. 따라서 ClickHouse String 데이터 타입에 대해 Arrow의 데이터 타입으로 String 또는 Binary 중 어떤 것을 사용할지 선택할 수 있습니다. Binary가 더 정확하고 호환성도 높지만, 대부분의 경우 기본값으로 String을 사용하는 것이 사용자 기대에 더 잘 부합합니다. |
String 컬럼에는 Binary 대신 Parquet String 타입을 사용합니다.
output_format_parquet_wide_integer_as_decimal
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 26.8 | 0 | `Int128`, `UInt128`, `Int256`, `UInt256` 값을 표준 Parquet `DECIMAL` 값으로 기록하는 새로운 설정입니다. 이전 값은 레거시 리틀 엔디언 `FIXED_LEN_BYTE_ARRAY` 표현을 유지합니다. |
Int128, UInt128, Int256, UInt256 값을 빅 엔디언 바이트 순서로 표준을 준수하는 Parquet DECIMAL 값으로 기록합니다. 기본값은 이전 ClickHouse 버전과의 호환성을 위해 주석 없는 레거시 리틀 엔디언 FIXED_LEN_BYTE_ARRAY 표현을 유지합니다. Decimal 표현을 사용하면 상호 운용 가능한 숫자 통계를 지원하지만, 일부 Parquet 리더는 38 또는 76을 초과하는 정밀도를 지원하지 않습니다.
output_format_parquet_write_bloom_filter
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.2 | 1 | Parquet 블룸 필터 쓰기 지원이 추가되었습니다. |
Parquet 파일에 블룸 필터를 기록합니다.
output_format_parquet_write_checksums
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.11 | 1 | 새 설정입니다. |
Parquet 페이지 헤더에 crc32 체크섬을 포함합니다.
output_format_parquet_write_page_index
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.7 | 1 | Parquet 파일에 페이지 인덱스를 기록하는 기능을 추가했습니다. |
컬럼 인덱스와 오프셋 인덱스(즉, 각 데이터 페이지의 통계로, 읽기 시 filter pushdown에 사용할 수 있음)를 Parquet 파일에 기록합니다.
output_format_pretty_color
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.1 | auto | 출력이 tty가 아닌 경우 ANSI 이스케이프를 비활성화할 수 있도록 auto 값도 허용하도록 설정이 변경되었습니다 |
Pretty 형식에서 ANSI 이스케이프 시퀀스를 사용합니다. 0 - 비활성화, 1 - 활성화, 'auto' - 출력이 터미널인 경우 활성화됩니다.
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.6 | 1 | 행 수가 많을 때 푸터에 컬럼명을 표시하는 설정이 추가되었습니다. 임계값은 output_format_pretty_display_footer_column_names_min_rows로 제어됩니다. |
테이블의 행 수가 많을 때 푸터에 컬럼명을 표시합니다.
가능한 값:
- 0 — 푸터에 컬럼명이 표시되지 않습니다.
- 1 — 행 수가 output_format_pretty_display_footer_column_names_min_rows에서 설정한 임계값(기본값: 50) 이상이면 푸터에 컬럼명이 표시됩니다.
예시
쿼리:
SELECT *, toTypeName(*) FROM (SELECT * FROM system.numbers LIMIT 1000);결과:
┌─number─┬─toTypeName(number)─┐
1. │ 0 │ UInt64 │
2. │ 1 │ UInt64 │
3. │ 2 │ UInt64 │
...
999. │ 998 │ UInt64 │
1000. │ 999 │ UInt64 │
└─number─┴─toTypeName(number)─┘버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.6 | 50 | output_format_pretty_display_footer_column_names_min_rows의 임계값을 제어하는 설정이 추가되었습니다. 기본값은 50입니다. |
output_format_pretty_display_footer_column_names 설정이 활성화된 경우, 컬럼명이 포함된 푸터를 표시할 최소 행 수를 지정합니다.
output_format_pretty_fallback_to_vertical
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.1 | 1 | 새로운 설정 |
활성화된 경우, 테이블의 너비가 넓고 행 수가 적으면 Pretty 형식은 Vertical 형식처럼 출력됩니다.
이 동작을 세부적으로 조정하려면 output_format_pretty_fallback_to_vertical_max_rows_per_chunk 및 output_format_pretty_fallback_to_vertical_min_table_width를 참조하십시오.
output_format_pretty_fallback_to_vertical_max_rows_per_chunk
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.1 | 10 | 새로운 설정 |
Vertical 형식으로의 폴백(output_format_pretty_fallback_to_vertical 참조)은 청크의 행 수가 지정된 값을 넘지 않는 경우에만 활성화됩니다.
output_format_pretty_fallback_to_vertical_min_columns
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.1 | 5 | 새로운 설정 |
Vertical 형식으로의 폴백(output_format_pretty_fallback_to_vertical 참조)은 컬럼 수가 지정된 값보다 많을 때만 활성화됩니다.
output_format_pretty_fallback_to_vertical_min_table_width
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.1 | 250 | 새로운 설정 |
Vertical 형식으로의 폴백(output_format_pretty_fallback_to_vertical 참조)은 테이블 내 컬럼 길이의 합이 지정된 값 이상이거나, 하나 이상의 값에 줄바꿈 문자가 포함된 경우에만 활성화됩니다.
output_format_pretty_glue_chunks
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.5 | auto | Pretty 형식을 더 보기 좋게 표시하기 위한 새로운 설정입니다. |
Pretty 형식으로 렌더링된 데이터가 여러 청크에 걸쳐 도착한 경우, 지연이 있더라도 다음 청크의 컬럼 너비가 이전 청크와 같으면 ANSI 이스케이프 시퀀스를 사용해 이전 줄로 돌아가 이전 청크의 푸터를 덮어쓰고 새 청크의 데이터로 이어서 표시합니다. 이렇게 하면 결과가 시각적으로 더 자연스럽게 보입니다.
0 - 비활성화, 1 - 활성화, 'auto' - 터미널일 때 활성화됩니다.
output_format_pretty_grid_charset
그리드 테두리를 출력할 때 사용하는 문자 집합입니다. 사용할 수 있는 문자 집합은 ASCII와 UTF-8(기본값)입니다.
대화형 모드에서는 이 설정을 명시적으로 지정하지 않은 경우, 터미널이 UTF-8을 지원하지 않으면(LC_ALL, LC_CTYPE, LANG 환경 변수를 기준으로 판단) clickhouse-client가 자동으로 ASCII로 전환합니다.
output_format_pretty_highlight_digit_groups
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.3 | 1 | 활성화되어 있고 출력이 터미널인 경우, 천 단위, 백만 단위 등 각 자릿수 그룹의 숫자를 밑줄로 강조 표시합니다. |
활성화되어 있고 출력이 터미널인 경우, 천 단위, 백만 단위 등 각 자릿수 그룹의 숫자를 밑줄로 강조 표시합니다.
output_format_pretty_highlight_trailing_spaces
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.1 | 1 | 새 설정입니다. |
활성화되어 있고 출력 대상이 터미널이면, 후행 공백을 회색으로 표시하고 밑줄을 추가합니다.
output_format_pretty_max_column_name_width_cut_to
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.1 | 24 | 새로운 설정 |
컬럼명이 너무 길면 이 길이로 잘립니다.
컬럼명 길이가 output_format_pretty_max_column_name_width_cut_to와 output_format_pretty_max_column_name_width_min_chars_to_cut를 더한 값보다 길면 잘립니다.
output_format_pretty_max_column_name_width_min_chars_to_cut
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.1 | 4 | 새로운 설정 |
컬럼명이 너무 길 때 잘라낼 최소 문자 수입니다.
컬럼명 길이가 output_format_pretty_max_column_name_width_cut_to와 output_format_pretty_max_column_name_width_min_chars_to_cut의 합보다 길면 컬럼명을 잘라냅니다.
output_format_pretty_max_column_pad_width
Pretty 형식에서 컬럼의 모든 값을 패딩할 때 적용되는 최대 너비입니다.
output_format_pretty_max_rows
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.2 | 1000 | 사용성 측면에서 이 편이 더 낫습니다. 스크롤해야 할 양이 더 적기 때문입니다. |
Pretty 형식의 행 수 제한입니다.
output_format_pretty_max_value_width
Pretty 형식에 표시할 값의 최대 너비입니다. 이보다 크면 잘립니다. 값이 0이면 잘리지 않습니다.
output_format_pretty_max_value_width_apply_for_single_value
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.3 | 0 | Pretty 형식에서는 블록에 단일 값만 있는 경우 해당 값이 잘리지 않습니다. |
값은 블록 내 단일 값이 아닐 때만 잘라냅니다(output_format_pretty_max_value_width 설정 참고). 단일 값인 경우에는 전체를 그대로 출력하며, 이는 SHOW CREATE TABLE 쿼리에 유용합니다.
output_format_pretty_multiline_fields
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.1 | 1 | 새로운 설정 |
활성화하면 Pretty 형식에서 여러 줄 필드를 테이블 셀 내부에 렌더링하므로 테이블의 테두리 형태가 유지됩니다. 비활성화하면 있는 그대로 렌더링되므로 테이블 모양이 깨질 수 있습니다(비활성화된 상태로 두면 여러 줄 값을 복사하여 붙여넣기가 더 쉬워진다는 장점도 있습니다).
output_format_pretty_named_tuples_as_json
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.12 | 1 | Pretty 형식에서 이름이 지정된 Tuple을 JSON 객체로 출력할지 제어하는 새로운 설정 |
Pretty 형식에서 이름이 지정된 Tuple을 가독성 좋게 포맷된 JSON 객체로 출력할지 제어합니다.
output_format_pretty_row_numbers
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.3 | 1 | 사용성이 더 향상됩니다. |
Pretty 출력 형식에서 각 행 앞에 행 번호를 표시합니다
output_format_pretty_single_large_number_tip_threshold
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.2 | 1000000 | 블록이 이 값(0 제외)을 초과하는 단일 숫자 하나로 구성된 경우 테이블 오른쪽에 읽기 쉬운 숫자 팁을 출력합니다 |
블록이 이 값(0 제외)을 초과하는 단일 숫자 하나로 구성된 경우 테이블 오른쪽에 읽기 쉬운 숫자 팁을 출력합니다
output_format_pretty_squash_consecutive_ms
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.1 | 50 | 새로운 설정 추가 |
다음 블록이 올 때까지 지정된 밀리초 동안 기다렸다가, 쓰기 전에 이전 블록과 병합합니다. 이렇게 하면 너무 작은 블록이 자주 출력되는 것을 방지하면서도 데이터를 스트리밍 방식으로 표시할 수 있습니다.
output_format_pretty_squash_max_wait_ms
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 25.1 | 1000 | 새로운 설정 |
이전 출력 이후 지정된 밀리초보다 많은 시간이 지나면, 대기 중인 블록을 Pretty 형식으로 출력합니다.
output_format_pretty_use_nbsp_for_padding
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 26.6 | 0 | 새 설정입니다. 활성화하면 `Pretty` 출력의 패딩이 `U+00A0`로 렌더링되어 일반 공백이 연속된 부분을 압축하는 도구를 거쳐 복사하여 붙여넣어도 유지됩니다. |
활성화하면 Pretty 출력 형식의 패딩이 ASCII 공백 대신 U+00A0로 렌더링됩니다.
출력은 고정폭 글꼴에서 시각적으로는 동일하지만, 일반 공백이 연속된 부분을 압축하거나 잘라내는 도구를 거쳐도 패딩은 유지됩니다.
output_format_pretty_grid_charset이 UTF-8일 때만 적용됩니다.
output_format_protobuf_nullables_with_google_wrappers
Google wrappers를 사용해 널 허용 컬럼을 직렬화할 때, 기본값을 빈 wrapper로 직렬화합니다. 이 설정을 끄면 기본값과 NULL 값은 직렬화되지 않습니다.
output_format_schema
자동으로 생성된 스키마를 Cap'n Proto 또는 Protobuf 포맷으로 저장할 파일의 경로입니다.
output_format_sql_insert_include_column_names
INSERT 쿼리에 컬럼명 포함하기
output_format_sql_insert_max_batch_size
하나의 INSERT 문에 포함될 수 있는 최대 행 수입니다.
output_format_sql_insert_quote_names
컬럼명을 '`' 문자로 감싸 표시합니다
output_format_sql_insert_table_name
출력 INSERT 쿼리의 테이블 이름
output_format_sql_insert_use_replace
INSERT 대신 REPLACE 문을 사용합니다
output_format_trim_fixed_string
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 26.3 | 0 | 텍스트 출력 형식에서 FixedString 값의 후행 널 바이트를 제거하는 새로운 설정 |
텍스트 출력 형식에서 FixedString 값의 후행 널 바이트를 제거합니다. 예를 들어 toFixedString('John', 8)은 John\0\0\0\0 대신 John으로 출력됩니다.
output_format_tsv_crlf_end_of_line
true로 설정하면 TSV 포맷에서 줄 끝이 \n 대신 \r\n이 됩니다.
output_format_values_escape_quote_with_quote
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 24.2 | 0 | 값이 true이면 '를 ''로 이스케이프하고, 그렇지 않으면 \'로 인용합니다 |
값이 true이면 '를 ''로 이스케이프하고, 그렇지 않으면 \'로 인용합니다
output_format_write_statistics
해당되는 출력 형식에 읽은 행 수, 바이트 수, 경과 시간에 대한 통계를 포함합니다.
기본적으로 활성화되어 있습니다.