본문 바로가기
CDBMS/Clickhouse

[Clickhouse] Ver. 23.6 Release note 요약

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

목적

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

 

읽기 전에

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

 

Upgrade Notes

  • -

 

Backward Incompatible Change

  • fs 캐시 내 do_not_evit_index_and_mark_files 기능이 쓸모가 없어 삭제가 됨
  • 실험적인 기능인 LIVE VIEW의 ALTER 구문이 제거됨
  • http_max_field_value_size 및 http_max_field_name_size의 기본 값을 128 KiB로 감소함
  • CPU와 관련된 CGroups 메트릭 지표는 사용 편의성을 위해 하나의 메트릭인 CGroupMaxCPU 로 대체됨. 정규화된 CPU 사용량 메트릭은 설정 시 전체 CPU 수 대신 CGroup 제한으로 정규화됨

 

New Feature

  • 값과 매칭하는 CASE 뿐만 아니라 transform 함수가 이제 모든 데이터 타입에 지원됨
  • --rename_files_after_processing <pattern> 옵션이 추가됨
  • INTO OUTFILE 항목 내 TRUNCATE 수정자가 지원됨. 파일이 존재할 대 INTO OUTFILE에 대해 APPEND나 TRUNCATE 사용을 권장함
  • Redis 테이블 엔진과 redis 테이블 함수가 추가됨. 이 기능은 외부의 Redis 서버에 쿼리하는 것을 허용함
  • 아래 각 파라미터를 통해  file/s3/url/hdfs 테이블 함수를 사용하여 비어 있는 파일은 건너뜀
    • s3_skip_empty_files
    • hdfs_skip_empty_files
    • engine_file_skip_empty_files
    • engine_url_skup_empty_files
  • 따로 명시하지 않을 경우 세션에 대한 기본 타임존 설정을 할 수 있는 session_timezone 파라미터가 추가됨

 

Bug Fix

  • Log 패밀리군 테이블에 TRUNCATE 작업 후 잘못된 row count가 반환되는 버그가 수정됨
  • uniqExact에 대한 병렬 merging 시 발생하는 버그가 수정됨
  • Keeper에 알 수 없는 연산을 포함하는 로그가 적재되는 버그가 수정됨
  • 백업에 쓰기 시 락 파일을 자주 체크하는 버그가 수정됨
  • 서브쿼리가 포함된 조회 시 비효율적으로 동작하는 쿼리 캐시에 대한 버그가 수정됨

 

Improvement

  • "too many parts"에 대한 임계값을 좀 더 현대적으로 완화함
  • 5.1 버전 이상의 MongoDB를 지원하도록 MongoDB 프로토콜이 업데이트 됨. 3.6미만 버전에 대한 지원은 보존됨
  • 스키마 inference 내 읽기에 대한 바이트 수를 제한할 수 있도록 input_format_max_bytes_to_read_for_schema_inference 파라미터가 추가됨
  • 스키마 inference 내 input_format_null_as_default 파라미터를 존중함(우선 고려한다는 뜻인 것 같음)
  • 공백이나 \t 필드 구분자가 있는 CSV를 지원하며 이 구분자는 Spark에서도 쓸 수 있음
  • number_of_mutations_to_delay, number_of_mutations_to_throw 파라미터 값이 기본적으로 500, 1000로 각각 활성화됨

 

Performance Improvement

  • cross join 시 filter push down이 가능해짐
  • 병렬 스레드에 대한 파케이 쓰기 성능이 최적화됨
  • 다중 목록 요청을 구현하여 병렬로 system.zookeeper 테이블에 읽기시 속도가 개선됨
  • 오른쪽 GLOBAL JOIN 테이블로부터 모든 컬럼을 읽지 않음

 

Experimental Feature

  • 큰 merges/mutations 실행에 무작위로 sleep을 추가하여 zero-copy 복제 시 복제본 사이에 더욱 균등하게 작업량을 분배하도록 함

 

Build/Testing/Packaging Improvement

  • -

 

참고

728x90
반응형