postgresql 8.0.26 문서 | ||||
---|---|---|---|---|
PostgreSQL : 문서 : 8.0 : 쓰기 호위 (범퍼카 토토) | 빠른 뒤로 | 25 장. 쓰기 전달 로깅 (토토 사이트) | 빠른 전달 | 다음 |
몇 가지가 있습니다토토 사이트-관련 구성 매개 변수 데이터베이스 성능에 영향을 미칩니다. 이 섹션에서는 사용을 설명합니다. 찾다섹션 16.4서버 구성 설정에 대한 일반 정보 매개 변수.
체크 포인트는 트랜잭션 순서의 포인트입니다 데이터 파일이 모든 정보는 체크 포인트 전에 기록되었습니다. 체크 포인트 시간에 모든 더러운 데이터 페이지는 디스크로 플러시되고 특수 검사 점 레코드는 로그 파일에 기록됩니다. 결과적으로 a 충돌, 충돌 복구 절차는 로그 (Redo Record라고도 함) REDO를 시작해야합니다. 해당 시점 이전에 데이터 파일로 변경되었으므로 작동 이미 디스크에 있습니다. 체크 포인트가 이루어진 후 모든 로그 Redo 레코드 전에 작성된 세그먼트는 더 이상 필요하지 않으며 재활용 또는 제거 할 수 있습니다. (언제토토 사이트아카이빙이 완료되고 로그 세그먼트가 진행 중입니다 재활용되거나 제거되기 전에 보관해야합니다.)
서버의 배경 작성자 프로세스가 자동으로됩니다 자주 검사 점을 수행하십시오. 체크 포인트가 생성됩니다 모든Checkpoint_segments로그 세그먼트 또는 모든Checkpoint_Timeout초, 어느 쪽이든 먼저. 기본 설정은 3입니다 세그먼트와 300 초. 또한 가능합니다 SQL 명령을 사용하여 체크 포인트를 강제로Checkpoint.
감소Checkpoint_segments및/또는Checkpoint_Timeout체크 포인트를 유발합니다 더 자주 끝납니다. 이를 통해 충돌 후 복구가 더 빠릅니다 (작업이 적기 때문에 재정이 필요합니다). 그러나 하나는 반드시해야합니다 더러운 데이터 플러싱 비용 증가와 균형을 맞추십시오. 더 자주 페이지. 또한 데이터 페이지 일관성을 보장하기 위해 각 체크 포인트 이후 데이터 페이지의 첫 번째 수정 결과 전체 페이지 컨텐츠를 기록합니다. 따라서 더 작습니다 체크 포인트 간격은 토토 사이트에 대한 출력량을 증가시킵니다. 로그, 더 작은 간격 사용 목표를 부분적으로 부정하고 어쨌든 더 많은 디스크 I/O를 유발합니다.
체크 포인트는 먼저 필요하기 때문에 상당히 비쌉니다 현재 더러운 버퍼를 기록하고 둘째는 위에서 설명한대로 추가 후속 토토 사이트 트래픽을 초래합니다. 그것은 따라서 체크 포인팅 매개 변수를 충분히 높게 설정하는 것이 현명합니다 그 체크 포인트는 너무 자주 발생하지 않습니다. 간단한 정신 점검으로 체크 포인팅 매개 변수에서를 설정할 수 있습니다.Checkpoint_warning매개 변수. 체크 포인트가보다 더 가까워지면Checkpoint_warning초, 메시지가 있습니다 서버 로그로의 출력 증가 권장Checkpoint_Segments. 때때로 그런 외모 메시지는 경보의 원인이 아니지만 자주 나타나면 체크 포인트 제어 매개 변수가 증가해야합니다.
적어도 하나의 토토 사이트 세그먼트 파일이 있으며 일반적으로 2 * 이상Checkpoint_segments+ 1 파일. 각 세그먼트 파일은 일반적으로 16MB입니다 (이 크기) 서버를 구축 할 때 변경할 수 있습니다). 이것을 사용할 수 있습니다 에 대한 공간 요구 사항 추정토토 사이트. 일반적으로 이전 로그 세그먼트 파일 일 때 더 이상 필요하지 않으며, 재활용됩니다 (이름이 변경되었습니다. 번호가 매겨진 시퀀스의 다음 세그먼트). 단기로 인해 로그 출력 속도의 피크, 2 * 이상이 있습니다.Checkpoint_segments+ 1 세그먼트 파일, 불필요한 세그먼트 파일은 재활용 대신 삭제됩니다. 시스템은이 한도에 따라 돌아옵니다.
일반적으로 사용되는 두 가지가 있습니다토토 사이트기능 :loginsert
andlogflush
. loginsert
새 레코드를 배치하는 데 사용됩니다
그만큼토토 사이트공유 버퍼
메모리. 새 기록을위한 공간이 없다면loginsert
쓰기가 필요합니다 (커널로 이동하십시오
캐시) 몇 가지 채워진토토 사이트버퍼. 이것은 바람직하지 않기 때문에loginsert
모든 데이터베이스가 낮은 수준에서 사용됩니다
수정 (예 : 행 삽입)은
영향을받는 데이터 페이지에서 독점 잠금 장치가 유지되므로 작업이
가능한 빨리 있어야합니다. 더 나쁜 것은 글쓰기토토 사이트버퍼는 또한
더 많은 시간이 걸리는 새로운 로그 세그먼트의 생성.
보통,토토 사이트버퍼가해야합니다
A에 의해 쓰여지고 플러시됩니다.logflush
가장 많은 요청
거래에서 거래 시간은 거래 시간을 계산합니다
레코드는 영구 저장소로 플러시됩니다. 높은 시스템에서
로그 출력,logflush
요청 5 월
자주 발생하지 않아 예방할 수 없습니다loginsert
쓰기를해야합니다. 그런
시스템은의 수를 늘려야합니다.토토 사이트구성을 수정하여 버퍼
매개 변수토토 사이트_buffers. 그만큼
기본 번호토토 사이트버퍼
이 값을 높이면 공유가 증가 할 것입니다
메모리 사용. (현재는 거의 없다는 점에 유의해야합니다
증가하는 증거토토 사이트_buffers기본값을 넘어서 가치가 있습니다.)
theCommit_Delay매개 변수
서버 프로세스가 수면의 마이크로 초에 대해 정의합니다.
로그에 커밋 레코드를 작성한 후loginsert
그러나 수행하기 전에logflush
. 이 지연은 다른 서버를 허용합니다
로그에 커밋 레코드를 추가하여
그들 모두는 단일 로그 동기화로 플러시되었습니다. 수면이 발생하지 않습니다
만약에fsync그렇지 않습니다
활성화 또는보다 적은 경우Commit_Siblings다른 세션은 현재 활성 거래 중입니다. 이것은 피합니다
다른 세션이 커밋 할 가능성이 낮은 경우
곧. 대부분의 플랫폼에서 수면 해상도는
요청은 10 밀리 초이므로 0이 아닌 모든Commit_Delay1에서 10000 사이의 설정
마이크로 초는 동일한 효과를 갖습니다. 이것들에 대한 좋은 가치
매개 변수는 아직 명확하지 않습니다. 실험이 권장됩니다.
the토토 사이트_Sync_Method매개 변수 결정 방법PostgreSQL커널에 강제를 요청합니다토토 사이트디스크로 업데이트. 모두 옵션은 신뢰성이 진행되는 한 동일하지만 가장 빠른 플랫폼 특정입니다. 메모 이 매개 변수가 관련이 없다는 경우fsync꺼졌습니다.
활성화토토 사이트_debug구성
매개 변수 (제공PostgreSQL지원으로 편집되었습니다
그것을 위해) 각각을 초래할 것입니다.loginsert
andlogflush
토토 사이트서버 로그에 로그인하는 호출. 이 옵션은 대체 될 수 있습니다
미래의보다 일반적인 메커니즘으로.
PostgreSQL : 문서 : 8.0 : 쓰기 호위 (범퍼카 토토) | 홈 | 다음 |
쓰기 로깅 (토토 사이트) | up | 내부 |