적응형 조인을 사용하여 쿼리 성능 개선
개요
적응형 조인은 쿼리 성능을 개선하는 데 도움이 되는 Aurora PostgreSQL 17.4의 미리 보기 기능입니다. 이 기능은 기본적으로 비활성화되어 있지만 글로벌 사용자 구성(GUC) 파라미터를 사용하여 활성화할 수 있습니다. 이 기능은 미리 보기 기능이므로 기본 파라미터 값이 변경될 수 있습니다. 활성화된 경우 적응형 조인은 런타임에 중첩 루프 조인에서 해시 조인으로 동적으로 전환하여 쿼리 성능을 최적화하는 데 도움이 됩니다. 이 전환은 부정확한 카디널리티 추정치로 인해 PostgreSQL 최적화 프로그램이 중첩 루프 조인을 잘못 선택한 경우 발생합니다.
적응형 조인 구성
다음 세 가지 GUC 파라미터를 사용하여 적응형 조인을 제어할 수 있습니다.
GUC 파라미터 | 설명 | 기본 및 구성 옵션 |
---|---|---|
apg_adaptive_join_crossover_multiplier | 이 승수는 행 교차점과 함께 작동하여 중첩 루프에서 해시 조인으로 전환할 시기를 결정합니다. 행 교차점은 SQL 최적화 프로그램이 중첩 루프 및 해시 조인 작업의 비용이 동일하다고 추정하는 지점입니다. 승수 값이 높을수록 적응형 조인이 해시 조인으로 전환될 가능성이 줄어듭니다. |
적응형 조인이 활성화되었는지 여부를 제어합니다.
|
apg_adaptive_join_cost_threshold | 이 파라미터는 최소 쿼리 비용 임계값을 설정합니다. 적응형 조인은 이 임계값 미만의 쿼리에 대해 자동으로 비활성화됩니다. 이렇게 하면 적응형 조인을 계획하는 데 드는 비용이 중첩 루프에서 해시 조인으로 전환하는 이익을 초과할 수 있는 단순 쿼리의 성능 오버헤드를 방지할 수 있습니다. |
쿼리에 대한 최소 비용 임계값을 설정합니다.
|
apg_enable_parameterized_adaptive_join | 이 파라미터는 활성화된 경우 적응형 조인 기능을 파라미터화된 중첩 루프 조인으로 확장합니다. 기본적으로 적응형 조인은 파라미터화되지 않은 중첩 루프 조인에서만 작동합니다. 해시 조인으로 전환하면 이점을 얻을 가능성이 높기 때문입니다. 파라미터화된 중첩 루프 조인은 일반적으로 성능이 더 좋으므로 해시 조인으로 전환할 필요성이 덜합니다. |
중첩 루프 조인의 적응형 조인 동작을 제어합니다.
참고먼저 |