이 문서는 지원되지 않는 버전의 스포츠 토토을위한 것입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다사설 토토 PostgreSQL : 문서 : 17 : 19.4. 자원 소비버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

18.4. 자원 소비

18.4.1. 메모리

shared_buffers(정수)

데이터베이스 서버가 공유 메모리 버퍼에 사용하는 메모리 양을 스포츠 토토합니다. 기본값은 일반적으로 128 메가 바이트입니다 (128MB)이지만 커널 스포츠 토토이 지원되지 않으면 (initdb). 이 스포츠 토토은 128 킬로 바이트 이상이어야합니다. (의 비 디폴트 값blcksz최소값을 변경하십시오.) 그러나 최소보다 훨씬 높은 스포츠 토토은 일반적으로 좋은 성능을 위해 필요합니다. 이 매개 변수는 서버 시작에서만 스포츠 토토할 수 있습니다.

1GB 이상의 RAM이있는 전용 데이터베이스 서버가있는 경우의 합리적인 시작 값shared_buffers는 시스템의 메모리의 25%입니다. 큰 스포츠 토토조차도가있는 워크로드가 있습니다.shared_buffers효과적이지만스포츠 토토운영 체제 캐시에 의존하므로 RAM의 40% 이상이 할당 될 가능성은 거의 없습니다.shared_buffers는 적은 양보다 더 잘 작동합니다. 더 큰 스포츠 토토shared_buffers일반적으로 해당 증가가 필요합니다max_wal_size, 더 오랜 시간 동안 많은 양의 신규 또는 변경된 데이터를 작성하는 프로세스를 확산시키기 위해

1GB 미만의 RAM이있는 시스템에서는 운영 체제를위한 적절한 공간을 남기기 위해 RAM의 작은 비율이 적절합니다. 또한 창에서 큰 값shared_buffers효과적이지 않습니다. 스포츠 토토을 상대적으로 낮게 유지하고 운영 체제 캐시를 대신 사용하는 더 나은 결과를 찾을 수 있습니다. 유용한 범위shared_buffersWindows 시스템의 경우 일반적으로 64MB에서 512MB입니다.

migne_pages(enum)

거대한 메모리 페이지 사용을 활성화/비활성화합니다. 유효한 값은try(기본값),onOFF.

현재이 기능은 Linux에서만 지원됩니다. 스포츠 토토이 스포츠 토토된 다른 시스템에서 스포츠 토토이 무시됩니다try.

거대한 페이지를 사용하면 더 작은 페이지 테이블과 메모리 관리에 소요되는 CPU 시간이 줄어들어 성능이 향상됩니다. 자세한 내용은 참조하십시오.섹션 17.4.5.

withmigne_pages스포츠 토토try, 서버는 거대한 페이지를 사용하려고 시도하지만 실패한 경우 일반 할당을 사용하는 것으로 돌아갑니다. 와 함께on, 거대한 페이지를 사용하지 않으면 서버가 시작되지 않습니다. 와 함께OFF, 거대한 페이지가 사용되지 않습니다.

temp_buffers(정수)

각 데이터베이스 세션에서 사용하는 최대 임시 버퍼 수를 스포츠 토토합니다. 이들은 임시 테이블에 대한 액세스에만 사용되는 세션-로컬 버퍼입니다. 기본값은 8 메가 바이트 (입니다.8MB). 스포츠 토토은 개별 세션 내에서 변경 될 수 있지만 세션 내에서 임시 테이블을 처음 사용하기 전에만 변경할 수 있습니다. 값을 변경하려는 후속 시도는 해당 세션에 영향을 미치지 않습니다.

세션은 필요에 따라 임시 버퍼를 할당합니다.temp_buffers. 실제로 많은 임시 버퍼가 필요하지 않은 세션에서 큰 값을 스포츠 토토하는 비용은 단지 버퍼 디스크립터 일뿐입니다.temp_buffers. 그러나 버퍼가 실제로 사용되는 경우 추가 8192 바이트가 스포츠 토토됩니다 (또는 일반적으로blcksz바이트).

max_prepared_transactions(정수)

에있을 수있는 최대 트랜잭션 수를 스포츠 토토합니다"준비"동시에 상태 (참조PostgreSQL : 문서 : 9.5 : 거래 토토 베이). 이 매개 변수를 0으로 스포츠 토토하면 (기본값 인) 준비된 전환 기능이 비활성화됩니다. 이 매개 변수는 서버 시작에서만 스포츠 토토할 수 있습니다.

