이전 섹션에서 보았듯이 쿼리 플래너는 다음을 수행해야 합니다. 쿼리를 통해 검색된 행 수를 추정합니다. 좋은 쿼리 계획 선택. 이 섹션에서는 간략한 개요를 제공합니다. 시스템이 이러한 추정에 사용하는 통계에 따라.
통계의 한 구성요소는 총 항목 수입니다 각 테이블과 인덱스의 디스크 블록 수 각 테이블과 인덱스가 차지합니다. 이 정보는 테이블pg_class, 열에서reltuples그리고relpages. 쿼리를 통해 살펴볼 수 있습니다. 이것과 비슷합니다:
SELECT relname, relkind, reltules, relpages
pg_class에서
relname LIKE 'tenk1%';
       이름 | 친척 | 렐튜플스 | 다시 페이지
---------+---------+------------+----------
 텐크1 | r |     10000 |      358
 tenk1_hundred | 나 |     10000 |       30
 tenk1_thous_tenthous | 나 |     10000 |       30
 tenk1_unique1 | 나 |     10000 |       30
 tenk1_unique2 | 나 |     10000 |       30
(5행)
  여기서 우리는 그것을 볼 수 있습니다tenk1인덱스와 마찬가지로 10000개의 행을 포함하지만 인덱스는 (당연히) 테이블보다 훨씬 작습니다.
효율성상의 이유로,reltuples그리고relpages업데이트되지 않았습니다. 즉석에서 실행되므로 일반적으로 다소 오래된 내용이 포함되어 있습니다. 가치. 다음으로 업데이트됩니다.진공, 분석및 다음과 같은 몇 가지 DDL 명령색인 생성. 갑진공또는분석전체 테이블을 스캔하지 않는 작업(일반적으로 사례)는 점진적으로 업데이트됩니다.reltuples다음 부분을 기준으로 계산됩니다. 스캔한 테이블을 통해 대략적인 값을 얻습니다. 어떤 경우에도 이 경우 플래너는 찾은 값의 크기를 조정합니다.pg_class현재 물리적 테이블과 일치 크기에 따라 더 가까운 근사치를 얻습니다.
대부분의 쿼리는 테이블 행의 일부만 검색합니다. 때문에어디에서다음을 제한하는 조항 검사할 행. 따라서 기획자는 추정을 해야 합니다. 의선택성의어디에서절, 즉 다음과 같은 행의 비율입니다. 의 각 조건과 일치어디에서절. 이 작업에 사용되는 정보는롤 토토 : 문서 : 9시스템 카탈로그. 의 항목pg_statistic다음에 의해 업데이트됩니다.분석그리고진공 분석명령이며 항상 근사치입니다. 새로 업데이트되었습니다.
보기보다는pg_statistic직접적으로 그 모습을 보는 것이 더 좋습니다pg_stats수동으로 배트맨 토토를 조사할 때.pg_stats더 쉽게 설계되었습니다. 읽을 수 있습니다. 게다가pg_stats이다 모두가 읽을 수 있는 반면pg_statistic수퍼유저만 읽을 수 있습니다. (이것은 특권이 없는 사람을 방지합니다. 사용자가 다른 콘텐츠에 대해 뭔가를 배우지 못하도록 배트맨 토토에서 나온 사람들의 테이블.pg_stats보기는 행만 표시하도록 제한되어 있습니다. 현재 사용자가 읽을 수 있는 테이블에 대해 설명합니다.) 예를 들어, 할 수도 있습니다:
SELECT attname, 상속됨, n_distinct,
       array_to_string(most_common_vals, E'\n') as Most_common_vals
pg_stats에서
WHERE 테이블 이름 = '도로';
 이름 | 상속 | n_distinct |          가장_공통_발
---------+------------+------------+----------
 이름 | 에프 |  -0.363388 | I- 580 램프+
         |           |            | I- 880 램프+
         |           |            | Sp 철도 +
         |           |            | 나- 580 +
         |           |            | I- 680 램프
 이름 | 티 |  -0.284859 | I- 880 램프+
         |           |            | I- 580 램프+
         |           |            | I- 680 램프+
         |           |            | 나- 580 +
         |           |            | State Hwy 13 램프
(2행)
  동일한 열에 대해 두 개의 행이 표시된다는 점에 유의하십시오. 다음에서 시작하는 완전한 상속 계층 구조에 해당합니다.도로테이블 (상속됨=t) 및 또 다른 다음 중 하나만 포함하는 것:도로테이블 자체 (상속됨=f).
저장된 정보의 양pg_statisticby분석, 특히 최대 개수 의 항목most_common_vals그리고히스토그램_바운드각각에 대한 배열 열은를 사용하여 열별로 설정할 수 있습니다.테이블 세트 배트맨 토토 변경명령 또는 전역적으로 설정하여default_statistics_target구성 변수. 현재 기본 한도는 100입니다. 항목. 한도를 높이면 더 정확한 플래너가 가능해질 수 있습니다. 특히 불규칙한 기둥의 경우 추정치가 작성됩니다. 더 많은 공간을 소비하는 대가로 데이터 배포pg_statistic그리고 약간 더 많은 시간 추정치를 계산합니다. 반대로 하한선은 다음과 같을 수 있습니다. 단순한 데이터 분포를 갖는 열에는 충분합니다.
계획자의 통계 사용에 대한 자세한 내용은 다음을 참조하세요. 에서 발견됨메이저 토토 사이트 : 문서 : 9.2 : 플래너가 통계를 사용하는 방법.