专访阿里巴巴和仲:实时计算的部署与应用

原创
系统
“实时计算的今天,业界都没有一个准确的定义,什么叫实时计算?什么不是?这个概念没必要去纠结。”阿里巴巴资深专家强琦(花名:和仲)对51CTO记者如是说。我们更应该关心的是实时计算的应用场景和未来发展状况。本文中,和仲从实时计算的背景、部署及应用等方面做了详尽的介绍,关注实时计算的朋友们有福啦!一起来看看本文的采访实录吧。

【51CTO原创稿件】“实时计算的今天,业界都没有一个准确的定义,什么叫实时计算?什么不是?这个概念没必要去纠结。”阿里巴巴资深专家强琦(花名:和仲)对51CTO记者如是说。我们更应该关心的是实时计算的应用场景和未来发展状况。本文中,和仲从实时计算的背景、部署及应用及等方面做了详尽的介绍,关注实时计算的朋友们有福啦!一起来看看本文的采访实录吧。

[[82212]] 

以下为采访实录:

51CTO:和仲您好!首先请您做一下自我介绍。

和仲:我是零八年加入阿里巴巴的,之前一直在网易,也是做搜索引擎和分布式系统。到了阿里以后,主要从事搜索,广告,分布式系统方面工作。目前致力于数据交换平台建设,专注实时计算,流计算服务化平台。

51CTO:您是一年前从广告搜索转岗了,现在主要是流计算服务平台的。你们这个平台每个人的职责都分的比较细吗?

和仲:是,肯定是要分的很细。但是太细就会带来组织的效率问题(这是另一个话题),搜索本质上是业务性,而目前的部门是平台性,当然仍然会关注广告搜索,但目前全集团的业务我们都需要支持,它是一个横向支持的部门。比如阿里金融现在业务做的很好,这些业务的数据部分其实都是跑在我们这个事业部,比如计算信用度等等。它使用数据的深度和广度是一般人想象不到的,它怎么去评估?就在我们的平台上。业务用数据的程度决定了我们提供数据服务的广度和深度。用户的需求,业务的需求,需要我们把技术场景不断的细分,通过细分来获取细分场景的技术指标的不断加强。我们的系统,平台需要精细化,所以人的分工也需要精细化,但是我们每个人也需要横向去了解其它系统和平台。

51CTO:你们那边都有实时的数据出来?

和仲:实时的有,但现在不多。其实要看业务的本质要求,比如信用是个长期的累积,很难因为一个瞬时的事件来剧烈影响信用。本身这个业务是不是个实时,那是要业务来看,不是我们来看。我们是一个被别人用的平台,我们去服务业务的。不是说业务都上实时吧,没法做那件事情。你的业务本身就是长期稳定的业务,稳定的态势,就不需要实时数据的特性。如果业务上对数据的实时性有要求,那我们就会服务,就会支撑。当然,实时分为计算的实时和数据的实时。

 51CTO:提到实时计算,它产生的背景是什么?

和仲:业务、市场、用户对互联网产品需求越来越广泛,需要你越来越个性化,越来越实时化。比如说广告,现在我们广告客户想要看刚刚前一分钟的投放效果,如果效果没有达到预期,我们就可以根据实时计算,对后面的营销策略做出及时地调整。比如说“双十一”的促销活动,它就一天。如果当天的营销策略错了,那么前期所有的准备就白费了,一年就玩进去了。

对于这种要看到分钟级的营销策略,比如说我看到用户,今天喜欢买紫色的,赶紧把我的宝贝调整,紫色的图做的更突出。所以它的营销一定是个闭环,营销分析做出决策。之前的决策链条是慢的,当然他希望快了好,现在需要它去做出更实时的数据来,做出更快的市场反应。而业务也是一样的,比如说你是我的好友,你刚刚在淘宝上买了一个东西,我登录后推荐给我这个东西,可能我的点击率就高了。这些东西都是因为业务,而业务又因为用户,其实为了满足客户。客户如果有这种业务上的实时需求,数据更新鲜的话,必然会刺激到,最终我们的技术会延伸出这样细分的场景来。这些都是因为用户有这样的需求。

但从另一个侧面看,技术驱动。比如说手机,原来摄像头,其他的功能都是附属产品,而现在这些app已经是手机的必要功能了。其实还是这样子,还是由用户、业务、产品、系统、技术体系,一层一层下来,只不过是因为有互联网的诞生,导致整个传导过程会比较快。你想不到的,真的想不到。我们十年前上大学的时候,谁知道互联网会如此,原来想要网上购物不可能的事情,就像马云说的,淘宝的伟大在于,你把你的钱交到一个不认识的人手上,并且他也会承诺发货给一个不认识的人,他通过一个不认识的人,送到你家里。这在以前是不可能的,不可想象的一件事情。但就这几年的工夫,相信未来这种技术变革,周期会越来越快。

 

因为链条变化的非常快,影响受众也特别多。以前的蒸汽机时代,从最开始有火车,到普通人能坐上火车,需要花好几年的功夫。互联网的受众,今天有个什么东西,可能明天大家,普通的屌丝都用到。一个是链条快了,第二个受众接受成本低了,受众传播的广,所以力量才比较庞大。必然导致技术的变革也非常快,包括这些年的迭代计算,实时计算,这些全都出来。相信未来业务变革,产品变革的速度加快,技术的迭代,细分也会不断加快。

51CTO:您目前比较专注于实时计算这个领域,实时计算和离线计算区别是什么呢?