준비된 트랜잭션을 사용하지 않을 계획이라면이 매개 변수는 사고로 준비된 트랜잭션의 생성을 방지하기 위해 0으로 스포츠 토토해야합니다. 준비된 거래를 사용하는 경우 원할 것입니다max_prepared_transactions적어도max_connections, 모든 세션이 준비된 거래가 준비 될 수 있도록.

대기 서버를 실행할 때이 매개 변수를 마스터 서버와 동일하거나 더 높은 값으로 스포츠 토토해야합니다. 그렇지 않으면 대기 서버에서 쿼리가 허용되지 않습니다.

work_mem(Integer)

임시 디스크 파일에 작성하기 전에 내부 정렬 작업 및 해시 테이블에서 사용할 메모리의 양을 지정합니다. 값 기본값은 4 메가 ​​바이트 (까지)4MB). 복잡한 쿼리의 경우 여러 종류 또는 해시 작업이 병렬로 실행 중일 수 있습니다. 각 작업은 임시 파일에 데이터를 작성하기 전에이 값이 지정할만큼 많은 메모리를 사용할 수 있습니다. 또한, 여러 달리기 세션은 그러한 작업을 동시에 수행 할 수 있습니다. 따라서 사용 된 총 메모리는 여러 배가 될 수 있습니다.work_mem; 가치를 선택할 때이 사실을 명심해야합니다. 정렬 작업은에 사용됩니다.주문 by, 별개의및 합병 조인. 해시 테이블은 해시 조인, 해시 기반 집계 및 해시 기반 처리에서 사용됩니다.in서브 쿼리.

maintenance_work_mem(Integer)

유지 보수 작업에서 사용할 최대의 메모리 양을 지정합니다.진공, 색인 생성Alter Table Add Foreign Key. 기본적으로 64 메가 바이트 (64MB). 이러한 작업 중 하나만 데이터베이스 세션으로 한 번에 한 번에 실행할 수 있으며, 설치에는 일반적으로 많은 사람들이 동시에 실행되지 않으므로이 값을보다 훨씬 크게 스포츠 토토하는 것이 안전합니다.work_mem. 더 큰 스포츠 토토은 진공 청소기 및 데이터베이스 덤프 복원을위한 성능을 향상시킬 수 있습니다.

autovacuum이 실행될 때 최대autovacuum_max_workers시간이 메모리를 할당 할 수 있으므로 기본값을 너무 높게 스포츠 토토하지 않도록주의하십시오. 별도로 스포츠 토토하여 이것을 제어하는 ​​것이 유용 할 수 있습니다autovacuum_work_mem.

autovacuum_work_mem(Integer)

각 Autovacuum 작업자 프로세스에서 사용할 최대 메모리 양을 지정합니다. 기본값은 -1로,의 값을 나타냅니다.Maintenance_Work_mem대신 사용해야합니다. 스포츠 토토은의 동작에 영향을 미치지 않습니다.진공다른 상황에서 실행될 때.

max_stack_depth(Integer)

서버 실행 스택의 최대 안전 깊이를 지정합니다. 이 매개 변수의 이상적인 스포츠 토토은 커널에 의해 시행되는 실제 스택 크기 한계입니다 (ulimit -s또는 로컬 동등성), 메가 바이트 정도의 안전 마진이 적습니다. 스택 깊이가 서버의 모든 루틴에서 점검되지 않고 표현 평가와 같은 잠재적 인 재구성 루틴에서만 안전 마진이 필요합니다. 기본 스포츠 토토은 두 메가 바이트입니다 (2MB)는 보수적으로 작고 위험 충돌이 발생할 가능성이 거의 없습니다. 그러나 복잡한 기능을 실행하기에는 너무 작을 수 있습니다. 수퍼 유저만이 스포츠 토토을 변경할 수 있습니다.

스포츠 토토max_stack_depth실제 커널 제한보다 높으면 런 어웨이 재활용 기능이 개별 백엔드 프로세스에 충돌 할 수 있음을 의미합니다. 플랫폼에서스포츠 토토커널 제한을 결정할 수 있습니다. 서버는이 변수가 안전하지 않은 값으로 스포츠 토토되지 않습니다. 그러나 모든 플랫폼이 정보를 제공하는 것은 아니므로 값을 선택하는 데주의를 기울입니다.

dynamic_shared_memory_type(enum)

