지원 버전 :현재(17) /16 / 15 / 14 / 13
개발 버전 :18 / Devel
지원되지 않는 버전 :12 / 11

32.2. 언제토토 결과?#

토토 결과컴파일은 주로 장기 CPU 결합 쿼리에 유리합니다. 종종 이것들은 분석 쿼리가 될 것입니다. 짧은 쿼리의 경우, 추가 된 오버 헤드토토 결과편집은 종종 저장할 수있는 시간보다 높을 것입니다.

토토 결과편집을 사용해야합니다. 쿼리의 총 예상 비용 (참조76 장and섹션 20.7.2)가 사용됩니다. 쿼리의 예상 비용은의 설정과 비교됩니다.토토 결과_above_cost. 비용이 더 높으면토토 결과컴파일이 수행됩니다. 그런 다음 두 가지 추가 결정이 필요합니다. 첫째, 추정 비용이의 설정 이상인 경우토토 결과_inline_above_cost, 쿼리에 사용 된 짧은 함수 및 연산자가 인쇄됩니다. 둘째, 추정 비용이 |의 설정 이상인 경우토토 결과_optimize_above_cost, 생성 된 코드를 개선하기 위해 고가의 최적화가 적용됩니다. 이러한 각 옵션은를 증가시킵니다.토토 결과컴파일 오버 헤드이지만 쿼리 실행 시간을 상당히 줄일 수 있습니다.

이러한 비용 기반 결정은 실행 시간이 아닌 계획 시간에 이루어집니다. 이것은 준비된 진술이 사용될 때 일반 계획이 사용됨을 의미합니다 (참조준비), 실행 시간의 설정이 아니라 결정을 제어 할 때 적용되는 구성 매개 변수의 값..

Note

if토토 결과로 설정되었습니다OFF토토 결과구현을 사용할 수 있습니다 (예 : 서버가없이 컴파일 되었기 때문에-with-llvm),토토 결과위의 기준에 따라 유익하더라도 수행되지 않습니다. 환경토토 결과tooff계획과 실행 시간 모두에 영향을 미칩니다.

설명토토 결과사용 여부. 예를 들어, 사용하지 않는 쿼리가 있습니다.토토 결과:

=# pg_class에서 select sum (relpages)을 분석하십시오.
                                                 쿼리 계획
---------------------------------------------------------------------------------------------------------------------
 집계 (비용 = 16.27..16.29 행 = 1 너비 = 8) (실제 시간 = 0.303..0.303 행 = 1 루프 = 1)
   - PG_CLASS의 SEQ 스캔 (비용 = 0.00..15.42 행 = 342 너비 = 4) (실제 시간 = 0.017..0.111 행 = 356 루프 = 1)
 계획 시간 : 0.116 ms
 실행 시간 : 0.365ms
(4 줄)

계획 비용이 주어지면 전적으로 합리적입니다.토토 결과사용되었습니다. 비용토토 결과잠재적 인 저축보다 더 컸을 것입니다. 비용 제한을 조정하면토토 결과사용 :

=# set 토토 결과_above_cost = 10;
세트
=# PG_CLASS에서 SELECT SUM (RELPAGES) 분석 설명;
                                                 쿼리 계획
---------------------------------------------------------------------------------------------------------------------
 집계 (비용 = 16.27..16.29 행 = 1 너비 = 8) (실제 시간 = 6.049..6.049 행 = 1 루프 = 1)
   - PG_CLASS의 SEQ 스캔 (비용 = 0.00..15.42 행 = 342 너비 = 4) (실제 시간 = 0.019..0.052 행 = 356 루프 = 1)
 계획 시간 : 0.133ms
 JIT :
   기능 : 3
   옵션 : 거짓, 최적화 허위, 표현, 진실, 변형 참조
   타이밍 : 생성 1.259ms, 0.000ms 인라인, 최적화 0.797ms, 방출 5.048ms, 총 7.104ms
 실행 시간 : 7.416 MS

여기에 보이는대로토토 결과가 사용되었지만 인라인과 비싼 최적화는 그렇지 않았습니다. 만약에토토 결과_inline_above_cost또는토토 결과_optimize_above_cost도 낮아져 변경 될 것입니다.

정정 제출

올바르지 않은 문서에 아무것도 표시되면 일치하지 않습니다. 특정 기능에 대한 귀하의 경험 또는 추가 설명이 필요합니다. 사용이 양식문서 문제를보고하려면