Apache Flink往事:2023得大奖,社区分裂!!!以及八卦。。。
本文首发微信公众号:飞总聊IT
2023年的SIGMOD System Award给了Apache Flink。
这是意料中的事情。
2022年的奖给了Apache Spark。今年给Flink不吃惊。
2023年还有一件大事,Apache Kafka背后的公司Confluent,收购了一下叫做Immerok的德国公司。
这个收购飞总以前写过。感兴趣的可以去看看。
这个收购让Confluent一下子拥有了很多个Apache Spark的PMC成员,很大程度上造成了一个分裂的社区。
今天我们就简单聊聊Flink。
2014年的VLDB,在杭州举行。
那年我印象深刻的keynotes有两个。
一个是讲SAP HANA的,那位老兄正好2009年罗德岛的SIGMOD给了keynote说要做HANA,2014年VLDB说我们做成功了。
另外一个就是官宣了Apache Flink。
Flink的起步是克隆了一个叫做Stratosphere的项目开始的,这个项目起步很早,2009年就开始了。但是没什么影响力。
Flink聚焦在大数据流计算,代表的论文有很多,今天就不讲技术了。
在Flink的早期,Spark和Flink互相撕逼的事情也发生过,比如说Spark的co-founder Reynold Xin就公开拿出代码来表示,到底是不是Flink抄袭了Spark的代码。
一开始Databricks也是紧张的,因为RDD的底座决定了Spark很难从架构上改成Flink这样的实现。
所以Spark一边开始搞mini-batch,micro-batch,一边宣传,客户并不需要那么低的latency。Spark也够用了。
当然,后来Databricks发现对手不扛打,很快就没有在Spark Streaming上继续投入大量资源了。
但是实际情况怎么样呢?以我司为例,有很多应用确实Spark Streaming就够了,但是也有一些应用必须要上Apache Flink才行。
所以Databricks说的,只能用一句英语来形容:it depends。翻译成中文就是,也对也不对。
说到Flink,阿里巴巴就是绕不过的一个公司,而花名叫量仔的蒋晓伟,更是绕不过的一个人。
当时蒋晓伟在领导搜索团队,需要一个流计算的引擎。那个时候阿里内部,已经有一些流计算引擎。
比如说花名纪君祥的封仲淹就用Java重新写了一遍Apache Storm,叫做JStorm。
又比如说,著名的Maxcompute团队搞了一个叫Glacier的东西。这个Glacier支撑了2014-2016三年的双十一流计算相关业务。
蒋晓伟相中了Flink,然后以自己多年在微软SQL Server和Facebook的经验,魔改了Flink的架构,解决了很多Flink架构上的问题,并且把阿里巴巴魔改版的Flink叫做Blink。
这意思就是Flink太慢,魔改的版本一眨眼就行了,快就一个字。
蒋晓伟后来在Flink Forward上有个讲座,就是讲阿里巴巴怎么魔改成Blink的。那个讲座讲得非常精彩,我公众号之前也详细写过那个讲座的内容。有兴趣的可以找我之前的文章看。
接下来,阿里巴巴团队就开始要主动给Flink团队做贡献。但是,这个事情并没有那么美好。
从德国的Flink团队来看,你主动和我做贡献是一回事,社区到底听我的还是听你的就是另外一回事了。
即使我们德国人的工程水平没有美帝伯克利AMP Lab的人牛逼,那也不是你阿里巴巴这些外来的人指指点点就行的啊。
面对项目主导权的问题,有段时间,阿里巴巴想把自己的架构推进给整个社区的愿望并不是很顺利。
阿里巴巴内部也发生了一件大事。
这件事情是这样的。阿里的所有streaming项目合并,Blink力拔山兮气盖世,干翻了包括JStorm和Glacier在内的所有竞争对手,成为了唯一的streaming项目。
其他streaming的项目都停止,应用都往Blink迁移。同时,蒋晓伟的领导换成了Maxcompute的负责人周靖人。
在2014,2015, 2016年连续三年,都是Maxcompute的Glacier顶起了双十一的流计算,而2017年却要交给Blink。
三大流项目的合并,没成功历史的Blink胜出,有过往战绩的Glacier被取消。这的确挺有意思的。
而Flink的顶头上司却成了原来Glacier的大老板,这就更有意思了。
Blink的项目在阿里巴巴取得了广泛的成功,一年多以后,Blink的负责人量仔蒋晓伟,却被边缘化了,王峰全面接盘Flink。这就更加有意思了。
这里省略几万字。
那边Flink社区的推进不顺利,可能是因为阿里巴巴内部已经豪赌在Flink上了。然后就发生了著名的撒钱大法。
撒钱大法就是阿里巴巴以9000万欧元收购了Flink背后的德国公司Data Artisans。
收购以后,阿里巴巴就开始主导Apache Flink了,德国公司拿钱以后,阿里巴巴的Blink也很快就整合进了社区。
至于是谁做出了这个收购的决定,那就不是我能知道的信息了。
然后,这家公司就改了一个名字,叫Ververica。自从这家公司被买了以后,Databricks再也没把Apache Flink当一回事。
仔细想起来,Databricks也是挺有远见的,知道被阿里巴巴买走的Flink,确实在商业化方面,没办法再折腾出什么来。
而Ververica被收购以后,一直想做的事情,就是提供云端SaaS的Flink服务,好像进展就特别的慢,4年内也不知道发生了什么。
大概是收购案锁定期到了,原来那些人,也陆陆续续退出了Ververica。
最搞笑的事,Ververica一些人去年出来,新开了一家公司Immerok。而这家公司做的,居然和老东家Ververica一样的业务。
简直不知道说什么了。难道签合同的时候没有反竞争条例吗?
现在Apache Flink的PMC成员很有意思了,很多阿里巴巴的人,还有很多原来从Ververica出去的人。
Ververica里面的人,这几年过去了,居然一个都没有留下来。
我曾经和阿里巴巴的做Flink的人聊过,我表示,这样分裂的社区,对Flink的影响很不好。
对方和我说,没关系啊,我们培养了很多新的PMC member。我仔细一看,是的,培养了很多新的,全是阿里巴巴的。
这做事就很有阿里巴巴风格了。原来的人走出去,我自己的人加进来。
再后来,Immerok又被Confluent给买了。这个事情,就成了开源社区最大的话题了。
一个项目居然能先卖一次,然后再卖一次的。那么阿里巴巴当初买的,到底是什么?买了一个寂寞吗?
不管怎么说,技术上,Apache Flink确实有其独到的地方。但是Apache Flink的商业化,和Apache Spark的商业化,是没办法比的。
一个被买了一次,然后又买了一次的开源项目,和一个已经中国人和外国人分裂的社区,对这个项目的长远发展来看,只能呵呵了。
最后,再宣传一下飞总的ChatGPT朋友圈。飞总的朋友圈聚焦在大模型的技术和商业上,欢迎志同道合的人一起加入学习研究。
微信扫码关注该文公众号作者