optimize_aggregation_in_order_* 세션 설정
optimize_aggregation_in_order_* 세션 설정
이 페이지에서는 MergeTree 테이블에서 GROUP BY 최적화와 관련된 optimize_aggregation_in_order_* 세션 설정들을 다뤄요. 데이터를 정렬 순서대로 집계하여 성능을 개선하고 LIMIT를 집계 단계로 밀어 넣어 조기 종료를 가능하게 해요. 이 설정들은 system.settings 테이블에서 확인할 수 있으며 ClickHouse 소스에서 자동 생성돼요.
출처: 문서
본문
이 설정들은 system.settings에서 확인할 수 있으며 소스에서 자동 생성돼요.
optimize_aggregation_in_order
MergeTree 테이블에서 데이터를 해당 순서대로 집계하기 위해 SELECT 쿼리의 GROUP BY 최적화를 활성화해요. 가능한 값:
-
0—GROUP BY최적화가 비활성화돼요. -
1—GROUP BY최적화가 활성화돼요.
함께 보기
optimize_aggregation_in_order_limit
활성화되고 순서대로 집계가 활성화된 경우, 충분한 그룹이 생성된 후 조기 종료가 가능하도록 LIMIT를 집계 단계로 밀어 넣어요. 이로 인해 ORDER BY가 GROUP BY 키 접두사와 일치할 때 읽는 데이터 양이 줄어들어요. rows_before_limit_at_least가 보고하는 값이 줄어들 수 있으므로, 정확한 개수가 필요하면 exact_rows_before_limit을 사용해요.