본문으로 건너뛰기
enable_mergejoin

enable_mergejoin

버전기본값context타입
14onuserboolean
15onuserboolean
16onuserboolean
17onuserboolean
18onuserboolean
19onuserboolean

planner가 merge join plan을 후보로 고려할지 정한다. 기본값은 on이다.

merge join은 양쪽 입력을 join key로 정렬한 뒤 나란히 훑으며 짝을 맞추는 방식이다. 양쪽 모두 인덱스 등으로 이미 정렬돼 있으면 추가 정렬 없이 대량 join을 안정적인 메모리 사용량으로 처리할 수 있어, 정렬된 큰 입력끼리의 join에서 강점이 있다. 정렬돼 있지 않으면 Sort 노드가 앞에 붙고 그 비용까지 함께 계산된다.

운영 노트: off는 진단 도구다. planner가 merge join을 고른 쿼리에서 세션 단위로 끄고 hash join 등 다른 방식의 plan과 EXPLAIN (ANALYZE)로 비교하는 용도로 쓴다. 전역으로 끄는 것은 피한다.

출처: PostgreSQL 18 문서