이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다토토 사이트 추천 _버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

14.2. 와이즈 토토 사용하는 통계

이전 섹션에서 보았 듯이 쿼리 플래너는 쿼리 계획을 잘 선택하기 위해 쿼리에서 검색된 행 수를 추정해야합니다. 이 섹션은 시스템 이이 추정치에 사용하는 통계를 빠르게 살펴보십시오.

와이즈 토토의 한 구성 요소는 각 테이블 및 인덱스의 총 항목 수와 각 테이블 및 인덱스가 차지하는 디스크 블록 수입니다. 이 정보는 표에 보관됩니다PG_CLASS, 열에서ReltuplesRelpages. 우리는 이것과 비슷한 쿼리로 그것을 볼 수 있습니다 :

Relname, Relkind, Reltuples, Relpages를 선택하십시오
pg_class에서
여기서 relname은 'tenk1%';

       Relname | Relkind | reltuples | 재선
------------------------------------------------------
 Tenk1 | r |     10000 |      358
 Tenk1_hundred | i |     10000 |       30
 tenk1_thous_tenthous | i |     10000 |       30
 Tenk1_unique1 | i |     10000 |       30
 Tenk1_unique2 | i |     10000 |       30
(5 줄)

여기서 볼 수 있습니다Tenk1인덱스와 마찬가지로 10000 행이 포함되어 있지만 인덱스는 (당연히) 테이블보다 훨씬 작습니다.

효율성 이유,ReltuplesandRelpages는 즉석에서 업데이트되지 않으므로 일반적으로 다소 오래된 값을 포함합니다. 그들은에 의해 업데이트됩니다.진공, 분석및와 같은 몇 가지 DDL 명령색인 생성. 에이진공또는분석전체 테이블을 스캔하지 않는 작동 (일반적으로 경우)Reltuples스캔 한 테이블 부분을 기준으로 계산하여 대략적인 값을 초래합니다. 어쨌든 와이즈 토토는에서 찾은 값을 확장합니다.pg_class현재 물리 테이블 크기와 일치하려면 더 가까운 근사치를 얻습니다.

대부분의 쿼리는 테이블에서 행의 일부만 검색하여여기서검사 할 행을 제한하는 조항. 따라서 와이즈 토토는를 추정해야합니다.선택성of여기서조항, 즉의 각 조건과 일치하는 행의 비율여기서절. 이 작업에 사용 된 정보는에 저장됩니다.PostgreSQL :시스템 카탈로그. 출품작PG_STATISTIC에 의해 업데이트 됨분석and진공 분석명령, 신선하게 업데이트 될 때에도 항상 근사치입니다.

보지 않고PG_STATISTIC직접, 그 견해를 보는 것이 좋습니다PG_STATS수동으로 와이즈 토토를 검사 할 때.PG_STATS는보다 쉽게 ​​읽을 수 있도록 설계되었습니다. 뿐만 아니라,PG_STATS모두 읽을 수 있지만PG_STATISTIC는 슈퍼 사용자 만 읽을 수 있습니다. (이것은 비전지가없는 사용자가 와이즈 토토에서 다른 사람들의 테이블의 내용에 대해 배우는 것을 방지합니다.PG_STATS보기는 현재 사용자가 읽을 수있는 테이블에 대한 행만 표시하도록 제한됩니다.) 예를 들어, 우리는 다음과 같습니다..

ATTNAME 선택, 상속, N_DISTINCT,
       most_common_vals로 array_to_string (most_common_vals, e '\ n')
pg_stats에서
여기서 tableName = '도로';

 ATTNAME | 상속 | n_distinct |          대부분의 _common_vals
---------+-----------+----------------------------------------------------
 이름 | f |  -0.363388 | I-580 램프+
         |           |            | I-880 램프+
         |           |            | SP Railroad +
         |           |            | i-580 +
         |           |            | I-680 경사로
 이름 | t |  -0.284859 | I-880 램프+
         |           |            | I-580 램프+
         |           |            | I-680 램프+
         |           |            | i-580 +
         |           |            | State Hwy 13 Ramp
(2 줄)

동일한 열에 대해 두 개의 행이 표시되며, 하나는 완전한 상속 계층에 해당합니다.Road테이블 (상속=t), 그리고 다른 하나는Road테이블 자체 (상속=F).

저장된 정보의 양PG_STATISTICby분석, 특히의 최대 항목 수most_common_valsandhistogram_bounds각 열의 배열,를 사용하여 열별로 설정할 수 있습니다Alter Table Set Statistics명령 또는 전 세계적으로default_statistics_target구성 변수. 기본 제한은 현재 100 개의 항목입니다. 한도를 높이는 것은 더 많은 공간을 소비하는 가격에 특히 불규칙한 데이터 분포가있는 열에 대해 더 정확한 플래너 추정치를 작성할 수 있습니다PG_STATISTIC추정치 계산에 약간 더 많은 시간. 반대로, 간단한 데이터 배포가있는 열에는 낮은 한계가 충분할 수 있습니다.

와이즈 토토의 통계 사용에 대한 자세한 내용은에서 찾을 수 있습니다.토토 사이트 : 문서 : 9.5 : 플래너가 통계를 사용하는 방법.