개요
StarRocks 3.5의 주요 신기능을 소개하는 웨비나입니다. 최적화된 스토리지 개선, 머티리얼라이즈드 뷰 향상, 데이터 레이크 분석 최적화, 멀티 스테이트먼트 트랜잭션 지원, 보안 통합 등 다양한 기능이 포함되어 있습니다. StarRocks는 실시간 분석 시스템으로 10초 이내의 데이터 신선도를 제공하며, Share Nothing, Share Data, Open Lake House 세 가지 배포 방식을 지원합니다.
주요 내용
1. 최적화된 스토리지 개선
Shared Data Cluster Snapshot 기능은 재해 복구 솔루션으로, 몇 분 내에 클러스터를 복구하고 다른 클러스터로 마이그레이션할 수 있습니다. Batch Ingestion with Load Spill은 메모리가 제한된 환경에서도 작은 파일 문제를 방지합니다. Partition Merging은 히스토리 파티션을 병합하여 메타데이터 오버헤드를 줄이고 쿼리 계획 속도를 향상시킵니다. Partition TTL은 조건에 따라 파티션을 자동으로 만료시켜 스토리지와 운영 부담을 줄입니다.
2. 머티리얼라이즈드 뷰 향상
다중 컬럼 파티션 표현식을 지원하여 더 유연한 파티셔닝이 가능합니다. 파티션 레벨 TTL 기능으로 핫 데이터만 유지하고 오래된 파티션은 자동으로 제거됩니다. 통계 수집 개선으로 더 나은 쿼리 계획이 가능하며, Apache Iceberg 테이블 위에 머티리얼라이즈드 뷰를 생성하여 StarRocks 스토리지 포맷의 이점을 활용할 수 있습니다.
3. 데이터 레이크 분석
저카디널리티 최적화 기능은 딕셔너리 인코딩을 사용하여 스트링 필드 처리 시 2-4배 성능 향상을 제공합니다. Apache Iceberg에서 StarRocks는 TPC-DS 1TB 기준으로 Trino보다 거의 7배 빠릅니다. 딕셔너리는 자동으로 샘플링되고 비동기적으로 업데이트되어 사용자에게 투명하게 작동합니다.
4. 멀티 스테이트먼트 트랜잭션
BEGIN, COMMIT, ROLLBACK을 지원하여 ETL 워크로드에 유용합니다. 여러 INSERT INTO 명령을 원자적으로 실행하고, 실패 시 일괄 롤백이 가능합니다. 데이터 웨어하우스 레이어링과 데이터 변환 작업에 적합합니다.
5. 보안 통합
LDAP, JWT, OAuth 등 엔터프라이즈급 인증 메커니즘을 지원합니다. 인증 체인을 구성하여 여러 인증 방식을 순차적으로 시도할 수 있습니다. 그룹 기반 권한 부여와 Apache Ranger 같은 외부 권한 제공자 통합을 지원합니다.
6. 기타 업데이트
JDK 버전이 11에서 17로 업그레이드되었습니다. MySQL SSL 암호화를 지원하고, Iceberg 뷰와 중첩 네임스페이스를 지원합니다.
핵심 포인트
StarRocks 3.5는 스토리지, 머티리얼라이즈드 뷰, 데이터 레이크 분석, 트랜잭션, 보안 측면에서 주요 개선이 이루어졌습니다. 특히 저카디널리티 최적화로 데이터 레이크 쿼리 성능이 2-4배 향상되었고, Apache Iceberg에서 Trino 대비 7배 빠른 성능을 제공합니다. 파티션 TTL과 머티리얼라이즈드 뷰를 결합하면 핫 데이터만 효율적으로 관리하면서 더 빠른 쿼리 성능을 달성할 수 있습니다.
Q&A
쿼리 동시성 향상을 위해서는 데이터 스큐를 주의하고 모든 캐싱 기능을 활성화해야 합니다. 클러스터 스냅샷은 문서에서 "cluster snapshot"을 검색하면 자세한 정보를 확인할 수 있습니다. 글로벌 딕셔너리 자동 생성은 Parquet 파일을 지원하며, 다른 포맷 지원 여부는 추가 확인이 필요합니다.
참고 자료
- Cluster Snapshot 문서
- 저카디널리티 최적화 PR - Parquet 형식의 Hive/Iceberg 테이블에서 2-4배 성능 향상