728x90
반응형
목적
- upgrade에 따른 데이터 정합성, 성능 간 이슈 등을 사전에 체크하여 장애 발생을 방지
- 지속적으로 dbms 생명주기를 관리하여 신기술에 대한 인지 및 도입 방안 마련
읽기 전에
- 아래 내용은 Release note 내용 중 필요하다고 판단되는 부분 위주로 정리함
- 버전의 A.B 에서 A는 년(ex_ 20의 경우 2020년)을 의미하며 B는 월(ex_ 6의 경우 6월)을 의미함. 즉, 버전에서 Release date를 유추할 수 있음
- 중복된 내용의 경우 가장 낮은 버전(이전 버전)에서 최초 기입하며 이후 중복 기입하지 않음
Backward Incompatible Change
- Ver. 22.1
- left, right 함수가 이전 버전에서는 파서에만 구현되었으나 이제 완전한 기능을 갖춤. 따라서 서로 다른 클릭하우스 서버 버전이 포함된 클러스터 내에서 분산 테이블에 별칭 없이 이 함수를 쿼리에 사용할 경우 에러가 발생함
- 스칼라 서브쿼리의 자원 사용이 이제 완전히 설명됨(추적이 가능하다는 의미인듯). system.query_log에 스칼라 서브쿼리에서 읽은 행 수를 확인할 수 있음. 진행중인 스칼라 서브쿼리 kill이 가능함
New Feature
- Ver. 22.1
- replica를 새로 추가할 경우 File, HDFS, Merge, Buffer, Distributed, ReplicatedMergeTree 테이블 엔진에 대한 create 쿼리에서 구조를 건너뛸 수 있음
- 모든 view 종류에 대해 CREATE VIEW 구문에 COMMENT를 추가할 수 있음
- 설정을 변경할 경우 동적으로 listening 포트와 프로토콜을 재초기화할 수 있음
- MONTHNAME 함수가 추가됨
Bug Fix
- Ver. 22.1
- SYSTEM SUSPEND와 SYSTEM ... THREAD FUZZER가 접근 제어를 놓치는 버그가 수정됨
- system.tables, system.dictionaries 시스템 테이블에 딕셔너리에 대한 코멘트가 보이지 않는 버그가 수정됨
- async_insert 파라미터가 활성화된 상태에서 비동기 삽입이 쿼리 로그에 추가됨
- replaceRegexpAll 함수의 회귀가 수정됨. 이 함수는 매치된 substring이 비어있으면 잘못 동작함
- 매우 많은 mutation이 실행중이거나 메모리 소비가 심한 경우 MergeTree 테이블 엔진이 일부 mutation을 건너뛰는 버그가 수정됨
- CustomSeparated, Template, Regexp, MsgPack, JSONAsString 타입으로 비동기 삽입 시 데이터를 읽을 수 없는 버그가 수정됨
- 동일한 열에 2개 이상의 row 정책이 있을 경우 broken select 쿼리를 수정함. 같은 세션에 두 번째 쿼리부터 시작함.
- DROP TABLE system.query_log sync 명령어 수행 시 행이 걸리는 버그가 수정됨
Improvement
- Ver. 22.1
- 1970-01-01 00:00:00 이전에 발생된 DATE TIME 변환 함수는 오버플로우 대신 0으로 채우게 됨
- 클라이언트 내 전체 cpu 사용량, 전체 ram 사용량, 호스트별 최대 ram 사용량의 자원 사용량이 항상 보여짐
- Materialized View에 가상 열을 사용할 수 있음
- 현재 git revision에 대한 system.build_options 시스템 테이블의 정보가 더 추가됨
- 클러스터 구성 내 <secure>1</secure> 형식 대신 <secure/>이 지원됨
- Ctrl+C를 두번 누르면 진행 중인 쿼리를 기다리지 않고 clickhouse-benchmark를 즉시 종료함
- 서브쿼리를 UDF처럼 구현하는 기능이 지원됨. 예를 들어 CREATE FUNCTION test as () → (SELECT 1)로 가능함
- 서버를 셧다운하거나 테이블을 detach하는 동안 WAL이 사용 불가할 경우 모든 In-Memory 데이터 part를 flush함
- 쿼리 종류에 따라 동시 쿼리를 제어하는 max_concurrent_select_queries, max_concurrent_insert_queries 파라미터가 추가됨
- Decimal과 Float 타입 간 비교가 가능해짐
- part가 이동한 후 system.parts 시스템 테이블 내 data part에 대한 modification_time이 갱신됨
Performance Improvement
- Ver. 22.1
- 문자열 속성이 있는 딕셔너리에 할당된 메모리가 감소됨
- 크기 계산 로직의 최적화에 의해 clickhouse-keeper의 쓰기 성능이 개선됨
- 시스템 테이블의 쿼리 성능이 개선됨
Experimental Feature
- Ver. 22.1
- 샘플 키 사용 없이 분산 쿼리 수행시 샤드 내에 다중 replica의 병렬 읽기가 가능함. 이 기능은 allow_experimental_parallel_reading_from_replicas=1이고 max_parallel_replicas는 임의 값으로 설정할 경우 활성화됨
- EXPLIAN TABLE OVERRIDE 쿼리가 추가됨
Build/Testing/Packaging Improvement
- Ver. 22.1
- 널 허용 pk에 대한 테스트가 더 진행 중임
참고
- clickhouse change log doc_001
https://clickhouse.com/docs/en/whats-new/changelog/
728x90
반응형
'CDBMS > Clickhouse' 카테고리의 다른 글
[Clickhouse] Ver. 22.3 Release note 요약 (0) | 2024.04.23 |
---|---|
[Clickhouse] Ver. 22.2 Release note 요약 (0) | 2024.04.22 |
[Clickhouse] Ver. 21.12 Release note 요약 (0) | 2024.04.20 |
[Clickhouse] Ver. 21.11 Release note 요약 (0) | 2024.04.19 |
[Clickhouse] Ver. 21.10 Release note 요약 (0) | 2024.04.18 |