28.4. 진행토토 캔

PostgreSQL명령 실행 중에 특정 명령의 진행 상황을토토 캔 할 수 있습니다. 현재 진행 상황토토 캔를 지원하는 유일한 명령은입니다.분석, 클러스터, 색인 생성, 진공, COPYBase_backup(예 : 복제 명령스포츠 토토 결과 postgresql기본 백업을 수행하는 문제). 이것은 미래에 확장 될 수 있습니다.

28.4.1. 진행 상황 분석

언제든지분석실행 중입니다.PG_STAT_PROGRESS_ANALYZE보기에는 현재 해당 명령을 실행중인 각 백엔드마다 행이 포함됩니다. 아래 표는토토 캔 될 정보를 설명하고 해석 방법에 대한 정보를 제공합니다.

표 28.36. PG_STAT_PROGRESS_ANALYZE보기

열 유형

설명

PID 정수

백엔드의 프로세스 ID.

datid OID

이 백엔드가 연결된 데이터베이스의 OID.

datname 이름

이 백엔드가 연결된 데이터베이스 이름.

릴리드 OID

분석중인 테이블의 OID.

Phase 텍스트

현재 처리 단계. 보다표 28.37.

Sample_BLKS_TOTAL bigint

샘플링 될 힙 블록의 총 수.

sample_blks_scanned bigint

스캔 한 힙 블록 수.

ext_stats_total bigint

확장 통계 수.

ext_stats_computed bigint

확장 된 통계 수. 이 카운터는 단계가있는 경우에만 발전합니다확장 통계 컴퓨팅.

child_tables_total bigint

어린이 테이블 수.

child_tables_done bigint

스캔 한 어린이 테이블 수. 이 카운터는 단계가있는 경우에만 발전합니다상속 샘플 행 획득.

current_child_table_relid OID

현재 스캔 중 아동 테이블의 OID. 이 필드는 단계가있을 때만 유효합니다상속 된 샘플 행 획득.


표 28.37. 단계 분석

Phase 설명
초기화 명령은 힙 스캔을 시작할 준비를하고 있습니다. 이 단계는 매우 짧을 것으로 예상됩니다.
샘플 행 획득 명령이 현재 주어진 테이블을 스캔 중입니다Relid샘플 행을 얻으려면.
상속 샘플 행 획득 명령은 현재 샘플 행을 얻기 위해 하위 테이블을 스캔하고 있습니다. 열child_tables_total, child_tables_donecurrent_child_table_relid이 단계의 진행 정보를 포함합니다.
컴퓨팅 통계 명령은 테이블 스캔 중에 얻은 샘플 행에서 통계를 계산하는 것입니다.
확장 통계 컴퓨팅 명령은 테이블 스캔 중에 얻은 샘플 행에서 확장 된 통계를 컴퓨팅하고 있습니다.
결승 분석 명령이 업데이트 중입니다PG_CLASS. 이 단계가 완료되면분석끝날 예정입니다.

note

분석는 분할 된 테이블에서 실행되며 모든 파티션도 재귀 적으로 분석됩니다. 이 경우분석상속 통계가 수집 된 후 각 파티션에 대한 상속 통계가 수집 된 부모 테이블에 대한 진행 상황이 먼저토토 캔됩니다.

28.4.2. 인덱스 진행 토토 캔서 생성

언제든지색인 생성또는Reindex실행 중입니다.PG_STAT_PROGRESS_CREATE_INDEX보기에는 현재 인덱스를 생성하는 각 백엔드 당 하나의 행이 포함됩니다. 아래 표는보고 될 정보를 설명하고 해석 방법에 대한 정보를 제공합니다.

표 28.38. PG_STAT_PROGRESS_CREATE_INDEX보기

열 유형

설명

PID Integer

백엔드의 프로세스 ID.

datid OID

이 백엔드가 연결된 데이터베이스의 OID.

datname 이름

이 백엔드가 연결된 데이터베이스 이름.

Relid OID

인덱스가 생성되는 테이블의 OID.

index_relid OID

인덱스의 OID가 생성되거나 다시 표시됩니다. 비 일치하는 동안색인 생성, 이것은 0입니다.

명령 텍스트

실행중인 명령 :색인 생성, 동시에 색인 생성, Reindex또는Reindex 동시에.

Phase 텍스트

인덱스 생성의 현재 처리 단계. 보다표 28.39.

