카테고리
Version
생성자
U
Untitled- 4.0.6
- 개선 사항
- 버그 수정
- 4.0.5
- 개선 사항
- 버그 수정
- 4.0.4
- 개선 사항
- 버그 수정
- 4.0.3
- 개선 사항
- 버그 수정
- 4.0.2
- 새로운 기능
- 개선 사항
- 버그 수정
- 동작 변경
- 4.0.1
- 개선 사항
- 버그 수정
- 동작 변경
- 4.0.0
- Data Lake Analytics
- Security and Authentication
- Storage Optimization and Cluster Management
- Query and Performance Improvement
- Functions and SQL Syntax
- Behavior Changes
- 4.0.0-RC
- 데이터 레이크 분석
- 보안 및 인증
- 스토리지 최적화 및 클러스터 관리
- 쿼리 및 성능 개선
- 함수 및 SQL 구문
4.0.6
출시일: 2026년 2월 14일
개선 사항
- 괄호를 포함한 파티션 변환 방식(예:
PARTITION BY (bucket(k1, 3)))으로 Iceberg 테이블 생성을 지원합니다. #68945 - Iceberg 테이블에서 파티션 컬럼이 반드시 컬럼 목록의 마지막에 위치해야 하는 제약을 제거하여 임의 위치에서 정의 가능하도록 변경되었습니다. #68340
- Iceberg 테이블 싱크에 호스트 수준 정렬 기능이 도입되었습니다. 시스템 변수
connector_sink_sort_scope(기본값: FILE)를 통해 제어하며, 읽기 성능 향상을 위한 데이터 레이아웃 최적화를 지원합니다. #68121 - 인수 개수가 잘못된 경우 Iceberg 파티션 변환 함수(예:
bucket,truncate)의 오류 메시지가 개선되었습니다. #68349 - Iceberg 테이블에서 다양한 파일 형식(ORC/Parquet) 및 압축 코덱 지원을 개선하기 위해 테이블 속성 처리 로직이 리팩토링되었습니다. #68588
- 세분화된 제어를 위한 테이블 수준 쿼리 타임아웃 설정
table_query_timeout이 추가되었습니다 (우선순위: 세션 > 테이블 > 클러스터). #67547 - 자동화된 스냅샷 상태 및 스케줄을 확인하기 위한
ADMIN SHOW AUTOMATED CLUSTER SNAPSHOT구문을 지원합니다. #68455 SHOW CREATE VIEW에서 주석을 포함한 사용자 정의 원본 SQL을 표시하도록 지원합니다. #68040- Merge Commit이 활성화된 Stream Load 작업이
information_schema.loads에 노출되어 가시성이 향상되었습니다. #67879 - FE 메모리 추정을 위한 유틸리티 API
/api/memory_usage가 도입되었습니다. #68287 - 파티션 재활용 중
CatalogRecycleBin의 불필요한 로깅이 줄어들었습니다. #68533 - 베이스 테이블에서 Swap/Drop/Replace Partition 작업이 발생하면 연관된 비동기 Materialized View가 갱신(refresh) 트리거됩니다. #68430
VARBINARY타입에 대한count distinct유사 집계 함수를 지원합니다. #68442- 의미론적으로 안전한 표현식(예:
cast(k as bigint) + 10)에 대해 히스토그램 MCV를 전파하도록 표현식 통계가 강화되어 스큐 탐지 정확도가 향상되었습니다. #68292
버그 수정
다음 이슈들이 수정되었습니다:
- Skew Join V2 런타임 필터에서 발생하는 잠재적 크래시. #67611
- Low Cardinality 재작성으로 인한 조인 조건 타입 불일치(예: INT = VARCHAR). #68568
- 쿼리 큐 할당 시간 및 대기 타임아웃 로직 관련 이슈. #65802
- 스키마 변경 후 Flat JSON 확장 컬럼의
unique_id충돌. #68279 OlapTableSink.complete()에서 파티션 동시 접근 이슈. #68853- 수동으로 다운로드한 클러스터 스냅샷 복원 시 잘못된 메타데이터 추적. #68368
- 리포지토리 경로가
/로 끝날 때 백업 경로에 이중 슬래시가 포함되는 이슈. #68764 SHOW CREATE CATALOG출력에서 OBS AK/SK 자격증명이 마스킹되지 않는 이슈. #65462
4.0.5
출시일: 2026년 2월 3일
개선 사항
- Paimon 버전이 1.3.1로 업그레이드되었습니다. #67098
- DP 통계 추정에서 누락된 최적화가 복원되어 불필요한 계산이 감소되었습니다. #67852
- DP Join 재순서화의 프루닝이 개선되어 비용이 높은 후보 플랜을 더 일찍 건너뜁니다. #67828
- JoinReorderDP의 파티션 열거 최적화로 객체 할당이 줄어들고 원자 수 상한(≤62)이 추가되었습니다. #67643
- DP 조인 재순서화 프루닝 최적화 및 스트림 연산 오버헤드 감소를 위한 BitSet 검사가 추가되었습니다. #67644
- DP 통계 추정 중 조건자 컬럼 통계 수집을 건너뛰어 CPU 오버헤드가 감소되었습니다. #67663
- 상관 Join 행 수 추정 최적화로
Statistics객체 반복 생성이 방지됩니다. #67773 Statistics.getUsedColumns에서 메모리 할당이 감소되었습니다. #67786- 행 수만 업데이트될 때 불필요한
Statistics맵 복사가 방지됩니다. #67777 - 쿼리에 집계가 없는 경우 집계 푸시다운 로직을 건너뛰어 오버헤드가 감소되었습니다. #67603
- 윈도우에서의 COUNT DISTINCT 기능 개선, 퓨즈드 멀티 디스팅트 집계 지원 추가, CTE 생성 최적화가 이루어졌습니다. #67453
- Trino 방언에서
map_agg함수를 지원합니다. #66673 - Shared-data 클러스터에서 물리적 계획 수립 시 LakeTablet 위치 정보를 일괄 조회하여 RPC 호출이 감소되었습니다. #67325
- Shared-nothing 클러스터에서 Publish Version 트랜잭션에 스레드 풀이 추가되어 동시성이 향상되었습니다. #67797
- LocalMetastore 잠금 세분화 최적화로 데이터베이스 수준 잠금이 테이블 수준 잠금으로 변경되었습니다. #67658
- MergeCommitTask 생명주기 관리가 리팩토링되고 작업 취소 지원이 추가되었습니다. #67425
- 자동화된 클러스터 스냅샷에 인터벌 설정을 지원합니다. #67525
- MemTrackerManager에서 미사용
mem_pool항목이 자동으로 정리됩니다. #67347 - Warehouse 유휴 상태 확인 시
information_schema쿼리가 무시됩니다. #67958 - Iceberg 테이블 싱크에서 데이터 분산에 따른 글로벌 셔플 동적 활성화를 지원합니다. #67442
- 커넥터 싱크 모듈에 대한 Profile 메트릭이 추가되었습니다. #67761
- Profile에서 로드 스필 메트릭 수집 및 표시가 개선되어 로컬/원격 I/O가 구분됩니다. #67527
- 반복적인 경고 로그를 방지하기 위해 Async-Profiler 로그 레벨이 Error로 변경되었습니다. #67297
- BE 종료 시 Starlet에 알림을 전송하여 StarMgr에 SHUTDOWN 상태를 보고합니다. #67461
버그 수정
다음 이슈들이 수정되었습니다:
- 하이픈(
-)을 포함하는 합법적인 단순 경로를 지원하지 못하는 이슈. #67988 - JSON 타입을 포함한 그루핑 키에서 집계 푸시다운 발생 시 런타임 오류. #68142
- JSON 경로 재작성 규칙이 파티션 조건자에서 참조된 파티션 컬럼을 잘못 프루닝하는 이슈. #67986
- 통계를 이용한 단순 집계 재작성 시 타입 불일치 이슈. #67829
- 파티션 Join에서 발생하는 잠재적 힙 버퍼 오버플로우. #67435
- 무거운 표현식 푸시다운 시 중복
slot_ids생성. #67477 - 사전 조건 검사 부재로 인한 ExecutionDAG 프래그먼트 연결에서 Division-by-zero 오류. #67918
- 단일 BE에 대한 프래그먼트 병렬 준비로 인한 잠재적 이슈. #67798
- RawValuesSourceOperator에
set_finished메서드 누락으로 연산자가 잘못 종료되는 이슈. #67609 - 컬럼 애그리게이터에서 지원되지 않는 DECIMAL256 타입(정밀도 > 38)으로 인한 BE 크래시. #68134
- Shared-data 클러스터에서 DELETE 작업에 대한 Fast Schema Evolution v2가
schema_key를 요청에 포함하지 않는 이슈. #67456 - Shared-data 클러스터에서 동기식 Materialized View 및 기존 스키마 변경에 대한 Fast Schema Evolution v2 미지원 이슈. #67443
- FE 다운그레이드 중 파일 번들링이 비활성화된 경우 Vacuum이 파일을 잘못 삭제할 수 있는 이슈. #67849
- MySQLReadListener에서의 잘못된 graceful exit 처리. #67917
4.0.4
출시일: 2026년 1월 16일
개선 사항
- 운영자 및 드라이버에 대한 병렬 준비(Parallel Prepare)와 단일 노드 배치 프래그먼트 배포가 지원되어 쿼리 스케줄링 성능이 향상되었습니다. #63956
- 대용량 파티션 테이블에 대해 지연 평가(lazy evaluation)를 사용하여
deltaRows계산이 최적화되었습니다. #66381 - 순차 반복 및 경로 파생 개선으로 Flat JSON 처리가 최적화되었습니다. #66941 #66850
- 그룹 실행에서 메모리 사용량을 줄이기 위해 Spill 연산자 메모리를 더 일찍 해제하는 기능을 지원합니다. #66669
- 문자열 비교 오버헤드를 줄이기 위한 로직이 최적화되었습니다. #66570
GroupByCountDistinctDataSkewEliminateRule및SkewJoinOptimizeRule에서 히스토그램 및 NULL 기반 전략을 지원하여 스큐 탐지 기능이 강화되었습니다. #66640 #67100- Move 시맨틱스를 사용하여 Chunk에서의 컬럼 소유권 관리가 강화되어 Copy-On-Write 오버헤드가 감소되었습니다. #66805
- Shared-data 클러스터에서 FE
TableSchemaService추가 및MetaScanNode업데이트로 Fast Schema Evolution v2 스키마 조회를 지원합니다. #66142 #66970 - 더 나은 리소스 격리를 위해 Multi-Warehouse Backend 리소스 통계 및 병렬성(DOP) 계산을 지원합니다. #66632
- StarRocks 세션 변수
connector_huge_file_size를 통한 Iceberg 분할 크기 설정을 지원합니다. #67044 QueryDumpDeserializer에서 레이블 형식 통계를 지원합니다. #66656- Shared-data 클러스터에서 Full Vacuum 비활성화를 위한 FE 설정
lake_enable_fullvacuum(기본값:false)이 추가되었습니다. #63859 - lz4 의존성이 v1.10.0으로 업그레이드되었습니다. #67045
- 행 수가 0일 때 샘플 타입 카디널리티 추정을 위한 폴백 로직이 추가되었습니다. #65599
array_sort에서 람다 비교자에 대한 Strict Weak Ordering 속성이 검증되었습니다. #66951- 외부 테이블 메타데이터(Delta/Hive/Hudi/Iceberg) 가져오기 실패 시 근본 원인을 표시하는 오류 메시지가 개선되었습니다. #66916
- 쿼리 타임아웃 시 파이프라인 상태를 덤프하고 FE에서 TIMEOUT 상태로 취소하는 기능을 지원합니다. #66540
- SQL 블랙리스트 오류 메시지에서 매칭된 규칙 인덱스가 표시됩니다. #66618
EXPLAIN출력의 컬럼 통계에 레이블이 추가되었습니다. #65899- 정상적인 쿼리 완료(예: LIMIT 도달)에서 "cancel fragment" 로그가 필터링됩니다. #66506
- Warehouse 일시 중단 시 Backend 하트비트 실패 로그가 감소되었습니다. #66733
ALTER STORAGE VOLUME구문에서IF EXISTS를 지원합니다. #66691
버그 수정
다음 이슈들이 수정되었습니다:
- Low Cardinality 최적화에서
withLocalShuffle누락으로 인한DISTINCT및GROUP BY결과 오류. #66768 - Lambda 표현식을 포함한 JSON v2 함수의 재작성 오류. #66550
- 상관 서브쿼리에서 Null-aware Left Anti Join에 Partition Join이 잘못 적용되는 이슈. #67038
- Meta Scan 재작성 규칙에서의 잘못된 행 수 계산. #66852
- 통계로 Meta Scan 재작성 시 Union Node에서 Nullable 속성 불일치. #67051
PARTITION BY와ORDER BY가 없을 때 Ranking 윈도우 함수 최적화 로직으로 인한 BE 크래시. #67094- 윈도우 함수가 있는 Group Execution Join에서의 잘못된 결과. #66441
- 특정 필터 조건에서
PartitionColumnMinMaxRewriteRule의 잘못된 결과. #66356 - 집계 이후 Union 연산에서 잘못된 Nullable 속성 추론. #65429
percentile_approx_weighted에서 압축 파라미터 처리 시 크래시. #64838- 대용량 문자열 인코딩 시 스필(spill) 중 크래시. #61495
- 로컬 TopN 푸시다운 시
set_collector가 여러 번 호출되어 발생하는 크래시. #66199 - LowCardinality 재작성 로직에서의 의존성 추론 오류. #66795
- 로우셋 커밋 실패 시 Rowset ID 누수. #66301
- Metacache 잠금 경합. #66637
- 컬럼 모드 부분 업데이트(Partial Update)와 조건부 업데이트 함께 사용 시 인제스션 실패. #66139
- ALTER 작업 중 태블릿 삭제로 인한 동시 가져오기 실패. #65396
- RocksDB 반복 타임아웃으로 인한 태블릿 메타데이터 로드 오류. #65146
- Shared-data 클러스터에서 테이블 생성 및 Schema Change 시 압축 설정이 적용되지 않는 이슈. #65673
- 업그레이드 중 Delete Vector CRC32 호환성 이슈. #65442
- 클론 작업 실패 후 파일 정리에서의 상태 확인 로직 오류. #65709
INSERT OVERWRITE이후 비정상적인 통계 수집 로직. #65327 #65298 #65225- FE 재시작 후 외래 키 제약 조건이 손실되는 이슈. #66474
- Warehouse 삭제 후 메타데이터 조회 오류. #66436
- 높은 선택도 필터 조건에서 감사 로그 스캔 통계 부정확. #66280
- 쿼리 오류율 메트릭 계산 로직 오류. #65891
- 작업 종료 시 MySQL 연결 누수 가능성. #66829
- SIGSEGV 크래시 시 BE 상태가 즉시 업데이트되지 않는 이슈. #66212
- LDAP 사용자 로그인 중 NPE 발생. #65843
- HTTP SQL 요청에서 사용자 전환 시 부정확한 오류 로그. #65371
- TCP 연결 재사용 중 HTTP 컨텍스트 누수. #65203
- Follower에서 전달된 쿼리에 대한 Profile 로그에서 QueryDetail 누락. #64395
- 감사 로그에서 Prepare/Execute 세부 정보 누락. #65448
- HyperLogLog 메모리 할당 실패로 인한 크래시. #66747
trim함수의 메모리 예약 이슈. #66477 #66428- CVE-2025-66566 및 CVE-2025-12183 보안 취약점. #66453 #66362 #67053
- Exec Group 드라이버 제출에서의 레이스 컨디션. #66099
- Pipeline 카운트다운에서의 use-after-free 위험. #65940
- 큐가 닫힐 때
MemoryScratchSinkOperator가 멈추는 이슈. #66041 - 파일시스템 캐시 키 충돌 이슈. #65823
SHOW PROC '/compactions'에서 잘못된 서브태스크 수. #67209- Query Profile API에서 통합된 JSON 형식이 반환되지 않는 이슈. #67077
- Materialized View 검사에 영향을 미치는
getTable의 부적절한 예외 처리. #67224 - 네이티브 테이블과 클라우드 네이티브 테이블 간
DESC구문의Extra컬럼 출력 불일치. #67238 - 단일 노드 배포에서의 레이스 컨디션. #67215
- 서드파티 라이브러리에서의 로그 누수. #67129
- 인증 실패를 유발하는 REST Catalog 인증 로직 오류. #66861
4.0.3
출시일: 2025년 12월 25일
개선 사항
- STRUCT 데이터 타입에 대한
ORDER BY절을 지원합니다. #66035 - 속성을 포함한 Iceberg 뷰 생성과
SHOW CREATE VIEW출력에 속성 표시를 지원합니다. #65938 ALTER TABLE ADD/DROP PARTITION COLUMN을 사용하여 Iceberg 테이블 파티션 스펙 변경을 지원합니다. #65922- 프레임 윈도우(예:
ORDER BY/PARTITION BY)에서COUNT/SUM/AVG(DISTINCT)집계 최적화 옵션을 지원합니다. #65815 - 단일 문자 구분자에 대해
memchr를 사용하여 CSV 파싱 성능이 최적화되었습니다. #63715 - 네트워크 오버헤드를 줄이기 위해 Partial TopN을 Pre-Aggregation 단계로 푸시다운하는 옵티마이저 규칙이 추가되었습니다. #61497
- Data Cache 모니터링이 강화되었습니다:
- 메모리/디스크 쿼터 및 사용량에 대한 새로운 메트릭이 추가되었습니다. #66168
api/datacache/statHTTP 엔드포인트에 Page Cache 통계가 추가되었습니다. #66240- 네이티브 테이블에 대한 히트율 통계가 추가되었습니다. #66198
- OOM 시나리오에서 빠른 메모리 해제를 지원하도록 Sort 및 Aggregation 연산자가 최적화되었습니다. #66157
- Shared-data 클러스터에서 CN이 필요에 따라 특정 스키마를 가져올 수 있도록 FE에
TableSchemaService가 추가되었습니다. #66142 - 모든 종속 인제스션 작업이 완료될 때까지 히스토리 스키마를 유지하도록 Fast Schema Evolution이 최적화되었습니다. #65799
- 모든 파티션이 필터링되는 것을 방지하기 위해 NULL 파티션 값을 적절히 처리하도록
filterPartitionsByTTL이 강화되었습니다. #65923 - 리셋 시 연관된 MemPool을 클리어하도록
FusedMultiDistinctState가 최적화되었습니다. #66073 - Iceberg REST Catalog에서
ICEBERG_CATALOG_SECURITY속성 검사가 대소문자를 구분하지 않도록 변경되었습니다. #66028 - Shared-data 클러스터에서 StarOS Service ID를 조회하기 위한 HTTP 엔드포인트
GET /service_id가 추가되었습니다. #65816 - Kafka 컨슈머 설정에서 deprecated된
metadata.broker.list가bootstrap.servers로 교체되었습니다. #65437 - Full Vacuum Daemon 비활성화를 위한 FE 설정
lake_enable_fullvacuum(기본값: false)이 추가되었습니다. #66685 - lz4 라이브러리가 v1.10.0으로 업데이트되었습니다. #67080
버그 수정
다음 이슈들이 수정되었습니다:
- 배치 Publish 중
latest_cached_tablet_metadata로 인해 버전이 잘못 건너뛰어지는 이슈. #66558 - Shared-nothing 클러스터에서
CatalogRecycleBin의ClusterSnapshot관련 검사로 인한 잠재적 이슈. #66501 - Spill 작업 중 Iceberg 테이블에 복잡한 데이터 타입(ARRAY/MAP/STRUCT) 쓰기 시 BE 크래시. #66209
- Writer 초기화 또는 초기 쓰기 실패 시 Connector Chunk Sink가 멈추는 이슈. #65951
PartitionChunkWriter초기화 실패 시 close 중 null 포인터 역참조를 발생시키는 Connector Chunk Sink 버그. #66097- 존재하지 않는 시스템 변수 설정이 오류 대신 조용히 성공하는 이슈. #66022
- Data Cache 손상 시 Bundle 메타데이터 파싱 실패. #66021
- 결과가 비어있을 때 MetaScan이 count 컬럼에 0 대신 NULL을 반환하는 이슈. #66010
- 이전 버전에서 생성된 리소스 그룹에 대해
SHOW VERBOSE RESOURCE GROUP ALL이default_mem_pool대신 NULL을 표시하는 이슈. #65982 flat_json테이블 설정 비활성화 후 쿼리 실행 시RuntimeException발생. #65921- Schema Change 후
min/max통계를 MetaScan으로 재작성할 때 Shared-data 클러스터에서 발생하는 타입 불일치 이슈. #65911 PARTITION BY와ORDER BY가 없을 때 ranking window 최적화로 인한 BE 크래시. #67093- 런타임 필터 병합 시 잘못된
can_use_bf검사로 인한 잘못된 결과 또는 크래시. #67062 - 중첩된 OR 조건자에 런타임 bitset 필터를 푸시다운할 때 잘못된 결과 발생. #67061
- DeltaWriter 완료 후 write 또는 flush 작업으로 인한 잠재적 데이터 레이스 및 데이터 손실 이슈. #66966
- 단순 집계를 MetaScan으로 재작성할 때 nullable 속성 불일치로 인한 실행 오류. #67068
- MetaScan 재작성 규칙의 잘못된 행 수 계산. #66967
- 일관되지 않은 캐시된 태블릿 메타데이터로 인해 배치 Publish 중 버전이 잘못 건너뛰어질 수 있는 이슈. #66575
- HyperLogLog 작업에서 메모리 할당 실패에 대한 부적절한 오류 처리. #66827
4.0.2
출시일: 2025년 12월 4일
새로운 기능
- 새로운 리소스 그룹 속성
mem_pool이 도입되었습니다. 여러 리소스 그룹이 동일한 메모리 풀을 공유하고 해당 풀에 대한 통합 메모리 제한을 적용할 수 있습니다. 이 기능은 하위 호환성을 지원합니다.mem_pool을 지정하지 않으면default_mem_pool이 사용됩니다. #64112
개선 사항
- File Bundling 활성화 시 Vacuum 중 원격 스토리지 액세스가 감소되었습니다. #65793
- File Bundling 기능이 최신 태블릿 메타데이터를 캐시합니다. #65640
- long-string 시나리오에 대한 안전성과 안정성이 개선되었습니다. #65433 #65148
- 성능 저하를 방지하기 위해
SplitTopNAggregateRule로직이 최적화되었습니다. #65478 - Iceberg/DeltaLake 테이블 통계 수집 전략이 다른 외부 데이터 소스에 적용되어, 단일 테이블인 경우 통계 수집을 건너뜁니다. #65430
- Data Cache HTTP API
api/datacache/app_stat에 Page Cache 메트릭이 추가되었습니다. #65341 - 단일 대용량 ORC 파일의 병렬 스캔을 가능하게 하는 ORC 파일 분할을 지원합니다. #65188
- 옵티마이저에서 IF 조건자에 대한 선택도 추정이 추가되었습니다. #64962
- FE에서 DATE 및 DATETIME 타입에 대한 hour, minute, second의 상수 평가를 지원합니다. #64953
- 단순 집계를 MetaScan으로 재작성하는 기능이 기본적으로 활성화되었습니다. #64698
- shared-data 클러스터에서 다중 복제본 할당 처리가 개선되어 신뢰성이 향상되었습니다. #64245
- 감사 로그와 메트릭에 캐시 히트율이 노출됩니다. #63964
- 조건자와 조인에 대해 더 정확한 NDV를 제공하기 위해 HyperLogLog 또는 샘플링을 사용하여 히스토그램의 버킷별 고유 값 수를 추정합니다. #58516
- SQL 표준 시맨틱스를 따르는
FULL OUTER JOIN USING을 지원합니다. #65122 - 진단을 위해 옵티마이저 타임아웃 시 메모리 정보를 출력합니다. #65206
버그 수정
다음 이슈들이 수정되었습니다:
- DECIMAL56 mod 관련 이슈. #65795
- Iceberg 스캔 범위 처리 관련 이슈. #65658
- 임시 파티션과 랜덤 버킷에 대한 MetaScan 재작성 이슈. #65617
- 투명 Materialized View 재작성 후 JsonPathRewriteRule이 잘못된 테이블을 사용하는 이슈. #65597
partition_retention_condition이 생성된 컬럼을 참조할 때 Materialized View 새로고침 실패. #65575- Iceberg min/max 값 타이핑 이슈. #65551
enable_evaluate_schema_scan_rule이 true로 설정된 경우 서로 다른 데이터베이스 간information_schema.tables및 views 쿼리 이슈. #65533- JSON 배열 비교 시 정수 오버플로우. #64981
- MySQL Reader가 SSL을 지원하지 않는 이슈. #65291
- SVE 빌드 비호환성으로 인한 ARM 빌드 이슈. #65268
- 버킷된 Iceberg 테이블에 대해 bucket-aware 실행 기반 쿼리가 멈추는 현상. #65261
- OLAP 테이블 스캔에서 메모리 제한 검사 부재로 인한 강건한 오류 전파 및 메모리 안전성 이슈. #65131
동작 변경
- Materialized View가 비활성화되면 시스템이 이에 종속된 Materialized View들을 재귀적으로 비활성화합니다. #65317
- SHOW CREATE 출력 생성 시 원본 Materialized View 쿼리 SQL(주석/포맷팅 포함)을 사용합니다. #64318
4.0.1
출시일: 2024년 11월 17일
개선 사항
- 알려진 변수만 처리하도록 TaskRun 세션 변수 처리가 최적화되었습니다. #64150
- 기본적으로 메타데이터에서 Iceberg 및 Delta Lake 테이블의 통계 수집을 지원합니다. #64140
- bucket 및 truncate 파티션 변환이 있는 Iceberg 테이블의 통계 수집을 지원합니다. #64122
- 디버깅을 위한 FE
/proc프로파일 검사를 지원합니다. #63954 - Iceberg REST 카탈로그에 대한 OAuth2 및 JWT 인증 지원이 강화되었습니다. #63882
- 번들 태블릿 메타데이터 검증 및 복구 처리가 개선되었습니다. #63949
- 스캔 범위 메모리 추정 로직이 개선되었습니다. #64158
버그 수정
다음 이슈들이 수정되었습니다:
- 번들 태블릿 퍼블리싱 시 트랜잭션 로그가 삭제되는 이슈. #64030
- 조인 후 정렬 속성이 재설정되지 않아 조인 알고리즘이 정렬 속성을 보장하지 못하는 이슈. #64086
- 투명 Materialized View 재작성 관련 이슈. #63962
동작 변경
- Iceberg 카탈로그에
enable_iceberg_table_cache속성이 추가되어 선택적으로 Iceberg 테이블 캐시를 비활성화하고 항상 최신 데이터를 읽을 수 있습니다. #64082 INSERT ... SELECT가 계획 전 외부 테이블을 새로고침하여 최신 메타데이터를 읽도록 보장합니다. #64026- lock table 슬롯이 256으로 증가하고 slow-lock 로그에 rid가 추가되었습니다. #63945
- 이벤트 기반 스케줄링과의 비호환성으로 인해
shared_scan이 일시적으로 비활성화되었습니다. #63543 - 기본 Hive 카탈로그 캐시 TTL이 24시간으로 변경되고 사용되지 않는 파라미터가 제거되었습니다. #63459
- 세션 변수와 삽입되는 컬럼 수에 따라 Partial Update 모드가 자동으로 결정됩니다. #62091
4.0.0
출시일: 2025년 10월 17일
Data Lake Analytics
- BE 메타데이터에 대한 통합 Page Cache 및 Data Cache를 구현하고 스케일링을 위한 적응형 전략 채택. #61640
- Iceberg 통계에 대한 메타데이터 파일 파싱을 최적화하여 반복 파싱 방지. #59955
- Iceberg 메타데이터에 대한 COUNT/MIN/MAX 쿼리를 최적화하여 데이터 파일 스캔을 효율적으로 건너뛰어 대규모 파티션 테이블의 집계 쿼리 성능을 크게 향상하고 리소스 소비 감소. #60385
rewrite_data_files프로시저를 통한 Iceberg 테이블 compaction 지원.- Hidden partition이 있는 Iceberg 테이블 생성, 쓰기 및 읽기 지원. #58914
- Iceberg 테이블 생성 시 sort key 설정 지원.
- Iceberg 테이블의 sink 성능 최적화.
- Iceberg Sink가 대용량 연산자 spilling, global shuffle, local sorting을 지원하여 메모리 사용을 최적화하고 작은 파일 문제 해결. #61963
- Iceberg Sink가 Spill Partition Writer 기반 local sorting을 최적화하여 쓰기 효율성 향상. #62096
- Iceberg Sink가 파티션에 대한 global shuffle을 지원하여 작은 파일 추가 감소. #62123
- Iceberg 테이블에 대한 bucket-aware 실행을 강화하여 bucketed 테이블의 동시성 및 분산 기능 개선. #61756
- Paimon 카탈로그에서 TIME 데이터 타입 지원. #58292
- Iceberg 버전을 1.10.0으로 업그레이드. #63667
Security and Authentication
- JWT 인증과 Iceberg REST Catalog가 사용되는 시나리오에서 StarRocks가 후속 데이터 액세스 인증을 위해 REST Session Catalog를 통해 사용자 로그인 정보를 Iceberg로 전달하는 것을 지원. #59611 #58850
- Iceberg 카탈로그에 대한 vended credentials 지원.
- Group Provider를 통해 얻은 외부 그룹에 StarRocks 내부 역할 부여 지원. #63385 #63258
- 외부 테이블 새로 고침 권한을 제어하기 위해 REFRESH 권한 추가. #63385
Storage Optimization and Cluster Management
- Shared-data 클러스터의 cloud-native 테이블에 대한 File Bundling 최적화를 도입하여 로딩, Compaction 또는 Publish 작업으로 생성된 데이터 파일을 자동으로 묶어 외부 스토리지 시스템에 대한 고빈도 액세스로 인한 API 비용 감소. File Bundling은 v4.0 이상에서 생성된 테이블에 대해 기본적으로 활성화됨. #58316
- 사용자가 INSERT, UPDATE 및 DELETE 작업의 원자적 제출을 제어할 수 있도록 Multi-Table Write-Write Transaction 지원. 트랜잭션은 Stream Load 및 INSERT INTO 인터페이스를 지원하며 ETL 및 실시간 쓰기 시나리오에서 테이블 간 일관성을 효과적으로 보장. #61362
- Routine Load에 대한 Kafka 4.0 지원.
- Shared-nothing 클러스터의 Primary Key 테이블에 대한 전문 역색인 지원.
- Aggregate 테이블의 aggregate key 수정 지원. #62253
- 카탈로그, 데이터베이스, 테이블, 뷰 및 Materialized view 이름에 대한 대소문자 구분 없는 처리 활성화 지원. #61136
- Shared-data 클러스터에서 Compute Node 블랙리스트 지원. #60830
- 글로벌 연결 ID 지원. #57256
- 복구 가능한 삭제된 메타데이터를 표시하기 위해 Information Schema에
recyclebin_catalogs메타데이터 뷰 추가. #51007
Query and Performance Improvement
- DECIMAL256 데이터 타입을 지원하여 정밀도 상한을 38비트에서 76비트로 확장. 256비트 스토리지는 고정밀 금융 및 과학 컴퓨팅 시나리오에 더 나은 적응성을 제공하며 매우 큰 집계 및 고차 연산에서 DECIMAL128의 정밀도 오버플로 문제를 효과적으로 완화. #59645
- 기본 연산자의 성능 개선. #61691 #61632 #62585 #61405 #61429
- JOIN 및 AGG 연산자의 성능 최적화. #61691
- [Preview] 사용자가 쿼리 플랜을 쿼리에 바인딩할 수 있도록 SQL Plan Manager 도입으로 시스템 상태 변경(주로 데이터 업데이트 및 통계 업데이트)으로 인한 쿼리 플랜 변경을 방지하여 쿼리 성능 안정화. #56310
- Partition-wise Spillable Aggregate/Distinct 연산자를 도입하여 정렬된 집계 기반의 원래 Spill 구현을 대체하여 복잡하고 높은 카디널리티의 GROUP BY 시나리오에서 집계 성능을 크게 향상하고 읽기/쓰기 오버헤드 감소. #60216
- Flat JSON V2:
- 테이블 수준에서 Flat JSON 구성 지원. #57379
- V1 메커니즘을 유지하면서 페이지 및 세그먼트 수준 인덱스(ZoneMaps, Bloom filters), late materialization을 사용한 조건자 pushdown, 딕셔너리 인코딩, low-cardinality 글로벌 딕셔너리 통합을 추가하여 JSON 컬럼 스토리지를 강화하여 실행 효율성을 크게 향상. #60953
- STRING 데이터 타입에 대한 적응형 ZoneMap 인덱스 생성 전략 지원. #61960
- 쿼리 관찰성 강화:
- EXPLAIN ANALYZE 출력을 최적화하여 가독성을 높이기 위해 그룹 및 연산자별로 실행 메트릭 표시. #63326
- QueryDetailActionV2 및 QueryProfileActionV2가 JSON 형식을 지원하여 FE 간 쿼리 기능 향상. #63235
- 모든 FE에서 Query Profile 정보 검색 지원. #61345
- SHOW PROCESSLIST 문이 Catalog, Query ID 및 기타 정보 표시. #62552
- 쿼리 큐 및 프로세스 모니터링 강화로 Running/Pending 상태 표시 지원. #62261
- Materialized view 재작성이 원본 테이블의 분산 및 sort key를 고려하여 최적 Materialized view 선택 개선. #62830
Functions and SQL Syntax
다음 함수들이 추가되었습니다:
bitmap_hash64#56913bool_or#57414strpos#57278to_datetime및to_datetime_ntz#60637regexp_count#57182tokenize#58965format_bytes#61535encode_sort_key#61781column_size및column_compressed_size#62481
다음 구문 확장을 제공합니다:
- CREATE ANALYZE FULL TABLE에서 IF NOT EXISTS 키워드 지원. #59789
- SELECT에서 EXCLUDE 절 지원. #57411
- 집계 함수에서 FILTER 절을 지원하여 조건부 집계의 가독성 및 실행 효율성 향상. #58937
Behavior Changes
- Materialized view 매개변수
auto_partition_refresh_number의 로직을 조정하여 자동 갱신 또는 수동 갱신에 관계없이 갱신할 파티션 수를 제한. #62301 - Flat JSON이 기본적으로 활성화됨. #62097
- 시스템 변수
enable_materialized_view_agg_pushdown_rewrite의 기본값이 true로 설정되어 Materialized view 쿼리 재작성에 대한 aggregation pushdown이 기본적으로 활성화됨. #60976 - 해당 데이터에 더 잘 맞도록
information_schema.materialized_views의 일부 컬럼 타입 변경. #60054 split_part함수가 구분 기호가 일치하지 않을 때 NULL 반환. #56967- CTAS/CREATE MATERIALIZED VIEW에서 고정 길이 CHAR를 STRING으로 대체하여 잘못된 컬럼 길이 추론을 방지하여 Materialized view 갱신 실패를 방지. #63114 #62476
- Data Cache 관련 설정이 단순화됨. #61640
datacache_mem_size및datacache_disk_size가 이제 유효함.storage_page_cache_limit,block_cache_mem_size,block_cache_disk_size는 더 이상 사용되지 않음.- Hive 및 Iceberg 메타데이터 캐시에 사용되는 메모리 리소스를 제한하기 위해 새로운 카탈로그 속성(Hive용
remote_file_cache_memory_ratio, Iceberg용iceberg_data_file_cache_memory_usage_ratio및iceberg_delete_file_cache_memory_usage_ratio) 추가하고 기본값을 0.1(10%)로 설정. 메타데이터 캐시 TTL을 24시간으로 조정. #63459 #63373 #61966 #62288 - SHOW DATA DISTRIBUTION이 이제 동일한 bucket 순서 번호를 가진 모든 Materialized index의 통계를 병합하지 않음. Materialized index 수준의 데이터 분산만 표시. #59656
- 자동 bucket 테이블의 기본 bucket 크기가 4GB에서 1GB로 변경되어 성능 및 리소스 활용도 향상. #63168
- 시스템이 해당 세션 변수와 INSERT 문의 컬럼 수를 기반으로 Partial Update 모드를 결정. #62091
- Information Schema의
fe_tablet_schedules뷰 최적화. #62073 #59813 TABLET_STATUS컬럼을SCHEDULE_REASON으로,CLONE_SRC컬럼을SRC_BE_ID로,CLONE_DEST컬럼을DEST_BE_ID로 이름 변경.CREATE_TIME,SCHEDULE_TIME및FINISH_TIME컬럼의 데이터 타입이 DOUBLE에서 DATETIME으로 변경됨.- 일부 FE 메트릭에
is_leader레이블이 추가됨. #63004 - Microsoft Azure Blob Storage 및 Data Lake Storage Gen 2를 객체 스토리지로 사용하는 Shared-data 클러스터는 v4.0으로 업그레이드한 후 Data Cache 실패가 발생함. 시스템이 캐시를 자동으로 다시 로드함.
4.0.0-RC
출시일: 2025년 9월 9일
데이터 레이크 분석
- BE 메타데이터용 통합 페이지 캐시와 데이터 캐시를 도입하고, 적응형 스케일링 전략을 채택했습니다. #61640
- 반복적인 구문 분석을 방지하기 위해 Iceberg 통계에 대한 메타데이터 파일 구문 분석을 최적화했습니다. #59955
- 데이터 파일 스캔을 효율적으로 건너뛰어 Iceberg 메타데이터에 대한 COUNT/MIN/MAX 쿼리를 최적화하여 대규모 분할 테이블에서 집계 쿼리 성능을 크게 향상시키고 리소스 소비를 줄였습니다. #60385
rewrite_data_files프로시저를 통해 Iceberg 테이블의 압축을 지원합니다.- 숨겨진 파티션이 있는 Iceberg 테이블의 생성, 쓰기 및 읽기를 지원합니다. #58914
- Paimon 카탈로그에서 TIME 데이터 타입을 지원합니다. #58292
보안 및 인증
- JWT 인증 및 Iceberg REST 카탈로그를 사용하는 시나리오에서 StarRocks는 REST 세션 카탈로그를 통해 Iceberg에 사용자 로그인 정보를 전달하여 후속 데이터 액세스 인증을 지원합니다. #59611 #58850
- Iceberg 카탈로그의 벤디드 자격 증명을 지원합니다.
스토리지 최적화 및 클러스터 관리
- 공유 데이터 클러스터의 클라우드 네이티브 테이블에 대한 파일 번들링 최적화를 도입하여 로드, 압축 또는 게시 작업으로 생성된 데이터 파일을 자동으로 번들링함으로써 외부 저장 시스템에 대한 고빈도 액세스로 인한 API 비용을 줄입니다. #58316
- Routine Load를 위한 Kafka 4.0을 지원합니다.
- 공유 없는 클러스터의 프라이머리 키 테이블에서 전체 텍스트 역색인을 지원합니다.
- 카탈로그, 데이터베이스, 테이블, 뷰 및 구체화된 뷰의 이름에 대한 대소문자 구분 없는 처리를 활성화하는 것을 지원합니다. #61136
- 공유 데이터 클러스터에서 컴퓨트 노드의 블랙리스트 설정을 지원합니다. #60830
- 글로벌 연결 ID를 지원합니다. #57276
쿼리 및 성능 개선
- DECIMAL256 데이터 타입을 지원하여 정밀도의 상한을 38비트에서 76비트로 확장합니다. 256비트 스토리지는 고정밀 금융 및 과학 컴퓨팅 시나리오에 대한 적응성을 향상시키며, 매우 큰 집계와 고차 연산에서 DECIMAL128의 정밀도 오버플로우 문제를 효과적으로 완화합니다. #59645
- JOIN 및 AGG 연산자의 성능을 최적화했습니다. #61691
- [미리보기] SQL 계획 관리자를 도입하여 사용자가 쿼리에 쿼리 계획을 바인딩할 수 있게 함으로써 시스템 상태 변경(주로 데이터 업데이트 및 통계 업데이트)으로 인한 쿼리 계획 변경을 방지하여 쿼리 성능을 안정화합니다. #56310
- 파티션별 스필러블 집계/고유 연산자를 도입하여 정렬된 집계를 기반으로 한 기존의 스필 구현을 대체함으로써 복잡하고 높은 카디널리티 GROUP BY 시나리오에서 집계 성능을 크게 향상시키고 읽기/쓰기 오버헤드를 줄입니다. #60216
- Flat JSON V2:
- 테이블 레벨에서 Flat JSON 구성을 지원합니다. #57379
- V1 메커니즘을 유지하면서 페이지 및 세그먼트 수준 인덱스(ZoneMaps, Bloom 필터), 지연 구체화가 있는 조건자 푸시다운, 사전 인코딩 및 낮은 카디널리티 글로벌 사전 통합을 추가하여 JSON 컬럼형 스토리지를 향상시켜 실행 효율성을 크게 높입니다. #60953
- STRING 데이터 타입에 대한 적응형 ZoneMap 인덱스 생성 전략을 지원합니다. #61960