Pulse 게시 ·

pg_plan_filter 1.0 공개, 실행 전 예상 비용으로 PostgreSQL 쿼리 제한

PGX가 10월 7일 PostgreSQL 14~18용 오픈소스 모듈 pg_plan_filter 1.0을 공개했다. 실행 계획의 예상 비용이 설정 기준을 넘으면 오류를 내 쿼리 실행을 막는다. 개별 명령과 트랜잭션 전체에 비용 상한을 두거나, SELECT에만 필터를 적용할 수 있다.

statement_cost_limit은 개별 명령의 실행 계획 예상 비용에 상한을 둔다.

transaction_cost_limit은 한 트랜잭션에서 실행하는 모든 명령의 합산 예상 비용을 제한한다.

filter_select_only를 설정하면 SELECT 명령에만 필터를 적용한다.

판단 기준은 플래너의 예상 비용이며, 실제 실행시간이나 자원 사용량을 측정해 차단하는 방식은 아니다.

실제 실행시간 제한과 함께 쓰면, 비용이 큰 쿼리를 실행 전에 차단하는 보호 장치를 추가할 수 있다.

원문