和仲:他们有不同的维度。离线计算偏数据的准备过程,为了在线服务而准备数据的,不是adhoc的。它更侧重的是成本,吞吐量。离线加工好的数据是需要加载到在线系统里面去服务用户的,今天你去淘宝访问,你接触到的系统是在线系统,但是在线系统的数据是由离线加工来的。

51CTO:离线数据里的存储?

和仲:对,是离线来加工的,大概是这么去分的。离线系统又分为批量计算、增量计算和流计算。如果一次就把所有的数据全计算完,那么它就是一个全量计算,批量计算指的是增量计算,流计算就是我今天专门讲的,它对数据计算粒度更小,是一批数据,可能是几条,有可能是几百条,也有可能几千条。它其实也是在离线计算的不同维度、不同技术的切入点去做这个东西。因为你刚刚说到的,离线计算,如果你都用全量计算的话,或批量计算的话,它会有些问题。但是它好处是因为吞吐高,所以成本比较低。但问题就是说,你现在看到的数据是老数据。很简单,我给你举一个例子,当然不一定是那么准确的,但是你可以去理解这件事情。如果今天卖家在淘宝上上了新的宝贝,你不能立刻看到,而是它上架一天以后你才能看到。这个对公司来说,影响就很大了,对于卖家来说影响到他的销售,对于用户来说体验不好。所以你就需要更及时加工的手段,它秒级就能加工好。

实时计算的今天,业界都没有一个准确的定义,什么叫实时计算?什么不是?这个概念没必要去纠结。对用户的响应是比较快的,可以这么笼统地去认为。其实大家自己心里都清楚,概念没有分仔细,也没有太大必要在概念上做文章。实时计算在离线和数据准备的角度来看,这个叫流计算,但是它在偏在线那部分。我们就叫它即时计算或者实时计算。

其实你光看概念,会觉得很乱,其实如果你知道它本身的技术,就会明白它其实是很清楚的一件事情。只是说计算是相对,数据的新鲜度是比较高的、比较快速的。在线的和离线的,那其实是不同维度。

51CTO:实时计算主要特点就是比较及时、比较快?

和仲:对,这也是它***的特点,举个例子来说,全量计算更像是一个大食堂,一个锅里炒一万个人的菜,吞吐很高。但对于一个个体来说可能你一小时才吃到这口饭,肯定很不爽,所以实时计算更侧重用户体验,对于个体来说很快可以拿到结果。那么很简单,你就不要去吃大锅了,去开小灶。针对不同的业务场景以及不同的客户是有不同的解决方案,有时候这两个方案能合起来。大锅侧重吞吐,小锅侧重延迟,没有谁替换谁,而是不同场景对应不同技术,就跟产品业务一样,这个市场在不断地细分,技术产品在不断地细分,随着用户的需求,业务的需求越来越多,技术肯定会演进,也会慢慢细分场景,慢慢细分出不同的技术体系。

51CTO:你们部署实时计算的主要步骤是什么?

和仲:其实部署是这样的,***依赖环境的部署,你可能依赖了内部的系统,就是你依赖的系统,你首先部署好,第二个依赖的包要提前准备好。你要考虑集群,有哪些机器要去部署,可能一个系统里非常复杂,有五六个角色。你要清晰哪些应该部署的,哪些结点需要部署,包括角色的起动顺序可能是不一样的,有的应该是先启动,有的后启动。但一个可运维,易于运维的系统,应该与顺序无关化。

我们要去判断整个结点,系统是否处于一个可用的状态,我们有相应的监控系统。但实际上,现在这么复杂的分布式系统如果还需要人肉运维,那基本上就悲剧了。现在的体系,包括运维,这种东西本身也是自动化的,也是个分布式系统。它就是帮你解决分布式系统本身的部署问题,这些也是专门的系统。但就会问了,那这个分布式部署系统由谁来部署?一定会有一个最根的地方,它是按照原来的方式去部署。

51CTO:部署的过程中,特别需要注意的,容易出问题的有哪些?

和仲:特别注意就是版本和依赖。

51CTO:是兼容问题吗?

和仲:对,所有这些问题都可以通过运维系统来解决,避免人为出错的概率,是人就有错,就是这样子。

好的,本次采访就到这里,非常感谢和仲的分享!如果您想了解更多实时计算相关问题,欢迎您留言讨论。

责任编辑:黄丹 来源: 51CTO.com
相关推荐

2013-08-04 21:44:48

运维故障故障排查云计算

2013-10-30 16:40:55

阿里巴巴阿里云云计算

2013-08-28 16:02:45

2010-06-28 10:43:47

2013-08-22 09:36:45

阿里巴巴王坚阿里云

2016-12-28 14:27:24

大数据Apache Flin搜索引擎

2013-08-22 09:41:52

阿里巴巴去IOE王坚

2013-08-08 10:34:50

阿里巴巴BAT

2010-04-14 16:56:41

Exchange Se

2013-11-07 11:26:08

2013-08-04 20:13:50

2015-05-12 15:09:01

阿里巴巴公有云IaaS

2013-06-02 21:53:51

阿里巴巴Windows Azu淘宝

2017-12-28 13:51:37

阿里巴巴年度技术人工智能

2014-11-21 15:07:01

阿里巴巴双11

2023-10-26 06:55:46

大数据数据仓库

2009-02-27 10:46:32

DBA笔试题阿里巴巴

2012-07-06 16:19:23

华为服务器

2012-02-27 10:59:51

云计算阿里巴巴腾讯

2009-04-16 11:14:49

Linux阿里巴巴电子商务
点赞
收藏

51CTO技术栈公众号