서버가 사용해야하는 동적 공유 메모리 구현을 지정합니다. 가능한 값은posix(POSIX 공유 메모리를 사용하여 할당SHM_OPEN),SYSV(시스템 V 공유 메모리를 통해Shmget),Windows(Windows 공유 메모리의 경우),MMAP(데이터 디렉토리에 저장된 메모리 매핑 된 파일을 사용하여 공유 메모리를 시뮬레이션하려면) 및없음(이 기능을 비활성화하려면). 모든 값이 모든 플랫폼에서 지원되는 것은 아닙니다. 첫 번째 지원되는 옵션은 해당 플랫폼의 기본값입니다. 의 사용MMAP옵션은 플랫폼의 기본값이 아닌 옵션이 일반적으로 수정 된 페이지가 디스크에 반복적으로 다시 작성하여 시스템 I/O로드를 증가시킬 수 있기 때문에 일반적으로 권장하지 않습니다. 그러나이면 디버깅에 유용 할 수 있습니다.PG_DYNSHMEM디렉토리는 RAM 디스크에 저장되어 있거나 다른 공유 메모리 시설을 사용할 수없는 경우.

18.4.2. 디스크

temp_file_limit(정수)

세션에서 세션이 정렬 및 해시 임시 파일과 같은 임시 파일에 사용할 수있는 최대 디스크 공간 금액 또는 HELD 커서의 스토리지 파일을 지정합니다. 이 한도를 초과하려는 거래가 취소됩니다. 값은 킬로 바이트에 지정되어 있으며-1(기본값)는 제한이 없음을 의미합니다. 수퍼 유저만이 스포츠 토토을 변경할 수 있습니다.

이 스포츠 토토은 주어진 곳에서 사용하는 모든 임시 파일에 의해 모든 순간에 사용되는 총 공간을 제한합니다스포츠 토토세션. 쿼리 실행에 비하인드 스토리를 사용하는 임시 파일과 달리 명시적인 임시 테이블에 사용되는 디스크 공간은not이 한도에 대한 계산.

18.4.3. 커널 리소스 사용

max_files_per_process(Integer)

각 서버 서브 프로세스에 허용되는 최대 동시에 열린 파일 수를 스포츠 토토합니다. 기본값은 1 천 파일입니다. 커널이 프로세스 당 안전한 한계를 시행하는 경우이 스포츠 토토에 대해 걱정할 필요가 없습니다. 그러나 일부 플랫폼 (특히 대부분의 BSD 시스템)에서 커널은 많은 프로세스가 해당 파일을 모두 열려고 할 경우 시스템보다 실제로 더 많은 파일을 열 수있게합니다. 자신을보고 있다면"너무 많은 파일"실패,이 스포츠 토토을 줄이십시오. 이 매개 변수는 서버 시작에서만 스포츠 토토할 수 있습니다.

18.4.4. 비용 기반 진공 지연

실행 중PostgreSQL : 문서 : 9.5 : 토토 캔andPostgreSQL : 문서 : 9.5 : 스포츠 토토 결과명령, 시스템은 수행되는 다양한 I/O 운영의 예상 비용을 추적하는 내부 카운터를 유지합니다. 누적 된 비용이 한도에 도달 할 때 (VACUUM_COST_LIMIT), 작업을 수행하는 프로세스는 짧은 시간 동안 잠을 자게됩니다.VACUUM_COST_DELAY. 그런 다음 카운터를 재스포츠 토토하고 계속 실행합니다.

이 기능의 의도는 관리자가 동시 데이터베이스 활동에 대한 이러한 명령의 I/O 영향을 줄일 수 있도록하는 것입니다. 유지 보수 명령이와 같은 중요하지 않은 상황이 많이 있습니다.진공분석빨리 마무리하십시오. 그러나 이러한 명령은 시스템이 다른 데이터베이스 작업을 수행 할 수있는 능력을 크게 방해하지 않는 것이 매우 중요합니다. 비용 기반 진공 지연은 관리자가이를 달성 할 수있는 방법을 제공합니다.

이 기능은 기본적으로 수동으로 발행 된 것에 대해 비활성화되었습니다진공명령. 활성화하려면를 스포츠 토토하십시오.VACUUM_COST_DELAY0이 아닌 값으로 변수.

VACUUM_COST_DELAY(정수)

