카테고리
Version
생성자
U
Untitled- 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.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
함수 및 SQL 구문
- 다음 함수가 추가되었습니다:
bitmap_hash64#56913bool_or#57414strpos#57287to_datetime및to_datetime_ntz#60637regexp_count#57182tokenize#58965format_bytes#61535- 다음과 같은 구문 확장을 제공합니다:
- CREATE ANALYZE FULL TABLE에서 IF NOT EXISTS 키워드를 지원합니다. #59789
- SELECT에서 EXCLUDE 절을 지원합니다. #57411
- 집계 함수에서 FILTER 절을 지원하여 조건부 집계의 가독성과 실행 효율성을 향상시킵니다. #58937