본문 바로가기
CDBMS/Clickhouse

[Clickhouse] Ver. 22.5 Release note 요약

by 연습장이 2024. 4. 25.
728x90
반응형

목적

  • upgrade에 따른 데이터 정합성, 성능 간 이슈 등을 사전에 체크하여 장애 발생을 방지
  • 지속적으로 dbms 생명주기를 관리하여 신기술에 대한 인지 및 도입 방안 마련

 

읽기 전에

  • 아래 내용은 Release note 내용 중 필요하다고 판단되는 부분 위주로 정리함
  • 버전의 A.B 에서 A는 년(ex_ 20의 경우 2020년)을 의미하며 B는 월(ex_ 6의 경우 6월)을 의미함. 즉, 버전에서 Release date를 유추할 수 있음
  • 중복된 내용의 경우 가장 낮은 버전(이전 버전)에서 최초 기입하며 이후 중복 기입하지 않음

 

Upgrade Notes

  • Ver. 22.5
    • background merges, mutations, OPTIMIZE에 대하여 SelectedRows, SelectedBytes 메트릭 지표의 값이 더 이상 증가하지 않고 MergedRows, MergeedUncompressedBytes가 예전처럼 증가하게 됨
    • users.xml 설정 파일에서 default user profile 내 max_memory_usage 설정이 제거됨. 이전에는 10GB의 엄격한 제한이었으나 이제는 좀 더 탄력적임
    • log_query_threads 설정이 기본적으로 비활성화됨. 이는 쿼리 수행에 참여하는 모든 스레드의 통계를 로깅할 것인지 제어하는데, 비동기 읽기 수행을 지원 후 고유한 스레드 id의 총 갯수가 너무 많아 지고 query_thread_log 시스템 테이블에 과부하가 걸리기 때문

 

Backward Incompatible Change

  • Ver. 22.5
    • groupArraySorted 함수가 버그로 인해 제거됨

 

New Feature

  • Ver. 22.5
    • 기본적으로 메모리 overcommit이 활성화됨
    • GROUP BY 항목에 GROUPING SETS가 지원됨. 이는 grouping sets의 병렬 처리를 지원함
    • system.certificates 시스템 테이블이 추가됨
    • temporary 테이블에 대해 system.tables 시스템 테이블 내 total_rows, total_bytes 열이 추가됨
    • 쿼리 레벨 설정에서 parts_to_delay_insert, parts_to_throw_insert가 오버라이드될 수 있음

 

Bug Fix

  • Ver. 22.5
    • LIMIT BY를 사용한 분산 쿼리에서 "Cannot create column of type Set"이 발생하는 버그가 수정됨
    • 암시적 집계를 사용하는 일부 삽입 쿼리의 성능 저하가 수정됨
    • 복제된 데이터베이스 내 TRUNCATE 쿼리 시 논리적 에러가 발생하는 버그가 수정됨
    • MergeTree 엔진 내 INTERPOLATE 사용 시 "Missing column" 예외가 발생하는 버그가 수정됨
    • 사용 권한이 있는 유저가 수행해도, 사용자 정의 함수가 GROUP BY에서 사용할 수 없는 버그가 수정됨

 

Improvement

  • Ver. 22.5
    • 가장 높은 수준의 설정에 명시될 경우 백그라운드 작업(merges, mutations, moves, fetches)을 수행하기 위한 스레드의 수가 증가될 수 있음
    • 로그 수준으로 test를 설정하여도 경고가 추가됨. test 로그 수준은 최근에 추가된 기능으로 운영 환경에서는 사용할 수 없음
    • 설정에 user_defined_path 태그가 추가됨
    • system.processes 시스템 테이블에 is_all_data_sent 열이 추가됨
    • clickhouse-benchmark가 환경 변수에서 인증 정보를 읽을 수 있음
    • --external을 사용하지 않고 --file을 clickhouse-client에서 사용할 경우 적절히 경고를 표시함

 

Performance Improvement

  • Ver. 22.5
    • GROUP BY 표현식이 없을 경우 avg, sum 집계함수의 성능이 개선됨
    • system.asynchronous_metric_log 시스템 테이블의 구조가 변경되어 10배 적은 용량을 차지하게 됨. 또한 event_time_microseconds 열이 불필요하여 제거됨
    • select countDistinct(a) from t 쿼리가 count(1) from (select a from t group by a) 로 재작성되도록 허용됨

 

Experimental Feature

  • Ver. 22.5
    • SYSTEM SYNC DATABASE REPLICA 쿼리가 추가됨. 이는 현재 비동기이기 때문에 Replicated database 내 테이블 메타데이터를 동기화함

 

Build/Testing/Packaging Improvement

  • Ver. 22.5
    • -

 

  •  

참고

728x90
반응형