본문 바로가기
CDBMS/Clickhouse

[Clickhouse] Ver. 22.11 Release note 요약

by 연습장이 2024. 5. 2.
728x90
반응형

목적

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

 

읽기 전에

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

 

Upgrade Notes

  • Ver. 22.11
    • -

 

Backward Incompatible Change

  • Ver. 22.11
    • JSONExtract 함수 계열은 이제 요청된 유형으로 강제 변환을 시도

 

New Feature

  • Ver. 22.11
    • clickhouse 키퍼와의 세션이 끊어졌을 때에도 ReplicatedMergeTree에 삽입하는 동안 재시도 지원을 추가함. 이에 따라 키퍼가 다시 시작되는 경우(ex_ upgrade 등) 삽입 중에 사용자에게 에러를 반환하지 않음
    • 다양한 복합 interval이 추가됨
      • interval에 더하기, 빼기 등의 연산 가능함. 유형이 서로 다른 경우 해당 유형의 tuple로 변환됨
      • Date/Datetime 필드에 interval 튜플을 더하거나 뺄 수 있음
      • 다양한 유형의 interval 구문 추가. 예를 들어 INTERVAL '1 HOUR 1 MINUTE 1 SECOND' 가 가능함
    • system.query_log에 적용된 행 수준 정책이 추가됨
    • formatReadableDecimalSize 함수가 추가됨

 

Bug Fix

  • Ver. 22.11
    • 키 유형이 널 허용 내에 있을 수 없는 경우 잘못된 키 분석이 발생하는 버그가 수정됨
    • TRUNCATE TABLE 내 락이 발생하는 버그가 수정됨
    • 쿼리 취소 시 드물게 행이 발생할 수 있는 버그가 수정됨
    • 서브쿼리와 형변환 시 interval 타입의 예상치 못한 결과가 발생하는 버그가 수정됨

 

Improvement

  • Ver. 22.11
    • LIMIT이 포함된 작은 쿼리의 경우 읽기 성능이 개선됨
    • INSERT ITNO 쿼리에 대화형 매개변수가 추가됨
    • system.table_functions 테이블에 allow_readonly 열이 추가됨
    • system.asynchronous_metrics 테이블이 내장된 문서를 포함함. 이 문서는 프로메테우스에 추출될 수 있음
    • system.query_log와 /var/log/clickhouse-server/*.log 및 에러 메시지 내 비밀번호와 비밀키가 마스킹됨
    • system.detached_parts에 bytes_on_disk, path 열이 추가됨
    • 비동기 삽입에 대한 FailedAsynInsertQuery 이벤트 지표가 추가됨
    • system.asynchronous_metrics 테이블에 OS와 관련된 정보의 모음에 대한 에러 리포팅이 개선됨

 

Performance Improvement

  • Ver. 22.11
    • match 함수는 문자열 접두사에 대한 조건인 경우 인덱스를 사용할 수 있음
    • AND와 OR 연산자가 시퀀스될 떄 속도가 개선됨
    • clickhouse 키퍼 성능 개선 사항으로 여러 노드에 커밋되지 않은 상태가 있는 경우 커밋 성능을 개선함
    • NOT LIKE 'prefix%'와 같은 조건에 pk 인덱스가 사용될 수 있음

 

Experimental Feature

  • Ver. 22.11
    • 예를 들어 Array(JSON) 등의 다른 타입을 Object 타입 내에 넣을 수 있음

 

Build/Testing/Packaging Improvement

  • Ver. 22.11
    • -

 

  •  

참고

728x90
반응형