Lockers_Total bigint

해당되는 경우 기다릴 총 사물함 수.

Lockers_done bigint

이미 기다려온 사물함 수.

current_locker_pid bigint

현재 기다리고있는 사물함의 프로세스 ID.

blocks_total bigint

현재 단계에서 처리 할 총 블록 수.

blocks_done bigint

현재 단계에서 이미 처리 된 블록 수.

tuples_total bigint

현재 단계에서 처리 할 튜플의 총 수.

tuples_done bigint

현재 단계에서 이미 처리 된 튜플 수.

Partitions_total bigint

파티션 된 테이블에서 인덱스를 작성할 때이 열은 인덱스를 생성 할 총 파티션 수로 설정됩니다. 이 필드는0동안Reindex.

Partitions_done bigint

파티션 된 테이블에서 인덱스를 만들 때이 열은 인덱스가 생성 된 파티션 수로 설정됩니다. 이 필드는0동안Reindex.


표 28.39. 인덱스 단계 생성

Phase 설명
초기화 색인 생성또는Reindex인덱스 생성을 준비하고 있습니다. 이 단계는 매우 짧을 것으로 예상됩니다.
빌드 전 작가를 기다리고 있습니다 동시에 색인 생성또는Reindex 동시에는 테이블이 완료 될 수있는 쓰기 잠금 장치가있는 트랜잭션을 기다리고 있습니다. 이 단계는 동시 모드가 아닌 경우 건너 뜁니다. 열Lockers_Total, Lockers_donecurrent_locker_pid이 단계의 진행 정보를 포함합니다.
건물 색인 인덱스는 액세스 방법 별 코드에 의해 구축되고 있습니다. 이 단계에서 진행 상황토토 캔를 지원하는 액세스 방법은 자체 진행 데이터를 채우고 서브상은이 열에 표시됩니다. 일반적으로,blocks_totalandblocks_done잠재적으로 진행 데이터와 잠재적으로tuples_totaltuples_done.
검증 전에 작가를 기다리고 있습니다 동시에 색인 생성또는Reindex 동시에는 잠재적으로 테이블에 쓸 수있는 쓰기 잠금 장치가있는 트랜잭션을 기다리고 있습니다. 이 단계는 동시 모드가 아닌 경우 건너 뜁니다. 열Lockers_Total, Lockers_doneandcurrent_locker_pid이 단계의 진행 정보를 포함합니다.
색인 검증 : 스캔 인덱스 동시에 색인 생성검증 해야하는 튜플을 검색하는 인덱스를 스캔하고 있습니다. 이 단계는 동시 모드가 아닌 경우 건너 뜁니다. 열blocks_total(인덱스의 총 크기로 설정) 및blocks_done이 단계의 진행 정보를 포함합니다.
색인 검증 : 튜플 분류 동시에 색인 생성인덱스 스캐닝 단계의 출력을 정렬합니다.
색인 검증 : 스캔 테이블 동시에 색인 생성이전 두 단계에서 수집 한 인덱스 튜플을 검증하기 위해 테이블을 스캔하고 있습니다. 이 단계는 동시 모드가 아닌 경우 건너 뜁니다. 열blocks_total(테이블의 총 크기로 설정) 및blocks_done이 단계의 진행 정보를 포함합니다.
오래된 스냅 샷을 기다리고 있습니다 동시에 색인 생성또는Reindex 동시에스냅 샷을 해제하기 위해 테이블을 볼 수있는 트랜잭션을 기다리고 있습니다. 이 단계는 동시 모드가 아닌 경우 건너 뜁니다. 열Lockers_Total, Lockers_doneandcurrent_locker_pid이 단계의 진행 정보를 포함합니다.
죽음을 표시하기 전에 독자를 기다리고 있습니다 Reindex 동시에오래된 색인을 표시하기 전에 테이블에 읽기 잠금 장치가있는 트랜잭션을 기다리고 있습니다. 이 단계는 동시 모드가 아닌 경우 건너 뜁니다. 열Lockers_Total, Lockers_donecurrent_locker_pid이 단계의 진행 정보를 포함합니다.
떨어지기 전에 독자를 기다리고 있습니다 Reindex 동시에이전 인덱스를 삭제하기 전에 테이블의 읽기 잠금 장치가있는 트랜잭션을 기다리고 있습니다. 이 단계는 동시 모드가 아닌 경우 건너 뜁니다. 열Lockers_Total, Lockers_donecurrent_locker_pid이 단계의 진행 정보를 포함합니다.

