728x90
반응형
클릭하우스 메모리 초과
- 클릭하우스의 데이터가 많고 쿼리 조회량이 많아 지는 경우 다음과 같은
에러가 발생 할 수 있다.
DB::Exception: Memory limit (for query) exceeded: would use 18.64 GiB
(attempt to allocate chunk of 4227918 bytes), maximum: 18.63 GiB
클릭 하우스의 Maxmum Memory 계산법
- max_server_memory_usage 는 아래와 같은 공식으로 정해진다
max_server_memory_usage = max_memory_usage * max_server_memory_usage_to_ram_ratio
- max_memory_usage 는 기본 적으로 10GB 로 환경설정 파일에 정의 되어 있다.
- max_server_memory_usage_to_ram_ratio 는 기본적으로 0.9 값이다.
해결방안
- max_memory_usage: 20
- max_server_memory_usage_to_ram_ratio :0.9 였다.
- 맨 위 18.63 으로 최대 값이 정해졌고 18.64 질의로 메모리가 초과 되었다.
- max_server_memory_usage_to_ram_ratio 1.2 로 증가 시켜주어 해결해 주었다.
주의사항
그럼 무조건 1.2 로 늘려 주는것이 답인가?
아니다. 아래와 같은 순으로 확을하면 좋을 것 같다.
1. 쿼리가 최적화가 가능한가?
2. 실제 max_server_memory_usage_to_ram_ratio 1.2 로 하였을때 서버의 메모리가 충분한가?
2가지를 고려하여 메모리값을 계산해서 정의하면 좋을 것 같다.
728x90
반응형
'DataBase > Clickhouse' 카테고리의 다른 글
[ClickHouse] ORDER BY, PARTITION BY, Granules 적용기 (0) | 2023.08.30 |
---|---|
[ClickHouse] 클릭하우스 클러스터 구축 (0) | 2023.05.27 |
[ClickHouse] 클릭하우스 MergeTree 테이블 엔진 (0) | 2023.03.25 |
[ClickHouse] 클릭하우스 란? (0) | 2023.03.18 |
댓글