0


不负责任的聊聊Apache Doris

本文总计 1500 字,预计阅读需要 5-7 分钟

本来下一篇的计划是想写写特征平台的,不过昨天在数仓群里面看到一个瓜,所以出来曾个热度吧。

事情的起因是这样,Dorisdb宣布全部开源,并且改名为StarRocks后Apache Doris的官方立刻就发布了声明,具体的内容在这里,有兴趣的可以自行查看。

为此我们决定把我们的核心产品DorisDB升级为StarRocks,并全面开源
StarRocks,公众号:StarRocksStarRocks开源——携手未来,星辰大海!

那么 StarRocks 以及 DorisDB 是什么?2020 年 2 月,百度 Doris 团队的个别同学离职创业,基于 Apache Doris 之前的版本做了自己的商业化闭源产品 DorisDB ,这就是 StarRocks 的前身。
Apache Doris,公众号:ApacheDoris你们想知道的一切,都在这里了。

根据声明我们知道了这俩到底有什么关系?

官方的声明我们可以看到,大意就是一部分的Doris开发人员离职后,成立了一家公司然后继续以他们的方式开发这个产品并且起了新的名字叫DorisDB,并将这个产品闭源和商业化,但是里面的代码很多都还是使用的Apache的Doris的,知乎的这篇帖子写的很详细,有兴趣吃瓜的小伙伴可以去看看:

https://zhuanlan.zhihu.com/p/408727834

以下是一个截图,为什么要截这张图后下面会细说:

上面的图我们看到大部分的贡献者都是百度的人,所以这个项目也像介绍的那样是百度内部项目然后开源的(这里应该还要感谢陆奇老师),并且这里可以看到这个项目基本上可以说是百度控制的。

随后我又看到这了这边文章:

https://www.zhihu.com/question/485718919

里面说到关于代码引用的问题,于是我还特意的看了一下,CK和Apache Doris都是以Apache License 2.0作为开源的许可协议的,协议本身是没有要求不能引用代码的,但是Apache License的一个最大的特点就是,在延伸的代码中(修改和有源代码衍生的代码中)需要带有原来代码中的协议,也就是说代码必须要使用Apached的License,这个对于StarRocks 使用Elastic License 2.0就是非常不正确的行为了,其实可以说是当了婊子还要立个牌坊,想想当年FFmpeg的羞耻墙上暴风影音、QQ影音、KMP都在其列。

咱们首先抛开技术,看一看这里背后的利益又是什么?

做大数据的都知道,砖厂控制spark,ververica(阿里)控制flink,在这些主流的项目中你想提交一个fix或者feature,甚至是想成为一个contributer基本上是不可能的,因为这些项目的pmc基本上都是被这些厂商牢牢的控制的,虽然spark和flink在一些方面是没有可比性的,但是阿里还是要强推flink的一个原因就是为了摆脱对其他商业公司的依赖,你可以想象,某天spark的最新版突然收费了(就像CDH一样,哈)那你如何是好,或者说当你想给spark增加一个feature,但是人家的pmc不同意,那怎么办?没关系啊,我现在有flink,我先把flink加上这个功能,大家用起来还很开心,spark如果不加的话那就等着被淘汰(淘汰可能严重了,但是至少会被骂,是吧)。虽然是竞争的关系,但是竞争中成长,对于我们使用者来说是一件好事。

反观这个开源事件其实也是这个道理,看那个截图就知道基本上都是百度的人在参与,其实就是一个就是在争夺这个相似项目的主导权,一样的代码,不同的功能,如果不是官方出来说话,谁知道谁先谁后呢?其实咱们都不是内部人,里面的关系说不清,咱们也没法做判断,不是么。

这里我引用上面一个叫“痕迹”的大佬说的话,我个人觉得他说的有可能是真正的原因。

抛开这件事的谁对谁错,作为使用的用户对我们有什么影响呢?

我们当热闹看就行了,因为对于我们使用者来说其实影响的还真不大。我其实还是希望Apache Doris可以像StarRocks 那样增加Hive外表的功能,因为在我看来Hive的唯一作用就是元数据管理,虽然我可以不用Hive处理数据,但是如果你是数据表的话,就必须用Hive来管理(上一篇即席查询的文章我也说了CK可以用hdfs引擎替代,就是有点麻烦),StarRocks 至于宣传所说的那样速度快xx倍,那肯定是不可能的,其实查询最大的速度差距还是在IO上,另外就是非Apache开源的我还真不太敢用,ES现在用的都很少了。

最后我们该如何选择?

不用担心,该选这么选什么就好了,我还是继续我的观点,如果有Hadoop集群,那么presto,impala,甚至CK都是可以选的。如果用了KUDU,还是选impala吧。另外如果选CK的话还要使用后其他的系统作为补充,因为CK无法hold住离线和复杂查询。

如果你是新建平台,预计3-5年内的数据量不大(500TB以内,甚至1PB)那么Doris和GP都是一个可选项。Doris我没详细测试过,但是GP对于这量级还是可以处理的,而且主要的是这两个开箱即用,安装好了直接用就ok了,虽然后续扩充会有点麻烦,但是好在运维要求要求低,可以快速上手。

喜欢就关注一下吧:
点个在看你最好看

标签: MPP 数据仓库

“不负责任的聊聊Apache Doris”的评论:

还没有评论