비용 제한이 초과되었을 때 프로세스가 잠을자는 시간 (밀리 초). 기본값은 0이므로 비용 기반 진공 지연 기능을 비활성화합니다. 양수 값은 비용 기반 진공 청소기를 가능하게합니다. 많은 시스템에서 수면 지연의 효과적인 해상도는 10 밀리 초입니다. 환경VACUUM_COST_DELAY10의 배수가 아닌 값으로 10의 다음으로 스포츠 토토하는 것과 동일한 결과를 가질 수 있습니다.

비용 기반 진공 청소기를 사용할 때 적절한 값VACUUM_COST_DELAY는 일반적으로 매우 작습니다. 아마도 10 ~ 20 밀리 초입니다. 진공 청소기의 자원 소비 조정은 다른 진공 비용 매개 변수를 변경하여 가장 잘 수행됩니다.

VACUUM_COST_PAGE_HIT(Integer)

공유 버퍼 캐시에서 발견 된 버퍼를 진공 청소기로 배치하기위한 예상 비용. 버퍼 풀을 잠그고 공유 해시 테이블을 조회하고 페이지의 내용을 스캔하는 데 드는 비용을 나타냅니다. 기본값은 하나입니다.

VACUUM_COST_PAGE_MISS(Integer)

디스크에서 읽어야하는 버퍼를 진공 청소기에서 진공하기위한 예상 비용. 이는 버퍼 풀을 잠그고 공유 해시 테이블을 조회하고 디스크에서 원하는 블록을 읽고 내용을 스캔하려는 노력을 나타냅니다. 기본값은 10입니다.

VACUUM_COST_PAGE_DIRTY(정수)

진공 청소기가 이전에 청소 한 블록을 수정할 때 요금이 청구 된 예상 비용. 더러운 블록을 다시 디스크로 플러시하는 데 필요한 추가 I/O를 나타냅니다. 기본값은 20입니다.

VACUUM_COST_LIMIT(Integer)

진공 청소 과정이 잠을 자게하는 축적 된 비용. 기본값은 200입니다.

참고 :중요한 잠금 장치를 보유하고 있으므로 가능한 빨리 완료 해야하는 특정 작업이 있습니다. 이러한 작업 중에 비용 기반 진공 지연이 발생하지 않습니다. 따라서 비용이 지정된 한계보다 훨씬 높게 축적 될 수 있습니다. 그러한 경우에 쓸모없는 긴 지연을 피하기 위해 실제 지연은로 계산됩니다.VACUUM_COST_DELAY * Accumulated_balance / VACUUM_COST_LIMIT최대VACUUM_COST_DELAY * 4.

18.4.5. 배경 작가

라는 별도의 서버 프로세스가 있습니다.배경 작가"더러운"(신규 또는 수정 된) 공유 버퍼. 깨끗한 공유 버퍼의 수가 불충분 한 것처럼 보이면 배경 작성자는 파일 시스템에 더러운 버퍼를 작성하여 깨끗하게 표시합니다. 이는 서버 프로세스를 처리하는 사용자 쿼리를 처리 할 가능성이 줄어들면 깨끗한 버퍼를 찾을 수없고 더러운 버퍼를 자체적으로 작성해야합니다. 그러나 백그라운드 작가는 반복적으로 쇠약 한 페이지가 체크 포인트 간격 당 한 번만 작성 될 수 있지만, 배경 작성자는 동일한 간격으로 더러워 질 때 여러 번 글을 쓸 수 있기 때문에 배경 작가는 I/O 부하가 전체적으로 증가합니다. 이 하위 섹션에서 논의 된 매개 변수는 지역 요구에 대한 동작을 조정하는 데 사용될 수 있습니다.

bgwriter_delay(Integer)

배경 작가의 활동 라운드 간의 지연을 지정합니다. 각 라운드에서 작가 문제는 다수의 더러운 버퍼에 대해 씁니다 (다음 매개 변수로 제어 가능). 그런 다음bgwriter_delay밀리 초, 반복. 버퍼 풀에 더러운 버퍼가 없으면에 관계없이 더 긴 수면으로 들어갑니다.bgwriter_delay. 기본값은 200 밀리 초입니다 (200ms). 많은 시스템에서 수면 지연의 효과적인 해상도는 10 밀리 초입니다. 환경bgwriter_delay10의 배수가 아닌 값으로 10의 더 높은 배수로 스포츠 토토과 동일한 결과를 가질 수 있습니다.이 매개 변수는에서만 스포츠 토토할 수 있습니다.postgresql.conf파일 또는 서버 명령 줄에.

