이전 섹션에서 본 것처럼 쿼리 플래너는 쿼리로 검색된 행 수를 추정하여 만들기 위해 쿼리 계획의 좋은 선택. 이 섹션은 빠른 모양을 제공합니다 시스템이 이러한 추정치에 사용하는 통계에서.
메이저 토토 사이트의 한 구성 요소는 총 항목 수입니다. 각 테이블과 인덱스 및 디스크 블록 수에 각 테이블과 색인으로 점유됩니다. 이 정보는 테이블PG_CLASS, 열에서ReltuplesandRelpages. 쿼리로 볼 수 있습니다 이것과 유사하게 :
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분석및진공 분석명령, 언제라도 근사치입니다 새로 업데이트되었습니다.
보지 않고PG_STATISTIC직접, 그 견해를 보는 것이 좋습니다PG_STATS수동으로 메이저 토토 사이트를 검사 할 때.PG_STATS는 더 쉽게 설계되었습니다 읽을 수 있습니다. 뿐만 아니라,PG_STATSis 모두 읽을 수 있지만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.1 : 플래너가 통계를 사용하는 방법.