2019一开年,阿里巴巴便收购了一家德国数据分析创业公司Data Artisans,交易金额为1.033亿美元。

82010a2b53fd6e305db45107fb4b763b

不熟悉的Data Artisans的朋友,很容易因那些平淡的新闻标题如“阿里巴巴收购德国数据公司”而错过背后的信息。

其实,Data Artisans手里掌握着一项当今为数不多的前沿技术 ——

它的名字,叫做Flink。

bbce9faf38956ef0bca81887487c931f

据了解,目前阿里巴巴很多业务,包括子公司都采用了Flink技术。

这项技术到底有什么魅力,能被阿里如此“宠幸”?并在一开年就迫不及待地拿下?

Flink,阿里的血液

搜索,是像阿里这样的电商获取客户的关键入口,并承载了阿里大部分在线收入。

一个强大的搜索引擎由何造就?

答案是:尽可能为每个用户提供实时相关和准确的结果。

bf2b5773a7441de123eb7882275ae293

而这就牵扯到了当今工业界的一项核心技术——实时计算。

无论是传统的大数据统计还是新兴的人工智能,实时计算的能力都至关重要。

可是,在实时计算的运用上,阿里遇到了大难题:

作为世界上最大的电子商务零售商之一,如何设计出一个低延迟、exactly once、能够支撑足够大体量的复杂实时计算引擎,是一项十分艰巨的任务。

bcd94741f622c976dc7b8a09bfe98c3b

阿里巴巴的高级技术专家王绍翾在一次采访中说道:

“我们当时尝试过很多实时计算工具,什么Spark Stream、Kafka Stream、Storm....都用了,但是都不太符合阿里的需求。

Spark streaming 不是特别适合于做秒级甚至亚秒级的计算;Kafka streaming 很难满足我们对大体量的复杂计算的需求;Storm 又没有批处理能力....

最后,我们发现了Flink,并且惊喜地发现它几乎完美满足了我们所有的需求!”

屏幕快照 2019-04-16 上午11.03.45

Apache Flink 介绍

Flink是一款分布式的计算引擎。

  • 它可以用来做【批处理】,即处理静态的数据集、历史的数据集;
  • 也可以用来做【流处理】,即实时地处理一些实时数据流,实时地产生数据的结果;
  • 还可以用来做一些基于事件的应用,比如说滴滴通过Flink CEP实现实时监测用户及司机的行为流来判断用户或司机的行为是否正当。

Flink的好处还有很多,其中包括:

提供准确的结果(甚至在出现无序或者延迟加载的数据的情况下)、支持容错、支持超大规模运行(在阿里巴巴中作业的state大小超过TB的是非常常见的)、支持exactly-once的一致性语义.....

那么,Flink在阿里的业务中还有哪些应用呢?

Flink的运用场景

接下来,就给大家举2个Flink运用案例。

双11大屏

每年双11阿里都会聚合有价值的数据展现给媒体,GMV大屏是其中之一。

ee845a88d1db31a5a687ee92d86f7d03

整个GMV大屏是非常典型实时计算,每条交易数据经过聚合展现在大屏之上。从DataBase写入一条数据开始,到数据实时处理写入HBase,最后展现在大屏之上,整个过程的链路十分长。

这就需要像Flink这样可以保持精确性、秒级延迟、不卡顿、在一个Job中聚合完成...等高性能的实时计算框架。

实时机器学习

a3679751fad6956c538bc23736514204

机器学习一般有两个重要的组件:Feature 和Model。传统的机器学习使用批计算对Feature的采集和Model的训练,可这样更新频率太低,无法适应数据在不断变化的应用的需求。例如在双11时,商品的价格、活动的规则与平时完全不同,依据之前的数据进行训练得不到最优的效果。

然而,采用了Flink实时收集Feature并训练Model,就能拟合出较为满意的结果。

哪些岗位/公司需要Flink人才?

几乎每个互联网公司都需要掌握实时计算的人才。因为如果没能拥有,就意味着在商业竞争中有被对手赶超甩开的可能。

举个例子,在美国,如AWS、Twitter、Uber.... 等公司,非常青睐具有Flink相关经验的求职者。

b29f21063c55587383e8318cf3ed4df9 7dafa0d78fcec8f535d96e3459435230

而在国内,除了阿里巴巴外,腾讯、字节跳动、美团、饿了吗.... 都在广招有Flink经验的人才。

a6fd972e8a088c7b6ebfd596cf5eba36 a170c0ba67441442629c0b22198a1ebf

哪里可以学?

来Offer人工智能与数据科学强化课程,全新推出 【Apache Flink流数据实时计算】项目:

60e15c55b7ffebe184ba42b7d5a3b521

除此之外,此课程还有多个project供你选择,助你攻破data求职所有职位!