28.4.3. 진공 진행보고

언제든지진공실행 중입니다.PG_STAT_PROGRESS_VACUUM보기에는 현재 진공 청소기가있는 각 백엔드 (Autovacuum Worker 프로세스 포함)마다 하나의 행이 포함됩니다. 아래 표는보고 될 정보를 설명하고 해석 방법에 대한 정보를 제공합니다. 에 대한 진행진공 Full명령은를 통해보고됩니다.PG_STAT_PROGRESS_CLUST왜냐하면 둘 다진공 Full클러스터정기적으로 테이블을 다시 작성하십시오진공제자리에만 수정합니다. 보다섹션 28.4.4.

표 28.40. PG_STAT_PROGRESS_VACUUM보기

열 유형

설명

PID Integer

백엔드의 프로세스 ID.

datid OID

이 백엔드가 연결된 데이터베이스의 OID.

datname 이름

이 백엔드가 연결된 데이터베이스 이름.

릴리드 OID

진공 청소기의 OID.

Phase 텍스트

진공의 현재 처리 단계. 보다표 28.41.

heap_blks_total bigint

테이블의 총 힙 블록 수. 이 숫자는 스캔 초기에토토 캔됩니다. 나중에 추가 된 블록은 이것에 의해 방문하지 않을 것입니다.진공.

heap_blks_scanned bigint

힙 블록 수 스캔. 때문에배트맨 토토 캔 : 문서 : 15 : 73.4. 가시성 맵스캔을 최적화하는 데 사용되며 일부 블록은 검사없이 건너 뜁니다. 건너 뛰기 블록은이 총계에 포함 되므로이 숫자는 결국과 동일하게됩니다.heap_blks_total진공이 완료된 경우. 이 카운터는 단계가있는 경우에만 발전합니다스캐닝 힙.

heap_blks_vacuumed bigint

힙 블록 수는 진공 청소기입니다. 테이블에 인덱스가 없으면이 카운터는 단계가있을 때만 진행됩니다힙 진공 청소기. 죽은 튜플이 포함되지 않은 블록이 건너 뜁니다. 따라서 카운터는 때때로 큰 단위로 앞으로 건너 뛸 수 있습니다.

index_vacuum_count bigint

완료된 지수 진공주기 수.

max_dead_tuples bigint

지수 진공주기를 수행하기 전에 저장할 수있는 죽은 튜플의 수,maintenance_work_mem.

num_dead_tuples bigint

마지막 지수 진공주기 이후 수집 된 죽은 튜플 수.


표 28.41. 진공 단계

Phase 설명
초기화 진공힙 스캔을 시작할 준비를하고 있습니다. 이 단계는 매우 짧을 것으로 예상됩니다.
스캐닝 힙 진공현재 힙 스캔 중입니다. 필요한 경우 각 페이지를 잘라 내고 해체 할 수 있으며 동결 활동을 수행 할 수 있습니다. 그만큼heap_blks_scanned열을 사용하여 스캔 진행 상황을 모니터링 할 수 있습니다.
인덱스 진공 청소기 진공현재 인덱스를 청소하고 있습니다. 테이블에 인덱스가있는 경우 힙이 완전히 스캔 된 후 진공 당 최소 한 번 발생합니다. 진공 당시 여러 번 발생할 수 있습니다.maintenance_work_mem(또는 Autovacuum의 경우autovacuum_work_memSET) 발견 된 죽은 튜플의 수를 저장하기에 충분하지 않습니다.
힙 진공 청소기 진공현재 힙을 청소하고 있습니다. 힙 진공 청소기는 힙 스캐닝과는 다르며, 각각의 진공 지수 인스턴스 후에 발생합니다. 만약에heap_blks_scannedheap_blks_total, 시스템은이 단계가 완료된 후 힙 스캔으로 돌아갑니다. 그렇지 않으면이 단계가 완료된 후 인덱스 정리를 시작합니다.
인덱스 청소 진공현재 인덱스를 정리하고 있습니다. 이것은 힙이 완전히 스캔되고 모든 인덱스의 진공 청소기가 완료된 후에 발생합니다.
잘린 힙 진공현재 운영 체제와의 관계가 끝날 때 빈 페이지를 반환하기 위해 힙을 잘라 내고 있습니다. 이것은 인덱스를 청소 한 후에 발생합니다.
최종 청소 수행 진공최종 청소를 수행하고 있습니다. 이 단계에서진공여유 공간 맵을 청소하고 통계를 업데이트합니다PG_CLASS및 누적 통계 시스템에 대한 통계를보고합니다. 이 단계가 완료되면진공끝날 예정입니다.

