본문으로 건너뛰기
parallel_leader_participation

parallel_leader_participation

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

Gather나 Gather Merge 노드 아래에서 leader 프로세스가 worker를 기다리는 대신 직접 실행 계획을 수행할지 정한다. boolean 파라미터로 기본값은 on이다.

on이면 leader도 worker들과 함께 하위 계획을 실행하므로 가용 CPU를 하나 더 쓰는 셈이 된다. off로 두면 leader는 worker들이 올려보내는 결과를 읽는 역할에 집중한다. leader가 결과를 빨리 읽어가지 못해 worker들이 막히는 상황이 줄어드는 대신, worker가 모두 기동될 때까지 기다렸다가 첫 결과가 나오므로 시작이 느려진다.

leader의 참여가 도움이 될지 방해가 될지는 계획 유형, worker 수, 쿼리 지속 시간에 따라 달라진다. 짧은 쿼리나 worker 수가 적을 때는 leader의 참여가 이득인 경우가 많고, worker가 많고 결과 병합 부담이 큰 쿼리에서는 off가 나을 수 있다. 대부분의 환경에서는 기본값 on을 유지하면 된다.

출처: PostgreSQL 18 문서