比对结论
仅从当前能看到的数据中,相比于doris,starRocks在性能方面具备优势,且更新频率高(降低维护成本)。
目标诉求
- 并发性不能太低——相比于clickhouse不到100的QPS
- 支持大表关联——降低数据清洗的压力,因为oneId有可能实时变化
- 集群化——需要有一定扩展能力,以针对不同量级客户
- 可维护——C++底层代码
背景说明
doris前身是百度的palo,因为名字重复,开源的时候换成doris。
starRocks只是从doris的一个分支进行演进。
从人员角度,两者原来是一个团队,后续出现分歧(预计两个问题,一是国内对开源内容不够重视,二是有些人想要商业化)。
starRocks最开始出来的时候叫dorisDB,且文档中有doris相关内容,使很多人误以为是doris的商业版。后续才改名为starRocks。因为上述不道德的行为,导致风评比较差,所以社区的活跃主要是国内。
两者的开源协议不一致,doris是Apache license,starRocks是Elastic License。这就意味着starRocks是部分开源,说是为了防止云厂商的白嫖,但从这一路操作看,未来大概率会商业版。
doris的社区相关活跃的范围更大,但实际活跃度也待定。
推测演进速度,starRocks由于未来考虑商业化,短期内速度一定是更快的,但是否能坚持很久。
doris短期内可能是慢的,但大概率可以维持很久。
目标需求
- 具备一定并发能力且能实现大表关联的数据库
- 版本更新相对频繁,这样可以有效解决BUG
潜在风险
- starRocks有可能会商业化,导致在某些版本之后有收费的风险
- 性能是基于c++开发的,咱们无法修改,doris更新慢的问题就会暴露
信息比对
项目 | 性能 | github star | 稳定性 | 演进效率 | 协议 |
---|---|---|---|---|---|
Doris | 中 | 10.4k | 稳定 | 慢 | Apache license |
starRocks | 优 | 7k | 相对稳定 | 快 | Elastic License |
性能比对
由于starRocks在doris的社区投票中投入反对票,导致向量化优化推迟合入版本,这就是为什么doris的1.X版本性能是低于starRocks的。
starRocks 3.0 是2023 年 4 月 28 日发布。
doris 2.0 是2023 年 8 月 11 日发布。
正常来说是用doris 2.X 和 starRocks 3.X 进行比对。
但由于doris的2.X发布不久,无法找到直接和starRocks 3.X的性能比对。
计划考虑找doris 2.X 和 doris 1.2X的比对,和doris 1.2X和starRocks 3.X的性能比对。
场景 | doris 1.2X | doris 2.X | starRocks 3.X |
---|---|---|---|
宽表场景盲测 | 1 | 10 | |
多表关联场景盲测 | 1 | 13 | |
行为分析场景中并发查询 | 1 | 5-90 | |
点查询并发能力 | 1 | 20 | |
日志检索分析 | 1 | 10 | |
数据写入 | 1 | 20 |
参考文档
Release 2.0.0 - Apache Doris
文件读取比较
2023年10月1日数据湖测试 – 沧海月明
TPCH 性能测试
Doris 1.2.0 / StarRocks-native-3.0
starRocks略胜,性能大约提升50%
TPCH 性能测试
doris版本提升测试
滑动验证页面
旧版本性能比对
我们对 Apache Doris 0.14、StarRocks 2.4.1 在同等集群规模下,进行了一些基准测试验证( SSB、SSB-FLAT、SSB-低基数 Query、TPC-H 100G 的标准测试集)
效率提升 10 倍!达达基于 StarRocks 极速统一的智能配送再升级_数据_Apache_能力
OceanBase 社区