28.4.4. 클러스터 진행보고

언제든지클러스터또는진공 Full실행 중입니다.PG_STAT_PROGRESS_CLUST보기에는 현재 어느 명령을 실행중인 각 백엔드에 대한 행이 포함됩니다. 아래 표는보고 될 정보를 설명하고 해석 방법에 대한 정보를 제공합니다.

표 28.42. PG_STAT_PROGRESS_CLUST보기

열 유형

설명

PID 정수

백엔드의 프로세스 ID.

datid OID

이 백엔드가 연결된 데이터베이스의 OID.

datname 이름

이 백엔드가 연결된 데이터베이스 이름.

릴리드 OID

클러스터링중인 테이블의 OID.

명령 텍스트

실행중인 명령. 어느 하나클러스터또는진공 Full.

Phase 텍스트

현재 처리 단계. 보다표 28.43.

cluster_index_relid OID

인덱스를 사용하여 테이블을 스캔하는 경우 사용되는 인덱스의 OID입니다. 그렇지 않으면 0입니다.

heap_tuples_scanned bigint

힙 튜플 수 스캔. 이 카운터는 단계가있는 경우에만 발전합니다SEQ 스캐닝 힙, 인덱스 스캐닝 힙또는새로운 힙 작성.

heap_tuples_written bigint

쓰여진 힙 튜플 수. 이 카운터는 단계가있는 경우에만 발전합니다SEQ 스캐닝 힙, 인덱스 스캐닝 힙또는새로운 힙 작성.

heap_blks_total bigint

테이블의 총 힙 블록 수. 이 숫자는의 시작 부분에서토토 캔됩니다.SEQ 스캐닝 힙.

heap_blks_scanned bigint

스캔 한 힙 블록 수. 이 카운터는 단계가있는 경우에만 발전합니다SEQ 스캐닝 힙.

index_rebuild_count bigint

인덱스 수가 재건되었습니다. 이 카운터는 단계가있는 경우에만 발전합니다인덱스 재건.


표 28.43. 클러스터 및 진공 전체 단계

Phase 설명
초기화 명령은 힙 스캔을 시작할 준비를하고 있습니다. 이 단계는 매우 짧을 것으로 예상됩니다.
SEQ 스캐닝 힙 명령은 현재 순차적 스캔을 사용하여 테이블을 스캔 중입니다.
인덱스 스캐닝 힙 클러스터현재 인덱스 스캔을 사용하여 테이블을 스캔 중입니다.
튜플 분류 클러스터현재 튜플을 정렬하고 있습니다.
새로운 힙 작성 클러스터현재 새로운 힙을 쓰고 있습니다.
관계 파일 교환 명령은 현재 새로 구축 된 파일을 제자리에 교환하고 있습니다.
인덱스 재건 명령이 현재 인덱스 재건 중입니다.
최종 청소 수행 명령이 최종 정리를 수행하고 있습니다. 이 단계가 완료되면클러스터또는진공 Full끝이 끝날 것입니다.

28.4.5. 기본 백업 진행토토 캔

응용 프로그램이 좋아질 때마다PG_BASEBACKUP기본 백업을 받고 있습니다.PG_STAT_PROGRESS_BASEBACKUPView는 현재 실행중인 각 WAL 발신자 프로세스에 대한 행이 포함됩니다Base_backup복제 명령 및 백업 스트리밍. 아래 표는보고 될 정보를 설명하고 해석 방법에 대한 정보를 제공합니다.

표 28.44. PG_STAT_PROGRESS_BASEBACKUP보기

열 유형

설명

PID Integer

WAL 발신자 프로세스의 프로세스 ID.

Phase 텍스트

현재 처리 단계. 보다표 28.45.

backup_total bigint

