Professional Documents
Culture Documents
Introduction To StarRocks
Introduction To StarRocks
Introduction To StarRocks
2022-11
StarRocks
Product Positioning
Modern Data Infrastructure 3
StarRocks in the big data stack 4
实时⻛控、审计 ⼀线业务⼈员绩效考核分析
实时监控
⽤户画像 订单分析
精准营销 实时库存
客群圈选 销售预测
⻛险预警 订单追踪
渠道分析 营销分析
StarRocks in the cloud 8
• ClickHouse : 利⽤向量化技术实现单表的极致性能
• Druid:实时导⼊,实时聚合,解决实时⾼并发 • StarRocs 多表极速性能—> 统⼀OLAP
• Kylin:通过预聚合实现离线场景查询加速
• Presto : Adhoc即席查询,直接分析外部数据源
11
• 云⼚商:基于对象存储S3/OSS/COS构建的统⼀存储
• Iceberg/Hudi: ⽀持Upsert,Time travel等⾼级特性的存储
• ⽤户:能够把所有结构化、半结构、⽆结构数据存进去
• 更低的存储成本,更⾼可靠性:从HDFS 到对象存储
• 更好的Table format:⽀持ACID事务,⽀持Schema evolution
• 更好的File format:⽀持半结构化map、Struct、Json,⽀持嵌套结构。
• 统⼀的Catalog: 统⼀元数据管理、权限管理、统计信息管理、⼊湖管理
统⼀的数据管理
• 数仓加速:基于数据湖的远程IO成本⾼,早期的数据湖格式不成熟,索引不完善,查询
性能需要提升,数据湖的底座针对吞吐优化,关注低成本和⾼可靠,不适应⾼性能需
求。
• 实时分析:基于数据湖的存储实时性不够,⽆法解决秒级实效性的问题
• ⾼并发查询:对于⾼并发查询,我们需要降低数据的扫描量,⼀种是聚合类查询需要通
过预计算的⼿段来提⾼并发,⼀种是点查需要有细粒度的数据裁剪和索引优化来提升。
湖上建OLAP的模式解决了新问题
但是带来了额外的数据管理成本
LakeHouse 13
• DataBricks提出了
Lakehouse概念,并且能够
在湖上分析达到
WareHouse的效果
• 可惜核⼼的向量化Photon
引擎并不开源
StarRocks 14
• Open Architecture
• 查询引擎可以直接查询各
类表格式和数据格式
• Catalog 元数据管理
• ⽀持HDFS和对象存储
• ⾃有存储做为实时⾼并发
场景的补充
• 物化视图透明加速,不增
加额外的管理成本
Row Data
User case — Airbnb : Metric layer — Minerva
Denormalize compute
cost is very high Background and Pain Points
Minerva 是 Airbnb 内部的统⼀指标平台
DB Exports Dimension Table
Denormalized 愿景: ”Define metrics once, use them
Wide Table
everywhere"
…
Logging Fact Table
Fact Table
只有不到20%的数据需要预聚合以及宽表
打平,80%都直接⽤星形模型计算
提升数据freshness 降低 TCO
场景
痛点
• 之前没有合适的解决⽅案
解决⽅案
• 使⽤Primary key来解决实时更新问题
• 从kafka同步数据 sub-minute延迟.
• 复杂多表关联 sub-second 延迟好.
• Alerting can be achieved by just running a SQL query regularly.
User case — 腾讯游戏
场景
• 400+ 游戏内数据和⽤户⾏为数据
• 运营实时数据分析
痛点
• 之前尝试过使⽤ClickHouse + Trino,但是两套系统难以融合
• 使⽤Iceberg + COS 但是查询性能不够满意
• 查询的峰⾕差异⼤,需要弹性来降低成本
解决⽅案
• StarRocks primary key来解决实时更新的问题
• 使⽤K8s operator 来解决了弹性问题
• OLAP 查询和Adhoc 查询性能都得到提升,尤其是多表查询
User case — ⼩红书 user facing analytics
向量化引擎 适合更新的列存引擎
全⾯向量化,极致性能 为实时⽽设计的分析型存储引擎
智能物化视图 资源隔离
⽀持同步更新和异步更新,⾃动改写 ⽀持多租户隔离和多负载管理
25
min 100
max 200
min 500
max 800
• SIMD 指令
• Min/max 索引
• 降低IO • 4-8x 压缩率 • CPU 预取和缓存友好
• 前缀索引
• SIMD 过滤 • ⾃适应编码 • 分⽀预测优化
• ⼆级索引
SSB is the most famous flat table benchmark for analytical databases.
StarRocks got 1.8x faster than ClickHouse, and 2.2x with bitmap index.
Benchmark report link. Testing tools download link.
CBO 27
Benchmark — TPC-DS vs Cloud data warehouse
• 查询
• 利⽤CBO和向量化查询性能3x提升
• 元数据
• ⽀持Multi-catalog,⽆缝对接HMS/DLF/GLUE
• 湖格式
• 数据格式
• ⽀持标准的Parquet/Orc/CSV
• 延迟物化,IO合并
• 弹性
• ⽀持K8s 弹性部署
Benchmark — TPC-H vs Lakehouse
• 为实时导⼊场景下查询性能优化的存储引擎
• Delete-and-insert 模式的优势
• 对⽐Merge-on-read: 避免sort merge的开销,不存在频繁写⼊下读放⼤的问题
• 对⽐ Copy-on-write: 避免过多的写放⼤
• 对⽐ Delta store: 能够充分利⽤⼆级索引
32
• 物化视图有两层含义
• “物化”通过额外的存储空间来缓存建模的中间结果,通
过复⽤计算完成的物化结果来实现加速。
• “视图”是强调逻辑语义,可以对上层提供统⼀的
schmea,屏蔽复杂性,⽅便权限管理。
• 根据数仓分层逻辑对应
• 单表物化视图 / 多表物化视图 / 外表物化视图
• ⽀持更新和删除
• ⽀持⾃动查询改写,查询加速场景不需要修改SQL可以适
配BI等⾃动⽣成SQL场景
33
• ⽀持多租户
• 资源隔离单位
• CPU / 内存 / IO线程
• 并发/Scanrows/Scanbytes
• 查询调度
• Pipeline引擎的⽤户态协程调度
• 查询分类
• ⽤户/ Role/ IP / 查询类型
StarRocks
Future Roadmap
StarRocks 3.0 LakeHouse
StarRocks 3.0 Unified Streaming & Batching
StarRocks 3.0 Cloud native
End
谢谢观看
THANKS FOR YOUR WATCHING
公众号:StarRocks