前码农解密“淘宝技术这十年”:三个不容忽视的重要时间节点
受访者介绍:子柳,2004年加入淘宝网,历任开发工程师、项目经理、产品经理、测试经理。2009年创办了“淘宝技术大学”,培养内外部工程师众多,人称“校长”。2014年5月,子柳离开阿里,成为一名天使投资人。
2012年11月11日,191亿元“奇迹”诞生前,正当许多买家正在享受购物狂欢时,突然一条这样的提示信息出现在眼前:我们的系统检测到您所在的网络对淘宝网的访问请求过于频繁,很抱歉,现在暂时无法处理您的请求,请您过一段时间后再来访问。“系统崩溃”以及“支付瘫痪”随之被传播。
殊不知道,这其实是故意的。因为我们要调控全局,所以进行了一部分限制。例如说,一瞬间买家的访问流量实在太大了,原本我们准备了3个T,当到达2个T还在迅速增长的时候,我们判断这有可能超出我们的承受能力范围,因此,我们必须关掉一部分流量。如果不做限流,不让一部分人先等等,可能会导致全盘系统的瘫痪。
这不是故障。淘宝技术经过了2009年至2012年这几年时间的发展和升级后,早已具备了经受各种考验的能力。
淘宝技术这十年
2008年以前、2008年至2012年、2012年以后,这是淘宝技术发展的三个重要时间节点。
2008年以前,淘宝的系统不论是技术难度还是架构难度都不是特别大,因为那个时候的流量、数据量,使用常用的技术手段就能解决。例如业界常用的解决方案IOE(IBM的小型机、Oracle的数据库、EMC的存储)能够帮我们支撑10亿左右的访问量和10亿级别的数据量。从最初的一台普通的服务器到2008年几千台服务器加IOE解决方案,支撑了我们最初5年的发展。
但是到了2008年前后,我们有些问题就没有人能够找到现成的解决方案了。例如我们的商品图片,一开始放在了本地硬盘上,2004年本地放不下了,买了NetApp公司推出的专业的NAS设备,随着图片数量的不断增长,我们找NetApp公司买的设备越来越高级,到2007年的时候,我们发现他们最好的服务器已经卖给我们,没有更好的了。但是用户还是不停的要上传图片,怎么帮他们解决呢?
别人无法解决,并不代表这个事情无解,淘宝的技术就在这个时间点上面从使用别人的技术转变成了自己创造技术,马总说过“用钱能解决的问题都不是问题”,我们在2008年前后到了“用钱无法解决问题”的时代。幸运的是,我们解决这些问题并不是从头做起的,我们并不是“开拓者”。国外的google、facebook他们都已经尝试过自己解决技术上的问题,而且他们解决了之后,会把原理开放出来分享给大家(这是我们非常尊重这些企业的原因)。
于是,淘宝的技术牛人在此基础上就尝试着去做分布式存储、数据库、中间件、负载均衡这样一套电子商务操作系统。之后,经过2009年至2012年期间一系列大型活动的洗礼,这套系统已经非常成熟。解决了原本用钱也解决不了的问题后,淘宝技术开始走向开放。这时候不仅仅是要把淘宝自己建设好,很多技术的探索成果我们也开源出去让大家使用,来帮助我们的商家甚至竞争对手。从技术角度来讲,淘宝对整个业界技术水平的提升有很大的推动作用。淘宝在这几年间,也从一个技术不被谈及的公司走向了技术型公司,影响力大大提高。
到了2012年双十一之后,淘宝技术体系又将走向何方,其实是很难想象的一件事情。除了软件、应用系统开发外,还有大数据相关的研究,用云计算技术来提升整个电商生态圈的信息化能力,系统底层的持续优化等等。我们现在可以利用淘宝的数据告诉商家现在流行什么,哪个地方的人喜欢买什么样的商品,用大数据给他们的生产和销售做信息支持;我们提供了一个名叫“聚石塔”的电商云工作平台,让商家把各种工作软件部署进来,实时对接淘宝的数据接口,享受和淘宝一样安全稳定的运行环境。这样可以把很多线下手工操作的事情直接在线处理掉,有远见的商家甚至已经开始利用云计算来整合自己的供应链系统了;我们还有人修改Linux内核,定制服务器硬件,开发智能的部署方案,让系统运行更加绿色高效。未来主要是围绕大数据、云计算和智能化这几个方向发展了。
数据不会说谎
技术是为数据服务的,数据可以开发出去,外面的数据也可以回流回来。按照马总的说法,我们现在变成了一个数据公司。
“大数据”的说法非常响亮,以至于现在谁提起大数据都感觉有些俗气了。但是,大数据是很好的东西。
大数据为什么好?恰恰是因为它“大”。有个说法,最近10年人类所创造的数据占到人类有史以来所创造信息的90%。以前记载在纸上、竹片上,承载能力非常有限,现在都记录在互联网上,所以数据非常庞大。
数据大了之后,有了搜索引擎,也有个更多可能的出现。有一个很经典的案例,说是通过谷歌的搜索引擎可以预测什么地方有流感。怎么预测呢?一般发生流感的时候,会有很多人在谷歌搜索“流鼻涕怎么治”。此时,谷歌通过统计分析,便可以得出哪个地方搜索类似关键词的人更多,判断出此地发生流感的概率可能更高。这样的反应速度比传统的疫情机制反应速度要快很久。
还有一个好玩的例子,某景区从原先的免费开放改为收门票之后,虽然网上抗议声一片,但他们官方还是宣称他们的旅客数量在增长。我们知道的情况是什么样的呢?利用淘宝旅行上的数据,我们很明显看到该景区酒店的订单量起码下降了一半。有时候,人们擅长于对内调查,对外“创造”结果,可是数据永远不会说谎。
现在淘宝会定期公布一个数据,叫TCPI,淘宝物价指数。之前,淘宝只有几百万用户的时候,大家不敢做这个数据,即便你做了也没人信。但是,基于现在的用户数量,进行这个数据统计分析后,它很受重视,甚至有些政府部门也很重视。他们也看到了,我们依赖数据做出来的统计更加高效,而他们自己则需要动用大量的人力、物力,通过长时间的调查可能才能得出这样一个结论,淘宝技术人员写了个数据模型,把淘宝交易积累下几十个T的数据放到服务器上运算,一个晚上就能分析出来了。这,就是大数据的威力。
对商家来说,商家随时可以利用大数据指导商业生产,例如帮助商家做生产预测。打个比方,对“今年流行长裙,短裙还是热裤?”的问题,每个人的看法可能不一样。而淘宝几亿用户购买行为的实时数据是开放的,商家通过淘宝指数对比一下,结果就出来了。一对比发现,其实今年长裙最受关注。这时候,商家拿这些数据给生产女装的厂家,就可以做出这样的决策:生产热裤的生产线不要多投精力,赶紧做长裙。这就是用数据说话。在十年前,谁也拿不到这些数据,服装的流行趋势很多时候只能依赖时尚杂志。现在,不如看数据更直接,而能够做到这一点,正是因为淘宝有比较大的用户基础,数据量大了之后,获取的信息才是贴近真实的。因此,将这里面的信息整合起来,就可以看到最真实的情况。
无限的数据,创造无限的可能。
评论:
1 条评论