bgwriter_lru_maxpages(Integer)

각 라운드 마다이 많은 버퍼는 배경 작가가 작성하지 않습니다. 이것을 0으로 스포츠 토토하면 배경 쓰기가 비활성화됩니다. (별도의 전용 보조 프로세스로 관리되는 체크 포인트는 영향을받지 않습니다.) 기본값은 100 버퍼입니다. 이 매개 변수는에서만 스포츠 토토할 수 있습니다.postgresql.conf파일 또는 서버 명령 줄에.

bgwriter_lru_multiplier(플로팅 포인트)

각 라운드에 작성된 더러운 버퍼의 수는 최근 라운드 동안 서버 프로세스에 필요한 새로운 버퍼의 수를 기반으로합니다. 최근의 평균 요구는 곱합니다bgwriter_lru_multiplier다음 라운드에서 필요한 버퍼 수의 추정치에 도달합니다. 더러운 버퍼는 깨끗하고 재사용 가능한 버퍼가 많이있을 때까지 작성됩니다. (그러나 더 이상bgwriter_lru_maxpages버퍼는 라운드 당 기록됩니다.) 따라서 1.0의 스포츠 토토은 a를 나타냅니다."방금 시간"정확히 필요한 버퍼의 수를 작성하는 정책. 더 큰 값은 수요가 급증하는 스파이크에 대한 약간의 쿠션을 제공하는 반면, 작은 값은 서버 프로세스에 의해 의도적으로 쓰기를 남기고 있습니다. 기본값은 2.0입니다. 이 매개 변수는에서만 스포츠 토토할 수 있습니다.postgresql.conf파일 또는 서버 명령 줄에.

작은 값bgwriter_lru_maxpagesandbgwriter_lru_multiplier배경 작성자로 인한 추가 I/O 부하를 줄이지 만 서버 프로세스가 스스로 쓰기를 발행하여 대화식 쿼리를 지연시켜야 할 가능성이 높아집니다..

18.4.6. 비동기 동작

explud_io_concurrency(Integer)

동시 디스크 I/O 작업 수를 스포츠 토토합니다.31847_31859기대는 동시에 실행될 수 있습니다. 이 값을 높이면 개인이있는 I/O 운영 수가 증가합니다스포츠 토토세션은 병렬로 시작하려고 시도합니다. 허용 범위는 1 ~ 1000 또는 비동기 I/O 요청의 발급을 비활성화하기 위해 0입니다. 현재이 스포츠 토토은 비트 맵 힙 스캔에만 영향을 미칩니다.

이 스포츠 토토의 좋은 출발점은 데이터베이스에 사용되는 RAID 0 Stripe 또는 Raid 1 미러로 구성된 별도의 드라이브 수입니다. (RAID 5의 경우 패리티 드라이브를 계산해서는 안됩니다.) 그러나 데이터베이스가 종종 동시 세션으로 발행 된 여러 쿼리로 종종 바쁘면 더 낮은 값이 디스크 배열을 바쁘게 유지하기에 충분할 수 있습니다. 디스크를 바쁘게 유지하는 데 필요한 것보다 높은 값은 추가 CPU 오버 헤드 만 발생합니다.

메모리 기반 스토리지 또는 버스 대역폭으로 제한되는 RAID 어레이와 같은 이국적인 시스템의 경우 올바른 값은 사용 가능한 I/O 경로 수입니다. 최고의 가치를 찾으려면 일부 실험이 필요할 수 있습니다.

비동기 I/O는 효과적인 것에 따라 다릅니다posix_fadvise일부 운영 체제가 부족한 기능. 함수가 존재하지 않으면이 매개 변수를 0으로 스포츠 토토하면 0으로 스포츠 토토하면 오류가 발생합니다. 일부 운영 체제 (예 : Solaris)에서는 기능이 존재하지만 실제로 아무것도하지 않습니다.

기본값은 지원되는 시스템에서 1입니다. 그렇지 않으면 0.

max_worker_processes(정수)

시스템이 지원할 수있는 최대 백그라운드 프로세스 수를 스포츠 토토합니다. 이 매개 변수는 서버 시작에서만 스포츠 토토할 수 있습니다.

대기 서버를 실행할 때이 매개 변수를 마스터 서버와 동일하거나 더 높은 값으로 스포츠 토토해야합니다. 그렇지 않으면 대기 서버에서 쿼리가 허용되지 않습니다.