기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Aurora PostgreSQL 쿼리 계획 관리 업데이트
확장은 AWS apg_plan_mgmt
Aurora PostgreSQL DB 클러스터에 쿼리 계획 관리 기능을 제공합니다. 이를 통해 SQL 애플리케이션의 옵티마이저에서 생성된 쿼리 실행 계획을 관리하여 안정성을 높이고 회귀를 방지할 수 있습니다. 자세한 내용은 Amazon Aurora 사용 설명서의 Aurora Postgre에 대한 쿼리 실행 계획 관리를SQL 참조하세요.
주제
PostgreSQL 16 버전
주제
Aurora PostgreSQL 16.3용 apg_plan_mgmt 버전 2.7
Aurora PostgreSQL 16.3 버전 2.7의 apg_plan_mgmt
확장에 대한 개선 사항은 다음과 같습니다.
새로운 기능
더 이상 를 업데이트할 필요가 없습니다
plan_hash_version
. 데이터베이스 엔진을 업그레이드한 후 에서 새 기능을 QPM 자동으로 활성화합니다. 새 기능을 사용할 수 있으려면 조치를 취할 필요가 없습니다.
추가 개선 사항 및 기능 향상
파티션된 테이블이 64개 이상 포함된 QPM 계획의 적용 문제를 수정했습니다.
추가 연산자를 포함하는 QPM 계획의 적용 문제를 수정했습니다.
update_plan_hash 작업이 포함된 QPM validate_plans 관련 문제를 해결했습니다.
Aurora PostgreSQL 16.2용 apg_plan_mgmt 버전 2.6
Aurora PostgreSQL 16.2용 버전 2.6의 apg_plan_mgmt
확장에 대한 개선 사항은 다음과 같습니다.
새로운 기능
QPM 는 집계 연산자가 있는 계획을 적용할 수 있습니다.
추가 개선 사항 및 기능 향상
데이터베이스를 삭제해도 공유 메모리에서 캡처된 관련 계획이 제거되지 않는 문제를 해결했습니다.
뷰가 포함된 계획의 적용 문제를 수정했습니다.
병렬 추가 계획 적용의 개선 사항.
계획 캡처와 관련된 문제를 해결했습니다.
-
수집 노드가 포함된 계획의 적용 문제를 수정했습니다.
Aurora PostgreSQL 16.1용 apg_plan_mgmt 버전 2.6
Aurora PostgreSQL 16.1용 버전 2.6의 apg_plan_mgmt
확장에 대한 개선 사항은 다음과 같습니다.
새로운 기능
update_plan_hash
함수에 대한apg_plan_mgmt.validate_plans
작업의 일부로 계획 개요가 최신 형식 버전으로 업데이트됩니다.병렬 쿼리 적용의 일부로 병렬 추가 적용에 대한 지원을 추가했습니다. 병렬 추가 노드를 올바르게 적용하려면 다음을 수행해야 합니다.
apg_plan_mgmt.plan_hash_version
을 5로 설정합니다.apg_plan_mgmt.validate_plans('update_plan_hash')
을 호출합니다.
추가 개선 사항 및 기능 향상
-
계획 해시 계산의 성능을 개선했습니다.
-
반복적인 하위 계획이 포함된 계획 개요의 메모리 사용률을 개선했습니다.
-
병렬 쿼리 적용 시
GatherMerge
를 적용할 수 없는 문제를 해결했습니다. -
적용 계획의 예상 비용이 올바르지 않은 문제를 해결했습니다.
-
승인된 계획 적용 시 개요에 파티셔닝된 테이블 및 하위 계획이 포함되는 문제를 해결했습니다.
PostgreSQL 15 버전
주제
Aurora PostgreSQL 15.8용 apg_plan_mgmt 버전 2.7, 2024년 9월 30일
Aurora PostgreSQL 15.8용 버전 2.7의 apg_plan_mgmt
확장에 대한 개선 사항은 다음과 같습니다.
추가 개선 사항 및 기능 향상
해시 집계를 포함하는 쿼리 계획 관리 계획의 적용 문제를 수정했습니다.
Aurora PostgreSQL 15.7용 apg_plan_mgmt 버전 2.7, 2024년 8월 8일
Aurora PostgreSQL 15.7용 버전 2.7의 apg_plan_mgmt
확장에 대한 개선 사항은 다음과 같습니다.
새로운 기능
더 이상 를 업데이트할 필요가 없습니다
plan_hash_version
. 데이터베이스 엔진을 업그레이드한 후 에서 새 기능을 QPM 자동으로 활성화합니다. 새 기능을 사용할 수 있으려면 조치를 취할 필요가 없습니다.
추가 개선 사항 및 기능 향상
파티션된 테이블이 64개 이상 포함된 QPM 계획의 적용 문제를 수정했습니다.
추가 연산자를 포함하는 QPM 계획의 적용 문제를 수정했습니다.
update_plan_hash 작업이 포함된 QPM validate_plans 관련 문제를 해결했습니다.
Aurora PostgreSQL 15.6용 apg_plan_mgmt 버전 2.6
Aurora PostgreSQL 15.6용 버전 2.6의 apg_plan_mgmt
확장에 대한 개선 사항은 다음과 같습니다.
새로운 기능
QPM 는 집계 연산자가 있는 계획을 적용할 수 있습니다.
추가 개선 사항 및 기능 향상
데이터베이스를 삭제해도 공유 메모리에서 캡처된 관련 계획이 제거되지 않는 문제를 해결했습니다.
뷰가 포함된 계획의 적용 문제를 수정했습니다.
병렬 추가 계획 적용의 개선 사항.
계획 캡처와 관련된 문제를 해결했습니다.
-
수집 노드가 포함된 계획의 적용 문제를 수정했습니다.
Aurora PostgreSQL 15.5용 apg_plan_mgmt 버전 2.6
Aurora PostgreSQL 15.5용 버전 2.6 apg_plan_mgmt
확장의 개선 사항은 다음과 같습니다.
새로운 기능
update_plan_hash
함수에 대한apg_plan_mgmt.validate_plans
작업의 일부로 계획 개요가 최신 형식 버전으로 업데이트됩니다.병렬 쿼리 적용의 일부로 병렬 추가 적용에 대한 지원을 추가했습니다. 병렬 추가 노드를 올바르게 적용하려면 다음을 수행해야 합니다.
apg_plan_mgmt.plan_hash_version
을 5로 설정합니다.apg_plan_mgmt.validate_plans('update_plan_hash')
을 호출합니다.
추가 개선 사항 및 기능 향상
-
계획 해시 계산의 성능을 개선했습니다.
-
반복적인 하위 계획이 포함된 계획 개요의 메모리 사용률을 개선했습니다.
-
병렬 쿼리 적용 시
GatherMerge
를 적용할 수 없는 문제를 해결했습니다. -
적용 계획의 예상 비용이 올바르지 않은 문제를 해결했습니다.
-
승인된 계획 적용 시 개요에 파티셔닝된 테이블 및 하위 계획이 포함되는 문제를 해결했습니다.
Aurora PostgreSQL 15.4용 apg_plan_mgmt 버전 2.5
Aurora PostgreSQL 15.4용 버전 2.5 apg_plan_mgmt
확장의 개선 사항은 다음과 같습니다.
새로운 기능
QPM 는 병렬 추가 노드를 제외한 병렬 연산자를 포함하도록 쿼리 계획을 적용할 수 있습니다. 병렬 쿼리 계획을 올바르게 적용하려면 15.4 또는 14.9로 업그레이드한 후 다음을 수행해야 합니다.
apg_plan_mgmt.plan_hash_version
을 4 이상으로 설정합니다.apg_plan_mgmt.validate_plans('update_plan_hash')
을 호출합니다.plan_outline에 수집 노드가 있는 승인된 계획을 다시 캡처합니다.
QPM 는 Materialize 노드를 사용하여 쿼리 계획을 적용할 수 있습니다. 구체화 노드를 적용하려면 15.4 또는 14.9로 업그레이드한 후 다음을 수행해야 합니다.
apg_plan_mgmt.plan_hash_version
을 4 이상으로 설정합니다.apg_plan_mgmt.validate_plans('update_plan_hash')
을 호출합니다.
-
복제본에서 쿼리 계획을 캡처하려면 ALTER EXTENSION apg_plan_mgmt 를 호출하여
apg_plan_mgmt
확장을 업데이트해야 합니다UPDATE. -
apg_plan_mgmt.plan_capture_threshold
가 쿼리 계획을 캡처하도록 허용하지 않으려면 QPM를 지정해야 합니다.
추가 개선 사항 및 기능 향상
plan_hash
계산 시 성능 개선.
Aurora PostgreSQL 15.3용 apg_plan_mgmt 버전 2.4
Aurora PostgreSQL 15.3용 버전 2.4의 apg_plan_mgmt
확장 기능 개선 사항은 다음과 같습니다.
새로운 기능
-
새로운 GUC auto_explain.hashes를 도입했습니다. true(기본값: false)로 설정하면 자동 설명 결과 끝에 sql_hash 및 plan_hash가 표시됩니다.
-
새로운 GUC apg_plan_mgmt.explain_hashes를 도입했습니다. true(기본값: false)로 설정하면 해시 true 옵션 없이도 EXPLAIN 결과에 sql_hash 및 plan_hash가 표시됩니다.
-
새로운 GUC apg_plan_mgmt.log_plan_enforcement_result를 도입했습니다. 해당 값(기본값: 없음)에 따라 계획 적용 결과가 Postgres 로그 파일에 기록됩니다.
-
파티셔닝된 테이블을 지원하는 새로운 계획 해시 계산 버전을 도입했습니다. apg_plan_mgmt.plan_hash_version을 3으로 설정하고
apg_plan_mgmt
가 설치된 각 데이터베이스에서 apg_plan_mgmt.validate_plans('update_plan_hash')와 plans 테이블의 항목을 직접적으로 호출해야 합니다. -
QPM 는 Memoize 노드를 사용하여 쿼리 계획을 적용할 수 있습니다.
-
apg_plan_mgmt.copy_outline
함수에 새로운 5번째 인수인force_update_target_plan_hash
를 사용할 수 있습니다. true로 설정되면 대상 sql_hash에 대해 소스 계획을 재현할 수 없더라도 대상 계획 해시가 업데이트됩니다.
추가 개선 사항 및 기능 향상
-
JDBC 준비된 문 계획 적용 관련 문제를 해결했습니다.
-
pg_stat_statements와 apg_plan_mgmt.dba_plans 간의 queryid 관련 패리티를 개선했습니다.
-
인덱스 이름이 숫자로 끝날 때 발생하는 계획 적용 문제를 해결했습니다.
-
이제 apg_plan_mgmt.copy_outline 함수가 environment_variables를 복사합니다.
-
apg_plan_mgmt.plan_retention_period의 최소값이 32에서 1로 변경되었습니다.
-
이제 쿼리 계획 관리 기능이 라이터 노드에서 읽기 전용 트랜잭션의 쿼리에 대한 계획을 저장할 수 있습니다.
-
apg_plan_mgmt.evolve_plan_baselines 함수의 문제를 해결했습니다.
-
apg_plan_mgmt가 활성화된 경우 가용성 손실이 발생할 수 있는 문제를 해결했습니다.
apg_plan_mgmt
확장을 설치, 업그레이드 및 사용하는 방법을 알아보려면 Amazon Aurora 사용 설명서의 Aurora Postgre에 대한 쿼리 실행 계획 관리를SQL 참조하세요.
PostgreSQL 14 버전
주제
Aurora PostgreSQL 14.12용 apg_plan_mgmt 버전 2.7, 2024년 8월 8일
Aurora PostgreSQL 14.12용 버전 2.7의 apg_plan_mgmt
확장 기능 개선 사항은 다음과 같습니다.
새로운 기능
더 이상 를 업데이트할 필요가 없습니다
plan_hash_version
. 데이터베이스 엔진을 업그레이드한 후 에서 새 기능을 QPM 자동으로 활성화합니다. 새 기능을 사용할 수 있으려면 조치를 취할 필요가 없습니다.
추가 개선 사항 및 기능 향상
파티션된 테이블이 64개 이상 포함된 QPM 계획의 적용 문제를 수정했습니다.
추가 연산자를 포함하는 QPM 계획의 적용 문제를 수정했습니다.
update_plan_hash 작업이 포함된 QPM validate_plans 관련 문제를 해결했습니다.
Aurora PostgreSQL 14.11용 apg_plan_mgmt 버전 2.6
Aurora PostgreSQL 14.11용 버전 2.6의 apg_plan_mgmt
확장 기능에 대한 개선 사항은 다음과 같습니다.
새로운 기능
QPM 는 집계 연산자가 있는 계획을 적용할 수 있습니다.
추가 개선 사항 및 기능 향상
데이터베이스를 삭제해도 공유 메모리에서 캡처된 관련 계획이 제거되지 않는 문제를 해결했습니다.
뷰가 포함된 계획의 적용 문제를 수정했습니다.
병렬 추가 계획 적용의 개선 사항.
계획 캡처와 관련된 문제를 해결했습니다.
-
수집 노드가 포함된 계획의 적용 문제를 수정했습니다.
Aurora PostgreSQL 14.10용 apg_plan_mgmt 버전 2.6
Aurora PostgreSQL 14.10 버전 2.6의 apg_plan_mgmt
확장 기능 개선 사항은 다음과 같습니다.
새로운 기능
update_plan_hash
함수에 대한apg_plan_mgmt.validate_plans
작업의 일부로 계획 개요가 최신 형식 버전으로 업데이트됩니다.병렬 쿼리 적용의 일부로 병렬 추가 적용에 대한 지원을 추가했습니다. 병렬 추가 노드를 올바르게 적용하려면 다음을 수행해야 합니다.
apg_plan_mgmt.plan_hash_version
을 5로 설정합니다.apg_plan_mgmt.validate_plans('update_plan_hash')
을 호출합니다.
추가 개선 사항 및 기능 향상
-
계획 해시 계산의 성능을 개선했습니다.
-
반복적인 하위 계획이 포함된 계획 개요의 메모리 사용률을 개선했습니다.
-
병렬 쿼리 적용 시
GatherMerge
를 적용할 수 없는 문제를 해결했습니다. -
적용 계획의 예상 비용이 올바르지 않은 문제를 해결했습니다.
-
승인된 계획 적용 시 개요에 파티셔닝된 테이블 및 하위 계획이 포함되는 문제를 해결했습니다.
Aurora PostgreSQL 14.9용 apg_plan_mgmt 버전 2.5
Aurora PostgreSQL 14.9용 버전 2.5의 apg_plan_mgmt
확장 기능 개선 사항은 다음과 같습니다.
새로운 기능
QPM 는 병렬 추가 노드를 제외한 병렬 연산자를 포함하도록 쿼리 계획을 적용할 수 있습니다. 병렬 쿼리 계획을 올바르게 적용하려면 15.4 또는 14.9로 업그레이드한 후 다음을 수행해야 합니다.
apg_plan_mgmt.plan_hash_version
을 4 이상으로 설정합니다.apg_plan_mgmt.validate_plans('update_plan_hash')
을 호출합니다.plan_outline에 수집 노드가 있는 승인된 계획을 다시 캡처합니다.
QPM 는 Materialize 노드를 사용하여 쿼리 계획을 적용할 수 있습니다. 구체화 노드를 적용하려면 15.4 또는 14.9로 업그레이드한 후 다음을 수행해야 합니다.
apg_plan_mgmt.plan_hash_version
을 4 이상으로 설정합니다.apg_plan_mgmt.validate_plans('update_plan_hash')
을 호출합니다.
-
복제본에서 쿼리 계획을 캡처하려면 ALTER EXTENSION apg_plan_mgmt 를 호출하여
apg_plan_mgmt
확장을 업데이트해야 합니다UPDATE. -
apg_plan_mgmt.plan_capture_threshold
가 쿼리 계획을 캡처하도록 허용하지 않으려면 QPM를 지정해야 합니다.
추가 개선 사항 및 기능 향상
plan_hash
계산 시 성능 개선.
Aurora PostgreSQL 14.8용 apg_plan_mgmt 버전 2.4
Aurora PostgreSQL 14.8용 버전 2.4의 apg_plan_mgmt
확장 기능 개선 사항은 다음과 같습니다.
새로운 기능
-
새로운 GUC auto_explain.hashes를 도입했습니다. true(기본값: false)로 설정하면 자동 설명 결과 끝에 sql_hash 및 plan_hash가 표시됩니다.
-
새로운 GUC apg_plan_mgmt.explain_hashes를 도입했습니다. true(기본값: false)로 설정하면 EXPLAIN 해시 true 옵션 없이도 결과에 sql_hash 및 plan_hash가 표시됩니다.
-
새로운 GUC apg_plan_mgmt.log_plan_enforcement_result를 도입했습니다. 해당 값(기본값: 없음)에 따라 계획 적용 결과가 Postgres 로그 파일에 기록됩니다.
-
파티셔닝된 테이블을 지원하는 새로운 계획 해시 계산 버전을 도입했습니다. apg_plan_mgmt.plan_hash_version을 3으로 설정하고
apg_plan_mgmt
가 설치된 각 데이터베이스에서 apg_plan_mgmt.validate_plans('update_plan_hash')와 plans 테이블의 항목을 직접적으로 호출해야 합니다. -
QPM 는 Memoize 노드를 사용하여 쿼리 계획을 적용할 수 있습니다.
-
apg_plan_mgmt.copy_outline
함수에 새로운 5번째 인수인force_update_target_plan_hash
를 사용할 수 있습니다. true로 설정되면 대상 sql_hash에 대해 소스 계획을 재현할 수 없더라도 대상 계획 해시가 업데이트됩니다.
추가 개선 사항 및 기능 향상
-
JDBC 준비된 문 계획 적용 관련 문제를 해결했습니다.
-
pg_stat_statements와 apg_plan_mgmt.dba_plans 간의 queryid 관련 패리티를 개선했습니다.
-
인덱스 이름이 숫자로 끝날 때 발생하는 계획 적용 문제를 해결했습니다.
-
이제 apg_plan_mgmt.copy_outline 함수가 environment_variables를 복사합니다.
-
apg_plan_mgmt.plan_retention_period의 최소값이 32에서 1로 변경되었습니다.
-
이제 쿼리 계획 관리 기능이 라이터 노드에서 읽기 전용 트랜잭션의 쿼리에 대한 계획을 저장할 수 있습니다.
-
apg_plan_mgmt.evolve_plan_baselines 함수의 문제를 해결했습니다.
-
apg_plan_mgmt가 활성화된 경우 가용성 손실이 발생할 수 있는 문제를 해결했습니다.
apg_plan_mgmt
확장을 설치, 업그레이드 및 사용하는 방법을 알아보려면 Amazon Aurora 사용 설명서의 Aurora Postgre에 대한 쿼리 실행 계획 관리를SQL 참조하세요.
PostgreSQL 13 버전
주제
Aurora PostgreSQL 13.15용 apg_plan_mgmt 버전 2.7, 2024년 8월 8일
Aurora PostgreSQL 13.15 버전 2.7의 apg_plan_mgmt
확장에 대한 개선 사항은 다음과 같습니다.
새로운 기능
더 이상 를 업데이트할 필요가 없습니다
plan_hash_version
. 데이터베이스 엔진을 업그레이드한 후 에서 새 기능을 QPM 자동으로 활성화합니다. 새 기능을 사용할 수 있으려면 조치를 취할 필요가 없습니다.
추가 개선 사항 및 기능 향상
파티션된 테이블이 64개 이상 포함된 QPM 계획의 적용 문제를 수정했습니다.
추가 연산자를 포함하는 QPM 계획의 적용 문제를 수정했습니다.
update_plan_hash 작업이 포함된 QPM validate_plans 관련 문제를 해결했습니다.
Aurora PostgreSQL 13.14용 apg_plan_mgmt 버전 2.6
Aurora PostgreSQL 13.14 버전 2.6의 apg_plan_mgmt
확장에 대한 개선 사항은 다음과 같습니다.
새로운 기능
QPM 는 집계 연산자를 포함하는 계획을 적용할 수 있습니다.
추가 개선 사항 및 기능 향상
데이터베이스를 삭제해도 공유 메모리에서 캡처된 관련 계획이 제거되지 않는 문제를 해결했습니다.
뷰가 포함된 계획의 적용 문제를 수정했습니다.
병렬 추가 계획 적용의 개선 사항.
계획 캡처와 관련된 문제를 해결했습니다.
-
수집 노드가 포함된 계획의 적용 문제를 수정했습니다.
Aurora PostgreSQL 13.13용 apg_plan_mgmt 버전 2.6
Aurora PostgreSQL 13.13용 버전 2.6의 apg_plan_mgmt
확장에 대한 개선 사항은 다음과 같습니다.
새로운 기능
update_plan_hash
함수에 대한apg_plan_mgmt.validate_plans
작업의 일부로 계획 개요가 최신 형식 버전으로 업데이트됩니다.병렬 쿼리 적용의 일부로 병렬 추가 적용에 대한 지원을 추가했습니다. 병렬 추가 노드를 올바르게 적용하려면 다음을 수행해야 합니다.
apg_plan_mgmt.plan_hash_version
을 5로 설정합니다.apg_plan_mgmt.validate_plans('update_plan_hash')
을 호출합니다.
추가 개선 사항 및 기능 향상
-
계획 해시 계산의 성능을 개선했습니다.
-
반복적인 하위 계획이 포함된 계획 개요의 메모리 사용률을 개선했습니다.
-
병렬 쿼리 적용 시
GatherMerge
를 적용할 수 없는 문제를 해결했습니다. -
적용 계획의 예상 비용이 올바르지 않은 문제를 해결했습니다.
-
승인된 계획 적용 시 개요에 파티셔닝된 테이블 및 하위 계획이 포함되는 문제를 해결했습니다.
Aurora PostgreSQL 13.12용 apg_plan_mgmt 버전 2.5
Aurora PostgreSQL 13.12용 버전 2.5의 apg_plan_mgmt
확장 기능에 대한 개선 사항은 다음과 같습니다.
새로운 기능
QPM 는 병렬 추가 노드를 제외한 병렬 연산자를 포함하도록 쿼리 계획을 적용할 수 있습니다. 병렬 쿼리 계획을 올바르게 적용하려면 15.4 또는 14.9로 업그레이드한 후 다음을 수행해야 합니다.
apg_plan_mgmt.plan_hash_version
을 4 이상으로 설정합니다.apg_plan_mgmt.validate_plans('update_plan_hash')
을 호출합니다.plan_outline에 수집 노드가 있는 승인된 계획을 다시 캡처합니다.
-
복제본에서 쿼리 계획을 캡처하려면 ALTER EXTENSION apg_plan_mgmt를 호출하여
apg_plan_mgmt
확장을 업데이트해야 합니다UPDATE. -
apg_plan_mgmt.plan_capture_threshold
가 쿼리 계획을 캡처하도록 허용하지 않으려면 QPM를 지정해야 합니다.
Aurora PostgreSQL 13.11용 apg_plan_mgmt 버전 2.4
Aurora PostgreSQL 13.11용 버전 2.4의 apg_plan_mgmt
확장 기능에 대한 개선 사항은 다음과 같습니다.
새로운 기능
-
새로운 GUC auto_explain.hashes를 도입했습니다. true(기본값: false)로 설정하면 자동 설명 결과 끝에 sql_hash 및 plan_hash가 표시됩니다.
-
새로운 GUC apg_plan_mgmt.explain_hashes를 도입했습니다. true(기본값: false)로 설정하면 EXPLAIN 해시 true 옵션 없이도 결과에 sql_hash 및 plan_hash가 표시됩니다.
-
새로운 GUC apg_plan_mgmt.log_plan_enforcement_result를 도입했습니다. 해당 값(기본값: 없음)에 따라 계획 적용 결과가 Postgres 로그 파일에 기록됩니다.
-
파티셔닝된 테이블을 지원하는 새로운 계획 해시 계산 버전을 도입했습니다. apg_plan_mgmt.plan_hash_version을 3으로 설정하고
apg_plan_mgmt
가 설치된 각 데이터베이스에서 apg_plan_mgmt.validate_plans('update_plan_hash')와 plans 테이블의 항목을 직접적으로 호출해야 합니다. -
apg_plan_mgmt.copy_outline
함수에 새로운 5번째 인수인force_update_target_plan_hash
를 사용할 수 있습니다. true로 설정되면 대상 sql_hash에 대해 소스 계획을 재현할 수 없더라도 대상 계획 해시가 업데이트됩니다.
추가 개선 사항 및 기능 향상
-
JDBC 준비된 문 계획 적용 관련 문제를 해결했습니다.
-
인덱스 이름이 숫자로 끝날 때 발생하는 계획 적용 문제를 해결했습니다.
-
이제 apg_plan_mgmt.copy_outline 함수가 environment_variables를 복사합니다.
-
apg_plan_mgmt.plan_retention_period의 최소값이 32에서 1로 변경되었습니다.
-
이제 쿼리 계획 관리 기능이 라이터 노드에서 읽기 전용 트랜잭션의 쿼리에 대한 계획을 저장할 수 있습니다.
-
apg_plan_mgmt.evolve_plan_baselines 함수의 문제를 해결했습니다.
-
apg_plan_mgmt가 활성화된 경우 가용성 손실이 발생할 수 있는 문제를 해결했습니다.
apg_plan_mgmt
확장을 설치, 업그레이드 및 사용하는 방법을 알아보려면 Amazon Aurora 사용 설명서의 Aurora Postgre에 대한 쿼리 실행 계획 관리를SQL 참조하세요.
PostgreSQL 12 버전
주제
Aurora PostgreSQL 12.19용 apg_plan_mgmt 버전 2.7, 2024년 8월 8일
Aurora PostgreSQL 12.19용 버전 2.7의 apg_plan_mgmt
확장 기능 개선 사항은 다음과 같습니다.
새로운 기능
더 이상 를 업데이트할 필요가 없습니다
plan_hash_version
. 데이터베이스 엔진을 업그레이드한 후 에서 새 기능을 QPM 자동으로 활성화합니다. 새 기능을 사용할 수 있으려면 조치를 취할 필요가 없습니다.
추가 개선 사항 및 기능 향상
파티션된 테이블이 64개 이상 포함된 QPM 계획의 적용 문제를 수정했습니다.
추가 연산자를 포함하는 QPM 계획의 적용 문제를 수정했습니다.
update_plan_hash 작업이 포함된 QPM validate_plans 관련 문제를 해결했습니다.
Aurora PostgreSQL 12.18용 apg_plan_mgmt 버전 2.6
Aurora PostgreSQL 12.18 버전 2.6의 apg_plan_mgmt
확장에 대한 개선 사항은 다음과 같습니다.
추가 개선 사항 및 기능 향상
계획 캡처와 관련된 문제를 해결했습니다.
Aurora PostgreSQL 12.17용 apg_plan_mgmt 버전 2.6
Aurora PostgreSQL 12.17용 버전 2.6의 apg_plan_mgmt
확장에 대한 개선 사항은 다음과 같습니다.
새로운 기능
update_plan_hash
함수에 대한apg_plan_mgmt.validate_plans
작업의 일부로 계획 개요가 최신 형식 버전으로 업데이트됩니다.
Aurora PostgreSQL 12.16용 apg_plan_mgmt 버전 2.5
Aurora PostgreSQL 12.16용 버전 2.5의 apg_plan_mgmt
확장 기능 개선 사항은 다음과 같습니다.
새로운 기능
-
복제본에서 쿼리 계획을 캡처하려면 ALTER EXTENSION apg_plan_mgmt를 호출하여
apg_plan_mgmt
확장을 업데이트해야 합니다UPDATE. -
apg_plan_mgmt.plan_capture_threshold
가 쿼리 계획을 캡처하도록 허용하지 않으려면 QPM를 지정해야 합니다.
Aurora PostgreSQL apg_plan_mgmt 확장의 버전 2.3
apg_plan_mgmt
확장 버전 2.3의 개선 사항은 다음과 같습니다.
새로운 확장 기능
새로운
apg_plan_mgmt.copy_outline
함수를 지원합니다. 이 함수를 사용하면 계획 해시와 계획 개요를 한 SQL해시에서 다른 해시로 복사할 수 있습니다. 매번 인라인 힌트 문을 사용하지 않고 힌트를 사용하는 계획을 다른 유사한 문에 복사하려는 경우 이 함수를 사용합니다. 쿼리 업데이트로 인해 잘못된 계획이 생성되는 경우 이 함수는 오류를 발생시키고 업데이트를 롤백합니다. 자세한 내용은 Amazon Aurora 사용 설명서의 Aurora PostgreSQL 쿼리 계획 관리에 대한 함수 참조를 참조하세요.
확장 개선 사항
-
이제 쿼리 계획 관리 기능이 프로시저 및 DO 블록 내에 있는 쿼리에 대한 계획을 저장합니다. 버전 2.3 이전의
apg_plan_mgmt
버전에서는 이것이 제한되었습니다.
apg_plan_mgmt
확장을 설치, 업그레이드 및 사용하는 방법을 알아보려면 Amazon Aurora 사용 설명서의 Aurora Postgre에 대한 쿼리 실행 계획 관리를SQL 참조하세요.
Aurora PostgreSQL apg_plan_mgmt 확장의 버전 2.1
Aurora PostgreSQL 11.20용 버전 2.1 apg_plan_mgmt
확장의 개선 사항에는 다음이 포함됩니다.
Aurora PostgreSQL 11.20의 새로운 확장 기능
-
새로운 GUC apg_plan_mgmt.log_plan_enforcement_result를 도입했습니다. 해당 값(기본값: 없음)에 따라 계획 적용 결과가 Postgres 로그 파일에 기록됩니다.
Aurora PostgreSQL 11.20의 확장 개선 사항
-
JDBC 준비된 문 계획 적용 관련 문제를 해결했습니다.
apg_plan_mgmt
확장을 설치, 업그레이드 및 사용하는 방법을 알아보려면 Amazon Aurora 사용 설명서의 Aurora Postgre에 대한 쿼리 실행 계획 관리를SQL 참조하세요.
Aurora PostgreSQL apg_plan_mgmt 확장의 버전 2.0
버전 2.0의 apg_plan_mgmt
확장 변경 사항은 다음과 같습니다.
새로운 확장 기능
-
이제 파라미터가 있는지 여부에 관계없이 SQL 함수 내의 모든 쿼리를 관리할 수 있습니다.
-
이제 파라미터 유무에 관계없이 PL/pgSQL 함수 내의 모든 쿼리를 관리할 수 있습니다.
-
이제 파라미터가 있는지 여부에 관계없이 일반 계획에서 쿼리를 관리할 수 있습니다. 일반 플랜과 사용자 지정 플랜에 대한 자세한 내용은 PostgreSQL 설명서
의 PREPARE
문을 참조하세요. -
이제 쿼리 계획 관리를 사용하여 쿼리 계획에서 특정 유형의 집계 방법을 사용하도록 할 수 있습니다.
확장 개선 사항
-
이제
max_worker_processes
파라미터 설정에 최대 8KB를 곱한 크기로 계획을 저장할 수 있습니다. 이전에는 최대 계획 크기가 8KB였습니다. -
의 문과 같이 이름이 지정되지 않은 준비된 문에 대한 버그를 수정했습니다JDBC.
-
이전에는 에 로드되지 않았을
CREATE EXTENSION apg_plan_mgmt
때 를 시도했을 때shared_preload_libraries
PostgreSQL 백엔드 연결이 끊겼습니다. 이제 오류 메시지가 표시되고 연결이 끊어지지 않습니다. -
cardinality_error
에서 의 기본값apg_plan_mgmt.plans table
은 NULL이지만apg_plan_mgmt.evolve_plan_baselines
함수 중에 -1로 설정할 수 있습니다. NULL 이제 가 일관되게 사용됩니다. -
이제 임시 테이블을 참조하는 쿼리에 대한 계획이 저장됩니다.
-
기본 최대 계획 수는 1000에서 10000으로 증가합니다.
-
pgss 파라미터 대신 자동 계획 캡처 모드를 사용해야 하므로 해당 파라미터는 더 이상 사용되지 않습니다.
-
apg_plan_mgmt.pgss_min_calls
-
apg_plan_mgmt.pgss_min_mean_time_ms
-
apg_plan_mgmt.pgss_min_stddev_time_ms
-
apg_plan_mgmt.pgss_min_total_time_ms
-
Aurora PostgreSQL apg_plan_mgmt 확장의 버전 1.0.1
버전 1.0.1의 apg_plan_mgmt
확장 변경 사항은 다음과 같습니다.
새로운 확장 기능
-
validate_plans
함수에는action
(이)라는 새update_plan_hash
값이 있습니다. 이 작업은 정확하게 재현할 수 없는 계획에 대한plan_hash
ID를 업데이트합니다.update_plan_hash
값을 사용하면 를 다시 작성하여 계획을 수정할 수도 있습니다SQL. 그런 다음 좋은 계획을 원래 에 대한Approved
계획으로 등록할 수 있습니다SQL. 다음은update_plan_hash
작업을 사용하는 예제입니다.UPDATE apg_plan_mgmt.plans SET plan_hash =
new _plan_hash
, plan_outline =good_plan_outline
WHERE sql_hash =bad_plan_sql_hash
AND plan_hash =bad_plan_plan_hash
; SELECT apg_plan_mgmt.validate_plans(bad_plan_sql_hash
,bad_plan_plan_hash
, 'update_plan_hash'); SELECT apg_plan_mgmt.reload(); -
지정된
EXPLAIN
문에 대한 SQL 문 텍스트를 생성하는 새get_explain_stmt
함수를 사용할 수 있습니다. 이 함수에는sql_hash
,plan_hash
및explain_options
파라미터가 포함되어 있습니다.explain_options
파라미터는 아래와 같이 유효한EXPLAIN
옵션의 쉼표로 구분된 목록일 수 있습니다.analyze,verbose,buffers,hashes,format json
파라미터
explain_options
가 NULL 또는 빈 문자열인 경우get_explain_stmt
함수는 간단한EXPLAIN
문을 생성합니다.워크로드 전체 또는 일부에 대해
EXPLAIN
스크립트를 생성하려면\a
,\t
및\o
옵션을 사용해 출력을 파일로 리디렉션하세요. 예를 들어,DESC
순서대로 정렬된 PostgreSQLpg_stat_statements
보기를 사용하여 최상위(상위 K) 문에 대한EXPLAIN
스크립트total_time
를 생성할 수 있습니다. -
수집 병렬 쿼리 연산자의 정확한 위치는 비용에 따라 결정되고 시간이 지남에 따라 약간 변경될 수 있습니다. 이러한 차이로 인해 전체 계획이 무효화되는 것을 방지하기 위해 이제 쿼리 계획 관리에서는 수집 연산자가 계획 트리의 여러 곳으로 이동한다 하더라도 동일한
plan_hash
를 계산합니다. -
pl/pgsql 함수 내에 있는 파라미터화되지 않은 설명문에 대한 지원이 추가되었습니다.
-
동일 클러스터에 있는 여러 데이터베이스에
apg_plan_mgmt
확장이 설치됨과 동시에 두 개 이상의 데이터베이스가 동시에 액세스되고 있으면 오버헤드가 감소합니다. 또한 이 릴리스에서는 계획이 공유 메모리에 저장되지 않게 만들었던 이 영역의 버그를 수정했습니다.
확장 개선 사항
-
evolve_plan_baselines
함수 개선 사항.-
evolve_plan_baselines
함수는 이제 계획 내 모든 노드에 대해cardinality_error
지표를 계산합니다. 이 지표를 사용하여 카디널리티 추정 오류가 많고 계획 품질이 더 의심스러운 모든 계획을 식별할 수 있습니다.cardinality_error
값이 높은 장기 실행 설명문은 쿼리 튜닝 우선 순위가 높은 후보자입니다. -
evolve_plan_baselines
에서 생성되는 보고서에는 이제sql_hash
,plan_hash
및status
계획이 포함됩니다. -
이제
evolve_plan_baselines
에서 앞서Rejected
된 계획을 승인하도록 허용할 수 있습니다. -
이제
speedup_factor
에 대한evolve_plan_baselines
의 의미는 기준 계획에 대해 항상 상대적입니다. 예를 들어 이제 1.1이라는 값은 기준 계획보다 10퍼센트 더 빠르다는 것을 뜻합니다. 0.9라는 값은 기준 계획보다 10퍼센트 더 느리다는 것을 뜻합니다. 이러한 비교는 총 시간이 아닌 실행 시간만을 사용하여 이루어집니다. -
이제
evolve_plan_baselines
함수는 새로운 방식으로 캐시를 워밍합니다. 즉 기준 계획을 실행한 후 기준 계획을 한 차례 실행하고, 이어서 후보 계획을 한 번 수행하는 방식입니다. 전에는evolve_plan_baselines
이 후보 계획을 두 번 실행했습니다. 이 접근 방식을 통해 실행 시간(특히 느린 후보자 계획에 대한 실행 시간)이 크게 늘어났습니다. 그러나 기준 계획에서 사용되지 않는 인덱스를 후보 계획에서 사용하는 경우에는 후보 계획을 두 차례 실행하는 것이 더 안정적입니다.
-
-
쿼리 계획 관리는 시스템 테이블 또는 보기, 임시 테이블 또는 쿼리 계획 관리의 자체 테이블을 참조하는 계획을 더 이상 저장하지 않습니다.
-
버그 수정 사항으로 저장 시 계획을 즉시 캐싱, 백엔드 종료의 원인이었던 버그 수정 등이 있습니다.