스트리밍 될 총 데이터 양. 이것은의 시작시 추정되고토토 캔됩니다.스트리밍 데이터베이스 파일단계. 데이터베이스가 변경되는 동안 변경 될 수 있기 때문에 이것은 근사치 일뿐입니다.스트리밍 데이터베이스 파일단계 및 WAL 로그는 나중에 백업에 포함될 수 있습니다. 이것은 항상와 같은 가치입니다.backup_streamed일단 스트리밍 된 데이터 양이 추정 된 총 크기를 초과하면. 추정이 비활성화 된 경우PG_BASEBACKUP(예 :---- 여분의 크기옵션이 지정되었습니다), 이것은입니다.NULL.

backup_streamed bigint

스트리밍 된 데이터 양. 이 카운터는 단계가있는 경우에만 발전합니다스트리밍 데이터베이스 파일또는WAL 파일 전송.

Tackespaces_total bigint

스트리밍 될 테이블 스페이스의 총 수.

TableSpaces_streamed bigint

스트리밍 된 테이블 스페이스 수. 이 카운터는 단계가있는 경우에만 발전합니다스트리밍 데이터베이스 파일.


표 28.45. 기본 백업 단계

Phase 설명
초기화 WAL 발신자 프로세스는 백업을 시작할 준비를하고 있습니다. 이 단계는 매우 짧을 것으로 예상됩니다.
검문소가 끝날 때까지 기다리고 있습니다 WAL 발신자 프로세스가 현재 수행 중입니다pg_backup_start베이스 백업을 준비하고 백업 시작 검사 점이 완료되기를 기다리고 있습니다.
백업 크기 추정 WAL Sender 프로세스는 현재 기본 백업으로 스트리밍 될 총 데이터베이스 파일의 총량을 추정하고 있습니다.
스트리밍 데이터베이스 파일 WAL Sender 프로세스는 현재 데이터베이스 파일을 기본 백업으로 스트리밍하고 있습니다.
WAL 아카이브가 끝날 때까지 기다리고 있습니다 WAL 발신자 프로세스가 현재 수행 중입니다pg_backup_stop백업을 완료하고베이스 백업이 성공적으로 보관되기 위해 필요한 모든 왈 파일을 기다리고 있습니다. 둘 중 하나-wal-method = none또는-wal-method = streamPG_BASEBACKUP,이 단계가 완료되면 백업이 종료됩니다.
WAL 파일 전송 WAL Sender 프로세스는 현재 백업 중에 생성 된 모든 WAL 로그를 전송하고 있습니다. 이 단계는 이후에 발생합니다.WAL 아카이브가 끝날 때까지 기다리고 있습니다위상 if-wal-method = fetchPG_BASEBACKUP. 이 단계가 완료되면 백업이 종료됩니다.

28.4.6. 진행 상황토토 캔

언제든지COPY실행 중입니다.PG_STAT_PROGRESS_COPYView는 현재 실행중인 각 백엔드 당 하나의 행을 포함합니다COPY명령. 아래 표는보고 될 정보를 설명하고 해석 방법에 대한 정보를 제공합니다.

표 28.46. PG_STAT_PROGRESS_COPY보기

열 유형

설명

PID Integer

백엔드의 프로세스 ID.

datid OID

이 백엔드가 연결된 데이터베이스의 OID.

datname 이름

이 백엔드가 연결된 데이터베이스 이름.

Relid OID

테이블의 OIDCOPY명령이 실행됩니다. 로 설정되었습니다.0A에서 복사하는 경우select쿼리.

명령 텍스트

실행중인 명령 :복사또는복사.

타입 텍스트

데이터가 읽거나 작성되는 IO 유형 :파일, 프로그램, 파이프(forstdin에서 복사andstdout에 복사), 또는콜백(예 : 논리 복제에서 초기 테이블 동기화 중에 사용).

BYTES_PROCESSESS bigint

이미 처리 된 바이트 수COPY명령.

BYTES_TOTAL bigint

소스 파일 크기COPY From바이트의 명령. 로 설정되었습니다.0사용할 수없는 경우.

tuples_processed bigint

이미 처리 된 튜플 수copy명령.

tuples_excluded bigint

튜플 수는에 의해 제외 되었기 때문에 처리되지 않은 튜플 수여기서조항COPY명령.


정정 제출

문서에 올바른 것이 없으면 일치하지 않습니다. 특정 기능에 대한 귀하의 경험 또는 추가 설명이 필요합니다. 사용이 양식문서 문제를토토 캔하려면