Snowflake Postgres 서버 설정¶
아래 테이블에는 Snowflake Postgres 인스턴스의 Postgres 서버 구성 요소에 대해 설정할 수 있는 매개 변수가 자세히 설명되어 있습니다. 각 설정의 이름은 해당 Postgres 설명서에 하이퍼링크로 연결되어 있습니다.
Where “Postgres default” appears in the Default column, Snowflake Postgres instances use the default value from Postgres. This can vary by major version.
Snowflake Postgres 인스턴스를 생성할 때 해당 Postgres 서버 설정 값을 설정하는 방법에 대한 자세한 내용은 Snowflake Postgres 인스턴스 생성하기 섹션을 참조하세요.
팁
To see a parameter’s documentation for a specific major version change the word “current” in the hyperlink address to the
target major version. For example, this hyperlink address for the postgres:work_mem setting:
https://www.postgresql.org/docs/current/runtime-config-resource.html#GUC-WORK-MEM
Postgres 17 설명서의 주소는 다음과 같습니다.
https://www.postgresql.org/docs/17/runtime-config-resource.html#GUC-WORK-MEM
구성 요소 |
이름 |
다시 시작 필요 |
설명 |
기본값 |
|---|---|---|---|---|
pgbouncer |
FALSE |
자동으로 생성된(“*”을 통해) 데이터베이스 풀이 해당 시간(초) 동안 사용되지 않은 경우 풀이 해제됩니다. |
3600 |
|
pgbouncer |
FALSE |
사용자/데이터베이스 페어당 허용할 서버 연결 수입니다. |
497 |
|
pgbouncer |
FALSE |
매개 변수 시작 패킷(예: options,extra_float_digits)을 무시합니다. |
client_encoding,datestyle,timezone,standard_conforming_strings,extra_float_digits |
|
pgbouncer |
FALSE |
단일 서버 연결에서 활성 상태로 유지되는 준비된 문의 수 |
250 |
|
pgbouncer |
FALSE |
다른 클라이언트가 서버 연결을 다시 사용할 수 있는 시점을 지정합니다. |
트랜잭션 |
|
pgbouncer |
FALSE |
If a server connection has been idle for more than this many seconds, it will be closed. |
60 |
|
postgres |
FALSE |
실행 계획이 기록될 때 EXPLAIN 출력만이 아닌 EXPLAIN ANALYZE 출력도 인쇄되도록 합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
실행 계획이 기록될 때 버퍼 사용 통계를 인쇄할지 여부를 제어합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
사용할 EXPLAIN 출력 형식을 선택합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
문의 계획이 기록되도록 하는 최소 문 실행 시간(밀리초)입니다. |
Postgres 기본값 |
|
postgres |
FALSE |
중첩된 문(함수 내에서 실행되는 문)이 로깅을 위해 고려되도록 합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
실행 계획이 기록될 때 노드별 타이밍 정보를 인쇄할지 여부를 제어합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
실행 계획이 기록될 때 트리거 실행 통계가 포함되도록 합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
실행 계획이 기록될 때 자세한 세부 정보를 인쇄할지 여부를 제어합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
auto_explain이 각 세션에서 문의 일부만 설명하도록 합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
ANALYZE를 트리거할지 여부를 결정할 때 autovacuum_analyze_threshold에 추가할 테이블 크기의 일부를 지정합니다. |
Postgres 기본값 |
|
postgres |
TRUE |
테이블의 트랜잭션 ID가 테이블 내에서 트랜잭션 ID 순환을 방지하기 위해 VACUUM 작업이 강제되기 전에 도달할 수 있는 최대 기간(트랜잭션 수)을 지정합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
자동 VACUUM 작업에서 사용할 비용 지연 값을 지정합니다. -1을 지정하면 일반 vacuum_cost_delay 값이 사용됩니다. |
Postgres 기본값 |
|
postgres |
FALSE |
자동 VACUUM 작업에서 사용할 비용 제한 값을 지정합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
VACUUM을 트리거할지 여부를 결정할 때 autovacuum_vacuum_insert_threshold에 추가할 테이블 크기의 일부를 지정합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
하나의 테이블에서 VACUUM을 트리거하는 데 필요한 삽입된 튜플 수를 지정합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
VACUUM을 트리거할지 여부를 결정할 때 autovacuum_vacuum_threshold에 추가할 테이블 크기의 일부를 지정합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
검사점 완료 대상을 검사점 간의 총 시간에 대한 비율로 지정합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
자동 WAL 검사점 간의 최대 시간입니다. |
Postgres 기본값 |
|
postgres |
FALSE |
WAL 세그먼트 파일 채우기로 인해 발생한 검사점이 해당 시간보다 더 짧은 간격으로 발생하는 경우 서버 로그에 메시지를 작성합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
ALTER TABLE SET STATISTICS를 통해 설정된 열별 대상이 없는 테이블 열에 대한 기본 통계 대상을 설정합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
구성을 지정하는 명시적 인자가 없는 텍스트 검색 함수의 베리언트에서 사용하는 텍스트 검색 구성을 선택합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
읽기 전용 SQL 트랜잭션은 비임시 테이블을 변경할 수 없습니다. |
꺼짐 |
|
postgres |
FALSE |
핫 대기가 해당 대기에서 현재 실행 중인 쿼리에 대한 피드백을 기본 대기에 전송할지 업스트림 대기에 전송할지 여부를 지정합니다. |
날짜 |
|
postgres |
FALSE |
열린 트랜잭션 내에서 지정된 시간보다 오랫동안 유휴 상태였던 세션을 종료합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
간격 값의 표시 형식을 설정합니다. |
Postgres 기본값 |
|
postgres |
`jit<https://www.postgresql.org/docs/current/runtime-config-query.html#GUC-JIT>`_ |
FALSE |
JIT 지원을 활성화합니다. |
Postgres 기본값 |
postgres |
FALSE |
잠금 획득을 시도하는 동안 지정된 시간보다 오래 대기하는 모든 문을 중단합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
autovacuum이 실행한 각 작업이 지정된 시간보다 오래 실행된 경우 기록됩니다. |
Postgres 기본값 |
|
postgres |
FALSE |
성공적인 각 연결을 자세히 설명하는 라인을 서버 로그에 출력합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
원하는 로그 대상을 설정합니다. |
syslog,stderr |
|
postgres |
FALSE |
세션 종료가 기록되도록 합니다. 로그 출력은 log_connections와 유사한 정보 및 세션 기간을 제공합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
완료된 모든 문의 기간을 기록하도록 합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
각 로그 줄의 시작 부분에 출력되는 printf 스타일 문자열을 지정합니다. |
[%p][%b][%v][%x] %q[user=%u,db=%d,app=%a] |
|
postgres |
FALSE |
세션이 잠금을 획득하기 위해 deadlock_timeout보다 오래 대기할 때 로그 메시지를 생성할지 여부를 제어합니다. |
날짜 |
|
postgres |
FALSE |
지정된 시간보다 오래 실행된 완료된 문의 기간을 샘플링할 수 있습니다. |
Postgres 기본값 |
|
postgres |
FALSE |
문이 지정된 시간보다 오래 실행된 경우 완료된 각 문의 기간이 기록되도록 합니다. |
2초 |
|
postgres |
FALSE |
서버 로그에 기록된 메시지 수준을 제어합니다. |
공지 |
|
postgres |
FALSE |
이에 따라 개별 로그 파일의 최대 크기가 결정됩니다. |
Postgres 기본값 |
|
postgres |
FALSE |
기록되는 SQL 문을 제어합니다. |
ddl |
|
postgres |
FALSE |
기록될 기간이 log_min_duration_sample을 초과하는 문의 비율을 결정합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
임시 파일 이름과 크기의 로깅을 제어합니다. |
10MB |
|
postgres |
FALSE |
다른 이유로 기록된 문 외에도 모든 문이 기록되는 트랜잭션의 비율을 설정합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
논리적 디코딩에서 사용할 최대 메모리 양을 지정합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
VACUUM, CREATE INDEX 및 ALTER TABLE ADD FOREIGN KEY와 같은 유지 관리 작업에서 사용할 최대 메모리 양을 지정합니다. |
TOTAL_MEMORY * 0.4 |
|
postgres |
TRUE |
데이터베이스 서버에 대한 최대 동시 연결 수를 결정합니다. |
500 |
|
postgres |
TRUE |
각 트랜잭션에 할당된 평균 오브젝트 잠금 수를 제어합니다. |
Postgres 기본값 |
|
postgres |
TRUE |
논리적 복제 작업자의 최대 수를 지정합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
단일 유틸리티 명령으로 시작할 수 있는 최대 병렬 작업자 수를 설정합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
클러스터가 병렬 작업을 위해 지원할 수 있는 최대 작업자 수를 설정합니다. |
NUM_CPUS |
|
postgres |
FALSE |
단일 Gather 또는 Gather Merge 노드에서 시작할 수 있는 최대 워커 수를 설정합니다. |
NUM_CPUS |
|
postgres |
TRUE |
서버에서 지원할 수 있는 최대 복제 슬롯 수를 지정합니다. |
10 |
|
postgres |
FALSE |
복제 슬롯이 검사점 시점에 |
STORAGE_GB * 0.1 |
|
postgres |
FALSE |
대기 서버가 곧 적용될 WAL 항목과 충돌하는 대기 쿼리를 취소하기 전에 대기해야 하는 시간을 결정합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
대기 서버가 곧 적용될 WAL 항목과 충돌하는 대기 쿼리를 취소하기 전에 대기해야 하는 시간을 결정합니다. |
Postgres 기본값 |
|
postgres |
TRUE |
대기 서버 또는 스트리밍 기본 백업 클라이언트의 최대 동시 연결 수를 지정합니다. |
10 |
|
postgres |
`max_wal_size<https://www.postgresql.org/docs/current/runtime-config-wal.html#GUC-MAX-WAL-SIZE>`_ |
FALSE |
자동 검사점 중 WAL이 증가할 수 있는 최대 크기입니다. |
MIN(10GB, STORAGE_GB * 0.1) |
postgres |
TRUE |
클러스터가 지원할 수 있는 최대 백그라운드 프로세스 수를 설정합니다. |
100 |
|
postgres |
TRUE |
추적되는 최대 문의 수입니다. |
Postgres 기본값 |
|
postgres |
FALSE |
추적해야 하는 문을 제어합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
유틸리티 명령을 추적해야 합니다. 유틸리티 명령은 SELECT, INSERT, UPDATE, DELETE 및 MERGE 이외의 모든 명령입니다. |
Postgres 기본값 |
|
postgres |
FALSE |
순차적으로 가져오지 않는 디스크 페이지의 비용에 대한 플래너의 추정치를 설정합니다. |
1.1 |
|
postgres |
FALSE |
연결 시작 시 미리 로드할 하나 이상의 공유 라이브러리를 지정합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
지정된 시간보다 오래 걸리는 모든 문을 중단합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
데이터베이스 서버가 클라이언트에 “성공” 표시를 반환하기 전에 완료해야 하는 WAL 처리량을 지정합니다. |
로컬 |
|
postgres |
FALSE |
syslog로 전송된 메시지를 1024바이트에 맞게 줄로 분할합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
클라이언트에 대한 서버의 연결이 비활성 상태로 간주되기 전에 손실될 수 있는 TCP 연결 유지 메시지의 수를 지정합니다. |
4 |
|
postgres |
FALSE |
네트워크 활동이 없는 시간 동안 운영 체제가 클라이언트에 TCP 연결 유지 메시지를 전송해야 시간을 지정합니다. |
2 |
|
postgres |
FALSE |
프로세스가 정렬 및 해시 임시 파일과 같은 임시 파일이나 보류된 커서의 저장소 파일에 사용할 수 있는 최대 디스크 공간을 지정합니다. |
MIN(2000GB, STORAGE_GB * 0.25) |
|
postgres |
TRUE |
pg_stat_activity.query 필드의 각 활성 세션에 대해 현재 실행 중인 명령의 텍스트를 저장하기 위해 예약된 메모리입니다. |
Postgres 기본값 |
|
postgres |
TRUE |
트랜잭션의 커밋 시간을 기록합니다. |
Postgres 기본값 |
|
postgres |
`wal_keep_size<https://postgresqlco.nf/doc/en/param/wal_keep_size/>`_ |
FALSE |
대기 서버가 스트리밍 복제를 위해 파일을 가져와야 하는 경우를 대비하여 pg_wal 디렉터리에 보관된 과거 WAL 파일의 최소 크기를 지정합니다. |
Postgres 기본값 |
postgres |
FALSE |
WAL 복제에 대한 최대 대기 시간을 설정합니다. |
Postgres 기본값 |
|
postgres |
FALSE |
임시 디스크 파일에 작성하기 전에 쿼리 작업(예: 정렬 또는 해시 테이블)에서 사용할 기본 최대 메모리 양을 설정합니다. |
(TOTAL_MEMORY * 0.75)/(NUM_CORES * 8) |