구성
구성 (Configuration)
DuckDB에는 시스템의 동작을 바꾸는 데 사용할 수 있는 많은 구성 옵션이 있어요. SET 문이나 PRAGMA 문으로 설정하고, RESET 문으로 원래 값으로 되돌릴 수 있답니다. 함께 살펴볼까요?
출처: 문서
본문
DuckDB에는 시스템의 동작을 바꾸는 데 사용할 수 있는 많은 구성 옵션이 있어요.
구성 옵션은 [SET 문]({% link docs/current/sql/statements/set.md %})이나 [PRAGMA 문]({% link docs/current/configuration/pragmas.md %})으로 설정할 수 있어요.
[RESET 문]({% link docs/current/sql/statements/set.md %}#reset)으로 원래 값으로 되돌릴 수 있어요.
구성 옵션의 값은 [current_setting() 스칼라 함수]({% link docs/current/sql/functions/utility.md %})나 [duckdb_settings() 테이블 함수]({% link docs/current/sql/meta/duckdb_table_functions.md %}#duckdb_settings)로 조회할 수 있어요. 예를 들어:
SELECT current_setting('memory_limit') AS memlimit;
또는:
SELECT value AS memlimit
FROM duckdb_settings()
WHERE name = 'memory_limit';
예시 (Examples)
시스템의 메모리 한도를 10 GB로 설정해요.
SET memory_limit = '10GB';
시스템이 1개 스레드를 사용하도록 구성해요.
SET threads TO 1;
로깅을 켜고 로깅 레벨을 debug로 설정해요.
로깅 레벨에 대한 추가 세부 사항은 [Log Level]({% link docs/current/operations_manual/logging/overview.md %}#log-level)을 참고하세요.
SET enable_logging = true;
SET logging_level = 'debug';
debug 레벨과 connection 범위로 단일 로그 메시지를 써요:
SELECT write_log('A new client has connected.', level := 'debug', scope := 'connection');
debug 레벨, connection 범위, 커스텀 log_type으로 단일 로그 메시지를 써요:
SELECT write_log(
'A new duck has connected to the lake.',
level := 'debug',
scope := 'connection',
log_type := 'duckdb.docs.example.quack'
);
DEBUG 로그 레벨로 로그를 확인해요:
SELECT * FROM duckdb_logs WHERE log_level = 'DEBUG';
QueryLog 타입으로 로그를 확인해요:
SELECT * FROM duckdb_logs WHERE type = 'QueryLog';
현재 로깅 설정을 확인해요:
SELECT * FROM duckdb_settings() WHERE name LIKE '%logging%';
오래 걸리는 쿼리 동안 진행률 막대 출력을 활성화해요:
SET enable_progress_bar = true;
기본 NULL 순서를 NULLS LAST로 설정해요:
SET default_null_order = 'nulls_last';
특정 설정의 현재 값을 반환해요:
SELECT current_setting('threads') AS threads;
| threads |
|---|
| 10 |
특정 설정을 조회해요:
SELECT *
FROM duckdb_settings()
WHERE name = 'threads';
| name | value | description | input_type | scope |
|---|---|---|---|---|
| threads | 1 | The number of total threads used by the system. | BIGINT | GLOBAL |
사용 가능한 모든 설정의 목록을 보여줘요:
SELECT *
FROM duckdb_settings();
시스템의 메모리 한도를 기본값으로 리셋해요:
RESET memory_limit;
Secrets 매니저 (Secrets Manager)
DuckDB에는 [Secrets 매니저]({% link docs/current/sql/statements/create_secret.md %})가 있는데, secrets를 사용하는 모든 백엔드(예: AWS S3)에서 통일된 사용자 인터페이스를 제공해요.
구성 참조 (Configuration Reference)
구성 옵션은 서로 다른 기본 [스코프]({% link docs/current/sql/statements/set.md %}#scopes)를 가져요: GLOBAL과 LOCAL. 아래는 스코프별 사용 가능한 모든 구성 옵션 목록이에요.
전역 구성 옵션 (Global Configuration Options)
| 이름 (Name) | 설명 (Description) | 타입 (Type) | 기본값 (Default value) |
|---|---|---|---|
Calendar |
현재 달력 | VARCHAR |
System (locale) calendar |
TimeZone |
현재 시간대 | VARCHAR |
System (locale) timezone |
__delta_only_variant_encoding_enabled |
Parquet reader가 Variant를 구조적으로 식별하도록 활성화해요. | BOOLEAN |
false |
access_mode |
데이터베이스의 접근 모드 (AUTOMATIC, READ_ONLY 또는 READ_WRITE) |
VARCHAR |
automatic |
allocator_background_threads |
할당자(allocator) 백그라운드 스레드를 활성화할지 여부. | BOOLEAN |
false |
allocator_bulk_deallocation_flush_threshold |
이보다 큰 벌크 할당 해제(bulk deallocation)가 발생하면, 미결 할당을 플러시해요. | VARCHAR |
512.0 MiB |
allocator_flush_threshold |
태스크 완료 후 할당자를 플러시할 최고 할당 임계값. | VARCHAR |
128.0 MiB |
allow_asterisks_in_http_paths |
사용자가 쿼리할 수 있는 URL에서 '*' 문자를 허용해요 | BOOLEAN |
false |
allow_community_extensions |
커뮤니티 빌드 확장 로드를 허용해요 | BOOLEAN |
true |
allow_extensions_metadata_mismatch |
호환되지 않는 메타데이터를 가진 확장 로드를 허용해요 | BOOLEAN |
false |
allow_parser_override_extension |
확장이 현재 파서를 재정의하도록 허용해요 | VARCHAR |
DEFAULT |
allow_persistent_secrets |
재시작 시 저장되고 로드되는 영속 secrets 생성 허용해요 | BOOLEAN |
true |
allow_unredacted_secrets |
수정되지 않은(redact되지 않은) secrets 출력을 허용해요 | BOOLEAN |
false |
allow_unsigned_extensions |
무효하거나 누락된 서명을 가진 확장 로드를 허용해요 | BOOLEAN |
false |
allowed_configs |
항상 변경이 허용되는 구성 옵션 목록 - lock_configuration이 true여도 마찬가지예요 | VARCHAR[] |
[] |
allowed_directories |
항상 쿼리가 허용되는 디렉토리/접두사 목록 - enable_external_access가 false여도 마찬가지예요 | VARCHAR[] |
[] |
allowed_paths |
항상 쿼리가 허용되는 파일 목록 - enable_external_access가 false여도 마찬가지예요 | VARCHAR[] |
[] |
arrow_large_buffer_size |
문자열, blob, uuid, bit용 Arrow 버퍼를 large buffer로 내보낼지 여부 | BOOLEAN |
false |
arrow_lossless_conversion |
DuckDB 타입이 Arrow에 명확한 네이티브나 표준 확장 매치가 없을 때마다, duckdb.type_name 확장 이름으로 타입을 내보내요. | BOOLEAN |
false |
arrow_output_list_view |
LIST 컬럼의 물리적 레이아웃으로 Arrow로 내보낼 때 ListView를 사용할지 여부 | BOOLEAN |
false |
arrow_output_version |
문자열을 DuckDB가 Utf8 대신 Utf8View 형식으로 생성할지 여부 | VARCHAR |
1.0 |
asof_loop_join_threshold |
ASOF 조인의 왼쪽에 중첩 루프 조인을 사용하기 위해 필요한 최대 행 수 | UBIGINT |
64 |
auto_checkpoint_skip_wal_threshold |
WAL 쓰기를 건너뛰고 체크포인트만 할 예상 WAL 쓰기 크기. WAL 쓰기를 건너뛰면 체크포인트가 일어나는 동안 동시 커밋이 차단돼요. | UBIGINT |
100000 |
auto_fallback_to_full_download |
가능할 때 전체 파일 다운로드로 자동 폴백을 허용해요. | BOOLEAN |
true |
autoinstall_extension_repository |
자동 로드 시 확장 설치를 위한 커스텀 엔드포인트를 재정의해요 | VARCHAR |
|
autoinstall_known_extensions |
쿼리가 의존할 때 알려진 확장이 자동 설치되도록 허용할지 여부 | BOOLEAN |
true |
autoload_known_extensions |
쿼리가 의존할 때 알려진 확장이 자동 로드되도록 허용할지 여부 | BOOLEAN |
true |
binary_as_string |
Parquet 파일에서 이진 데이터를 문자열로 해석해요. | BOOLEAN |
false |
block_allocator_memory |
블록 할당자가 사용할 수 있는 물리 메모리 (이 메모리는 해제되지 않고 줄일 수 없어요). | VARCHAR |
0 bytes |
ca_cert_file |
자체 서명 인증서를 위한 커스텀 인증서 파일의 경로. | VARCHAR |
|
catalog_error_max_schemas |
카탈로그에서 "혹시 이걸 말한 건가요..." 스타일 오류를 위해 시스템이 스캔할 최대 스키마 수 | UBIGINT |
100 |
checkpoint_threshold, wal_autocheckpoint |
자동으로 체크포인트를 트리거하는 WAL 크기 임계값 (예: 1GB) | VARCHAR |
16.0 MiB |
current_transaction_invalidation_policy |
어떤 타입의 예외가 현재 트랜잭션의 데이터베이스를 무효화하는지 | VARCHAR |
STANDARD_POLICY |
custom_extension_repository |
원격 확장 설치를 위한 커스텀 엔드포인트를 재정의해요 | VARCHAR |
|
custom_user_agent |
DuckDB 호출자로부터의 메타데이터 | VARCHAR |
|
default_block_size |
새 duckdb 데이터베이스 파일의 기본 블록 크기 (아직 존재하지 않는 새 파일). | UBIGINT |
262144 |
default_collation |
아무것도 지정되지 않았을 때 사용되는 콜레이션 설정 | VARCHAR |
|
default_null_order, null_order |
아무것도 지정되지 않았을 때 사용되는 NULL 순서 (NULLS_FIRST 또는 NULLS_LAST) |
VARCHAR |
NULLS_LAST |
default_order |
아무것도 지정되지 않았을 때 사용되는 순서 타입 (ASC 또는 DESC) |
VARCHAR |
ASCENDING |
default_secret_storage |
secrets의 기본 저장소를 전환할 수 있게 해줘요 | VARCHAR |
local_file |
deprecated_using_key_syntax |
USING KEY CTE를 위한 더 이상 사용되지 않는 union 구문 사용을 구성해요. | VARCHAR |
DEFAULT |
disable_database_invalidation |
치명적 오류가 발생했을 때 데이터베이스 인스턴스 무효화를 비활성화해요. 치명적 오류 후 DuckDB가 올바른 동작을 보장할 수 없으므로 매우 주의해서 사용해야 해요. | BOOLEAN |
false |
disable_parquet_prefetching |
Parquet의 프리페칭 메커니즘을 비활성화해요 | BOOLEAN |
false |
disable_timestamptz_casts |
timestamp에서 timestamptz로의 캐스팅을 비활성화해요 | BOOLEAN |
false |
disabled_compression_methods |
특정 압축 방법 집합을 비활성화해요 (쉼표로 구분) | VARCHAR |
|
disabled_filesystems |
접근을 막는 특정 파일시스템을 비활성화해요 (예: LocalFileSystem) | VARCHAR |
|
disabled_log_types |
비활성화된 로거 목록을 설정해요 | VARCHAR |
|
disabled_optimizers |
특정 옵티마이저 집합을 비활성화해요 (쉼표로 구분) | VARCHAR |
|
duckdb_api |
DuckDB API 표면 | VARCHAR |
cli |
dynamic_or_filter_threshold |
해시 조인에서 동적으로 생성하는 최대 OR 필터 수 | UBIGINT |
50 |
enable_curl_server_cert_verification |
CURL 백엔드에 대한 서버 측 인증서 검증을 활성화해요. | BOOLEAN |
true |
enable_external_access |
데이터베이스가 외부 상태에 접근하도록 허용해요 (예: 모듈 로딩/설치, COPY TO/FROM, CSV reader, pandas replacement scans 등) | BOOLEAN |
true |
enable_external_file_cache |
데이터베이스가 외부 파일(예: Parquet)을 메모리에 캐시하도록 허용해요. | BOOLEAN |
true |
enable_fsst_vectors |
FSST 압축 세그먼트의 스캔이 지연 압축 해제를 활용하기 위해 압축된 벡터를 출력하도록 허용해요 | BOOLEAN |
false |
enable_geoparquet_conversion |
spatial 확장이 있으면 GeoParquet 파일에서/로 지오메트리 데이터를 디코드/인코드하려 시도해요. | BOOLEAN |
true |
enable_global_s3_configuration |
환경 변수에서 AWS 자격 증명을 자동으로 가져와요. | BOOLEAN |
true |
enable_http_metadata_cache |
전역 http 메타데이터가 HTTP 메타데이터를 캐시하는 데 사용되는지 여부 | BOOLEAN |
false |
enable_logging |
로거를 활성화해요 | BOOLEAN |
1 |
enable_macro_dependencies |
생성된 MACRO가 참조된 객체(테이블 같은)에 의존성을 만들도록 활성화해요 | BOOLEAN |
false |
enable_object_cache |
[PLACEHOLDER] 레거시 설정 - 아무것도 하지 않아요 | BOOLEAN |
false |
enable_server_cert_verification |
서버 측 인증서 검증을 활성화해요. | BOOLEAN |
false |
enable_view_dependencies |
생성된 VIEW가 참조된 객체(테이블 같은)에 의존성을 만들도록 활성화해요 | BOOLEAN |
false |
enabled_log_types |
활성화된 로거 목록을 설정해요 | VARCHAR |
|
errors_as_json |
오류 메시지를 원시 문자열 대신 구조화된 JSON으로 출력해요 |
BOOLEAN |
false |
experimental_metadata_reuse |
EXPERIMENTAL: 체크포인트 시 행 그룹과 테이블 메타데이터를 재사용해요. | BOOLEAN |
true |
explain_output |
EXPLAIN 문의 출력 (ALL, OPTIMIZED_ONLY, PHYSICAL_ONLY) |
VARCHAR |
PHYSICAL_ONLY |
extension_directories |
확장을 저장할 디렉토리를 설정해요 | VARCHAR[] |
[] |
extension_directory |
확장을 저장할 디렉토리를 설정해요 | VARCHAR |
|
external_threads |
DuckDB 태스크에서 작업하는 외부 스레드 수. | UBIGINT |
1 |
file_search_path |
입력 파일을 검색할 디렉토리의 쉼표로 구분된 목록 | VARCHAR |
|
force_download_threshold |
주어진 바이트 크기보다 작은 파일의 선행(upfront) 다운로드를 강제해요 | UBIGINT |
0 |
force_download |
파일의 선행 다운로드를 강제해요 | BOOLEAN |
false |
force_mbedtls_unsafe |
암호화에 mbedtls 활성화 (경고: 사용하기에 안전하지 않음) | BOOLEAN |
false |
force_variant_shredding |
체크포인트에서 발생하는 VARIANT shredding이 제공된 스키마를 사용하도록 강제해요. | VARCHAR |
INVALID |
geometry_minimum_shredding_size |
GEOMETRY shredding을 활성화할 행 그룹의 최소 크기, 또는 완전히 비활성화하려면 -1로 설정. 기본값은 행 그룹의 1/4 | BIGINT |
30000 |
home_directory |
시스템이 사용하는 홈 디렉토리를 설정해요 | VARCHAR |
|
http_keep_alive |
keep-alive 연결. 연결 실패가 발생할 때 false로 설정하면 도움이 될 수 있어요 | BOOLEAN |
true |
http_proxy_password |
HTTP 프록시용 패스워드 | VARCHAR |
|
http_proxy_username |
HTTP 프록시용 사용자 이름 | VARCHAR |
|
http_proxy |
HTTP 프록시 호스트 | VARCHAR |
|
http_retries |
I/O 오류 시 HTTP 재시도 | UBIGINT |
3 |
http_retry_backoff |
지수적으로 증가하는 재시도 대기 시간의 백오프 계수 | FLOAT |
4 |
http_retry_wait_ms |
재시도 사이 간격 | UBIGINT |
100 |
http_timeout |
HTTP 타임아웃 읽기/쓰기/연결/재시도 (초 단위) | UBIGINT |
30 |
httpfs_client_implementation |
사용할 HTTPUtil 구현을 선택해요 | VARCHAR |
default |
httpfs_connection_caching |
HTTP 요청을 위한 연결 캐싱을 활성화해요 | BOOLEAN |
false |
ieee_floating_point_ops |
IEE754 호환 부동소수점 연산 사용 (오류/NULL 대신 NAN 반환). | BOOLEAN |
true |
ignore_unknown_crs |
지오메트리 타입을 만들거나 지리공간 데이터를 가져올 때 알 수 없는 Coordinate Reference Systems (CRS)를 무시해요. | BOOLEAN |
false |
immediate_transaction_mode |
트랜잭션을 필요할 때 지연 시작할지, 아니면 BEGIN TRANSACTION 호출 시 즉시 시작할지 | BOOLEAN |
false |
index_scan_max_count |
최대 인덱스 스캔 수는 인덱스 스캔의 임계값을 설정해요. MAX(index_scan_max_count, index_scan_percentage * total_row_count)보다 적은 행이 매치되면 테이블 스캔 대신 인덱스 스캔을 수행해요. | UBIGINT |
2048 |
index_scan_percentage |
인덱스 스캔 백분율은 인덱스 스캔의 임계값을 설정해요. MAX(index_scan_max_count, index_scan_percentage * total_row_count)보다 적은 행이 매치되면 테이블 스캔 대신 인덱스 스캔을 수행해요. | DOUBLE |
0.001 |
integer_division |
/ 연산자가 기본적으로 정수 나눗셈으로 동작할지, 부동소수점 나눗셈으로 동작할지 | BOOLEAN |
false |
lambda_syntax |
람다 함수를 위한 더 이상 사용되지 않는 단일 화살표 연산자(->) 사용을 구성해요. | VARCHAR |
DEFAULT |
late_materialization_max_rows |
지연 구체화를 트리거하는 LIMIT/SAMPLE의 최대 행 수 | UBIGINT |
50 |
lock_configuration |
구성을 변경할 수 있는지 여부 | BOOLEAN |
false |
log_query_path |
쿼리가 로깅될 경로를 지정해요 (기본값: NULL, 쿼리는 로깅되지 않음) | VARCHAR |
|
logging_level |
로그에 기록될 로그 레벨 | VARCHAR |
WARNING |
logging_mode |
어떤 타입의 로그 메시지가 로깅되는지 결정해요 | VARCHAR |
LEVEL_ONLY |
logging_storage |
로깅 저장소 설정 (memory/stdout/file/ |
VARCHAR |
shell_log_storage |
max_expression_depth |
파서의 최대 표현식 깊이 한도. 경고: 이 설정을 늘리고 매우 깊은 표현식을 사용하면 스택 오버플로 오류가 발생할 수 있어요. | UBIGINT |
1000 |
max_memory, memory_limit |
시스템의 최대 메모리 (예: 1GB) | VARCHAR |
80% of RAM |
max_temp_directory_size |
'temp_directory'(설정 시) 안에 저장되는 최대 데이터 양 (예: 1GB) | VARCHAR |
90% of available disk space |
max_vacuum_tasks |
체크포인트 동안 스케줄할 최대 vacuum 태스크 수. | UBIGINT |
100 |
merge_http_secret_into_s3_request |
http secret 파라미터를 S3 요청에 병합해요 | BOOLEAN |
true |
merge_join_threshold |
merge join을 선택하기 위해 어느 한 테이블의 최대 행 수 | UBIGINT |
1000 |
nested_loop_join_threshold |
중첩 루프 조인을 선택하기 위해 어느 한 테이블의 최대 행 수 | UBIGINT |
5 |
old_implicit_casting |
VARCHAR로의/로부터의 암시적 캐스팅 허용해요 | BOOLEAN |
false |
order_by_non_integer_literal |
비정수 리터럴로 정렬 허용 - 그런 리터럴로 정렬하는 것은 효과가 없어요. | BOOLEAN |
false |
ordered_aggregate_threshold |
정렬 전에 누적할 행 수, 튜닝에 사용됨 | UBIGINT |
262144 |
parquet_metadata_cache |
Parquet 메타데이터 캐시 - 같은 파일을 여러 번 읽을 때 유용해요 | BOOLEAN |
false |
partitioned_write_flush_threshold |
PARTITION_BY로 쓸 때 스레드 상태를 플러시하는 행 수 임계값 |
UBIGINT |
524288 |
partitioned_write_max_open_files |
PARTITION_BY로 쓸 때 디스크로 플러시하기 전에 시스템이 열어둘 수 있는 최대 파일 수 |
UBIGINT |
100 |
password |
사용할 패스워드. 레거시 호환성을 위해 무시돼요. | VARCHAR |
|
perfect_ht_threshold |
완전(perfect) 해시 테이블을 사용할 때의 바이트 단위 임계값 | UBIGINT |
12 |
pin_threads |
스레드를 코어에 고정할지 여부 (Linux 전용, 기본값 AUTO: 코어가 64개를 넘으면 켜짐) | VARCHAR |
auto |
pivot_filter_threshold |
전용 pivot 연산자로 LIST를 사용한 필터 집계에서 전환할 임계값 | UBIGINT |
20 |
pivot_limit |
pivot 문에서의 최대 pivot 컬럼 수 | UBIGINT |
100000 |
prefer_range_joins |
혼합 조건으로 range join 사용을 강제해요 | BOOLEAN |
false |
prefetch_all_parquet_files |
모든 타입의 parquet 파일에 프리페칭 메커니즘 사용해요 | BOOLEAN |
false |
preserve_identifier_case |
모든 비인용 식별자를 항상 소문자화하는 대신 식별자 대소문자를 보존할지 여부 | BOOLEAN |
true |
preserve_insertion_order |
삽입 순서를 보존할지 여부. false로 설정하면 시스템이 ORDER BY 절이 없는 결과를 재정렬할 수 있어요. | BOOLEAN |
true |
produce_arrow_string_view |
Arrow 문자열을 DuckDB가 Utf8 대신 Utf8View 형식으로 생성할지 여부 | BOOLEAN |
false |
s3_access_key_id |
S3 Access Key ID | VARCHAR |
NULL |
s3_allow_recursive_globbing |
S3형 저장소의 glob이 재귀 전략으로 최적화되는지 여부 (대안은 listing) | BOOLEAN |
true |
s3_endpoint |
S3 Endpoint | VARCHAR |
NULL |
s3_kms_key_id |
S3 KMS Key ID | VARCHAR |
NULL |
s3_region |
S3 Region | VARCHAR |
NULL |
s3_requester_pays |
S3 requester pays 모드 사용 | BOOLEAN |
false |
s3_secret_access_key |
S3 Access Key | VARCHAR |
NULL |
s3_session_token |
S3 Session Token | VARCHAR |
NULL |
s3_uploader_max_filesize |
S3 Uploader 최대 파일 크기 (50GB와 5TB 사이) | VARCHAR |
800GB |
s3_uploader_max_parts_per_file |
S3 Uploader 파일당 최대 파트 수 (1과 10000 사이) | UBIGINT |
10000 |
s3_uploader_thread_limit |
S3 Uploader 전역 스레드 한도 | UBIGINT |
50 |
s3_url_compatibility_mode |
S3 URL에서 Globs와 Query Parameters 비활성화 | BOOLEAN |
false |
s3_url_style |
S3 URL 스타일 | VARCHAR |
vhost |
s3_use_ssl |
S3 SSL 사용 | BOOLEAN |
true |
s3_version_id_pinning |
일관성을 위해 S3 읽기를 특정 객체 버전에 고정해요 | BOOLEAN |
false |
scalar_subquery_error_on_multiple_rows |
스칼라 서브쿼리가 여러 행을 반환할 때 - 오류를 반환하는 대신 임의 행을 반환해요. | BOOLEAN |
true |
scheduler_process_partial |
재스케줄 전 태스크를 부분 처리 - 별도 쿼리 간 스케줄러 공정성을 높여줘요 | BOOLEAN |
false |
secret_directory |
영속 secrets가 저장되는 디렉토리를 설정해요 | VARCHAR |
~/.duckdb/stored_secrets |
storage_block_prefetch |
어떤 시나리오에서 storage block 프리페칭을 사용할지 | VARCHAR |
REMOTE_ONLY |
storage_compatibility_version |
주어진 duckdb 버전과의 호환성으로 체크포인트에 직렬화해요 | VARCHAR |
v0.10.2 |
temp_directory |
임시 파일을 쓸 디렉토리를 설정해요 | VARCHAR |
⟨database_name⟩.tmp or .tmp (in in-memory mode) |
temp_file_encryption |
데이터베이스가 암호화되어 있으면 모든 임시 파일을 암호화해요 | BOOLEAN |
false |
threads, worker_threads |
시스템이 사용하는 전체 스레드 수. | BIGINT |
# CPU cores |
unsafe_disable_etag_checks |
ETag 일관성 검사 비활성화 | BOOLEAN |
false |
user, username |
사용할 사용자 이름. 레거시 호환성을 위해 무시돼요. | VARCHAR |
|
vacuum_rebuild_indexes |
(실험적) bound ART 인덱스가 있는 테이블에서 vacuum이 행 그룹을 압축하고 그 후 인덱스를 재구축하도록 허용해요. 이 임계값을 초과하는 행 수의 테이블은 건너뛰어요. 0 = 비활성화. | UBIGINT |
0 |
validate_external_file_cache |
캐시 검증 모드: VALIDATE_ALL (기본값, 모든 캐시 항목 검증), VALIDATE_REMOTE (원격 캐시 항목만 검증), 또는 NO_VALIDATION (캐시 검증 비활성화). |
VARCHAR |
VALIDATE_ALL |
variant_minimum_shredding_size |
VARIANT shredding을 활성화할 행 그룹의 최소 크기, 또는 완전히 비활성화하려면 -1로 설정. 기본값은 행 그룹의 1/4 | BIGINT |
30000 |
wal_autocheckpoint_entries |
WAL 항목 수가 N에 도달하거나 초과하면 자동 체크포인트 트리거 (0 = 비활성화) | UBIGINT |
0 |
warnings_as_errors |
모든 경고를 오류로 승격해요. | BOOLEAN |
false |
write_buffer_row_group_count |
벌크 수집에서 함께 플러시하기 전에 버퍼링할 행 그룹 수. 이 설정을 줄이면 메모리 소비를 줄일 수 있어요. | UBIGINT |
5 |
write_buffer_row_group_memory_limit |
함께 플러시하기 전에 행 그룹에 버퍼링할 최대 데이터 (바이트). 이 한도나 write_buffer_row_group_count에 도달하면 데이터가 디스크로 플러시돼요. 기본값은 메모리 한도의 20%를 스레드 수로 나눈 값이에요. |
VARCHAR |
|
zstd_min_string_length |
ZSTD 압축을 활성화할 (평균) 길이, 기본값은 4096 | UBIGINT |
4096 |
로컬 구성 옵션 (Local Configuration Options)
| 이름 (Name) | 설명 (Description) | 타입 (Type) | 기본값 (Default value) |
|---|---|---|---|
custom_profiling_settings |
커스텀 메트릭을 활성화하는 JSON을 받아요 |
VARCHAR |
{"ATTACH_LOAD_STORAGE_LATENCY": "true", "ATTACH_REPLAY_WAL_LATENCY": "true", "BLOCKED_THREAD_TIME": "true", "CHECKPOINT_LATENCY": "true", "COMMIT_LOCAL_STORAGE_LATENCY": "true", "CPU_TIME": "true", "CUMULATIVE_CARDINALITY": "true", "CUMULATIVE_ROWS_SCANNED": "true", "EXTRA_INFO": "true", "LATENCY": "true", "OPERATOR_CARDINALITY": "true", "OPERATOR_NAME": "true", "OPERATOR_ROWS_SCANNED": "true", "OPERATOR_TIMING": "true", "OPERATOR_TYPE": "true", "QUERY_NAME": "true", "RESULT_SET_SIZE": "true", "ROWS_RETURNED": "true", "SYSTEM_PEAK_BUFFER_MEMORY": "true", "SYSTEM_PEAK_TEMP_DIR_SIZE": "true", "TOTAL_BYTES_READ": "true", "TOTAL_BYTES_WRITTEN": "true", "TOTAL_MEMORY_ALLOCATED": "true", "WAITING_TO_ATTACH_LATENCY": "true", "WAL_REPLAY_ENTRY_COUNT": "true", "WRITE_TO_WAL_LATENCY": "true"} |
enable_caching_operators |
중간 결과를 캐시하는 캐싱 연산자를 활성화해요 | BOOLEAN |
true |
enable_http_logging |
(더 이상 사용되지 않음) HTTP 로깅을 활성화해요 | BOOLEAN |
true |
enable_profiling |
프로파일링을 활성화하고 출력 형식을 설정해요 (JSON, QUERY_TREE, QUERY_TREE_OPTIMIZER) |
VARCHAR |
NULL |
enable_progress_bar_print |
'enable_progress_bar'가 true일 때 진행률 막대 출력을 제어해요 | BOOLEAN |
true |
enable_progress_bar |
긴 쿼리에 대해 터미널에 진행률을 출력하는 진행률 막대를 활성화해요 | BOOLEAN |
true |
http_logging_output |
(더 이상 사용되지 않음) HTTP 로깅 출력이 저장될 파일, 또는 터미널에 출력하려면 비어 있음 | VARCHAR |
|
profile_output, profiling_output |
프로파일 출력이 저장될 파일, 또는 터미널에 출력하려면 비어 있음 | VARCHAR |
|
profiling_coverage |
프로파일링 커버리지 (SELECT 또는 ALL) |
VARCHAR |
SELECT |
profiling_mode |
프로파일링 모드 (STANDARD 또는 DETAILED) |
VARCHAR |
NULL |
progress_bar_time |
진행률 막대를 출력하기 시작하기 전에 쿼리가 걸려야 하는 시간(밀리초)을 설정해요 | BIGINT |
2000 |
schema |
기본 검색 스키마를 설정해요. search_path를 단일 값으로 설정하는 것과 같아요. | VARCHAR |
main |
search_path |
기본 카탈로그 검색 경로를 쉼표로 구분된 값 목록으로 설정해요 | VARCHAR |
|
streaming_buffer_size |
스트리밍 결과에서 가져오는 사이에 버퍼링할 최대 메모리 (예: 1GB) | VARCHAR |
976.5 KiB |