Facebook崛起背后的数据天才

Facebook数据天才之一杰伊-帕瑞克

  目前,Facebook已经发展成为全球最大的社交网络,拥有超过10亿活跃用户。九年的成长历程中,Facebook不仅仅遇到了一般公司发展过程中常见的麻烦,也因为巨大的用户数量级,遭遇更多常人难以想象的“大数据”。Facebook崛起之路上,究竟有哪些顶级数据天才、顶尖数据技术的支持呢?以下是文章全文:

  杰伊·帕瑞克(Jay Parikh)的办公桌,就放置在美国加州门洛帕克(Menlo Park)Facebook总部16号楼里,而他的行政助理吉尼·萨穆埃尔(Genie Samuel),就在离他不远的地方工作。每隔一段时间,帕瑞克都会听到萨穆埃尔咯咯地傻笑,而这就意味着,她很有可能又在Facebook上传了一些令人尴尬的照片,并且将帕瑞克标记了出来。通常情况下,帕瑞克自己Facebook页面上的通知,总会紧跟着她的笑声浮现。而如果通知没有如约而至的话,他就可能就要忙碌起来了。

  帕瑞克是Facebook基础设施工程部门的副总裁,负责这个全球最大社交网络的硬件和软件。如果页面上的通知,没有在几秒钟之内直接快速出现,那么他就要仔细检查自己的工作,然后努力找到造成这种情况的原因了。麻烦的是,Facebook的基础设施,已经扩展到全球四个不同的地方,四个大型数据中心,数十万台计算机服务器,除此之外,还有更多的软件工具深深吸一口气,你也很难在不间断的情况下,说完它们的名字。而导致通知未能出现的原因,就埋藏在这个网络的某一个角落中。

  这就是为什么帕瑞克和他的团队,会打造像Scuba这样的工具。Scuba是一个具有划时代意义的软件平台,它可以帮助Facebook的工程师们,及时对公司基础设施数据进行挖掘分析。通常情况下,处理如此海量的数据是需要耗费些时间的。你甚至可能需要几个小时的时间才能处理完所有的事情。不过,对Scuba来说这就不再是问题,它是一种(in memory)内存式的数据存储将所有的数据,存储在数百个计算机服务器高速内存中(而不是硬盘)这意味着你可以更实时地进行数据查询。

  帕瑞克表示:“它让我们能够了解基础设施工作情况我们的服务器做得如何,我们的网络表现如何,不同地软件系统交互的如何。所以如果吉尼在一张照片中标记了我,而通知在几秒钟之内都没有显现,我们就可以查看Scuba来查找问题。”

  九年之前,马克·扎克伯格(Mark Zuckerberg)在哈佛的宿舍里推出了震惊世界的Facebook,而现在它已经一举发展成了世界上最流行的社交网络。扎克伯格和他的公司,建立了这个星球上最先进的工程业务,而有趣的是,他们这样做的主要原因实在只是由于迫不得已。Facebook面临着一个独特而艰巨的任务服务10亿个不同的用户,并且要去处理10亿个不同的消息、照片、视频,以及很多其他的数据源这一任务对的技术要求,比你想象的还要多。

  是的,Facebook的工程大军中,不乏像拉尔斯·拉斯穆森(Lars Rasmussen)这样,创作了社交搜索工具Graph Search的天才,也有帮助美化工具、测试、部署应用程序的人。而现在,Facebook的硬件工程师,也拥有像阿米尔·迈克尔(Amir Michael)这样的天才,他们负责服务器设计、存储设备以及整个数据中心管理。

  Facebook还打造了一个,由顶级工程师组成的数据处理团队这项工作在现代网络中的重要性,已经日趋明显。Scuba仅仅只是Facebook众多“大数据”(Big Data)软件平台的冰山一角利用分布式系统,让数百上千个计算机上,可以协同分散处理一个单一的任务。

  包括拉古·穆尔蒂(Raghu Murthy),艾弗里·清(,Avery Ching),约什·梅茨勒(Josh Metzler)在内的工程师们,打造了这些出色工具。它们不仅仅能够排除Facebook数据中心内的故障,还能帮助Faccebook数据科学家,分析Facebook的在线应用的有效性,以及用户的行为。

  虽然谷歌的“大数据”平台,仍然被公认为全网最领先的。但是随着Facebook开始拓展自己的网络帝国,这家社交网络巨头并没有被谷歌甩开太远,而与谷歌不同的是,Facebook希望与全世界共享它的软件。谷歌总是在分享自己的想法、思路,而Facebook则是在分享自己的代码,并希望其他人能够好好利用。帕瑞克表示,“我们公司的使命,是让全世界连接在一起,并且变得更开放。而在我们进行基础设施建设的同时,我们也在帮助促进达成这一使命。”

  News Feed的故障

  Facebook数据团队的创始人,叫作杰夫·哈梅巴赫(Jeff Hammerbacher)。与扎克伯格一样,哈梅巴赫也曾经是哈佛的一名学生,不过他的专业是数学。在2006年春天接受Facebook的工作之前,他曾在纽约贝尔斯登(Bear Sterns)担任数据科学家一职。

  哈梅巴赫认为Facebook的数据操作灵感,要追溯到一天下午,那时他还在贝尔斯登,路透社的数据订阅(data feed)突然出现了故障。而犹豫数据订阅瘫痪,没有人能进行交易。故障持续了一个钟头,而造成问题的原因,让人有些哭笑不得

  负责这项任务的那个家伙,出门吃了个午饭。

  哈梅巴赫突然意识到,这次严重的故障证明,数据工具的重要性丝毫不亚于数据专家。哈梅巴赫回忆说,“我突然发现了一个空白需要创建一个完整的系统,采集数据,并且全部跑完整个数据模型在每一个点上,尽可能优化系统。”

  这基本上简单地概括了他在Facebook的工作。Facebook最初聘请他,是作为一名数据科学家帮助通过信息分析理解公司运作。但是由于路透数据订阅失误,给他留下了深刻的印象, 哈梅巴赫更近一步。

  他打造了一个团队,管理整个公司的数据。这一团队不仅分析数据,还创建并运行一个负责收集、处理数据的工具。

  他刚加入Facebook的时候,这家公司还在使用老旧的甲骨文(Oracle)数据仓库处理信息。但是这样的软件设计,已经无法跟上Facebook迅速发展的脚步。

  哈梅巴赫还推荐Facebook使用开源软件平台HadoopHadoop可以将数据分散到商用服务器的海洋,这些机器将协同处理数据,让它们变成真正有意义的信息。这有着很强的诱惑力,因为商用服务器的价格往往相对较低,而当你的数据扩展变多的时候,你只需要添加更多的机器就可以轻松应对了。

  雅虎利用Hadoop构建了网络搜索引擎索引,但是哈梅巴赫和Facebook,则把它用作了帮助公司数据科学家的方法能够比甲骨文的数据仓库,处理更大量的信息。

  而Facebook还研究了一个叫作Hive(蜂巢)的产品分析师可以应用这一工具,使用一种与结构化查询语言(SQL)相似的语言,处理Hadoop上的数据(SQL早在20世纪80年代以来,就得到了广泛应用)。而Hive也很快发展成为了Facebook主要的在线广告性能分析工具。

  2008年秋天,哈梅巴赫离开了Facebook,并帮助创建了Cloudera公司。

  未来的Hadoop

  现在,无论是Twitter还是eBay或是LinkedIn在使用Hadoop,而Facebook则将这一分布式系统基础架构上升到了新的极致。并且,Hadoop正致力于将此服务平台做到极致。基础设施负责人杰伊·帕瑞克曾表示,Facebook运行着世界上最大的Hadoop计算机集群。Facebook的Hadoop集群中的一个,就涉及了超过4000台机器,存储着超过100PB(petabytes)字节的数据,也就是数百万gigabytes的数据。

  这个集群是非常庞大,甚至已经超越了四个数据中心。Facebook使用Hadoop服务器来分配分布于各离散数据中心的数据空间,使每次的寻址过程自主进行。Facebook工程师拉古·穆尔蒂说。“我们的规划总是目光长远的,但是,我们必须通过这个过程,将所有数据迁移到新的地方去。”几年之前,拉古·穆尔蒂还在完成斯坦福大学Ph.D.项目的时候,被杰夫·哈梅巴赫;目前为止,他作为Facebook大数据业务团队的中坚力量,已工作四年有余。

  Facebook信誓旦旦地表示绝不会再犯类似的错误,于是开始着手建立一个跨越多个数据中心的Hadoop集群。该项目由穆尔蒂负责,他曾经参与搭建雅虎(Yahoo)的pre-Hadoop分布式计算系统,并吸引到了哈梅巴赫的注意。如今,穆尔蒂已经参与过,包括Hive在内的许多Facebook的重要项目的研发。但是,这还是有些许不同Hadoop的设计并没有考虑多设备之上运行情况。通常情况下,由于需要服务器之间的高负载通信,集群被限制在了单一数据中心。

  穆尔蒂和他的团队成员,在整个Facebook地基础设施上,推出了一个叫作Prism平台。典型的Hadoop集群,通常是由单一的“命名空间”(namespace)管理,但是Prism则开辟出多个命名空间,在一个相同的物理集群之上,创造了很多“逻辑集群”。

  这些“命名空间”可以划分给不同的Facebook团队,这样每一个团队都能够得到属于自己的命名空间,不过仍然全都在使用同一个数据集,而这个数据集可以跨越多个数据中心。这里的诀窍是,当一个团队运行一项工作的时候,它可以复制这项工作所需要的特定的数据,并且把它移进一个单一的数据中心。穆尔蒂表示,“我们将这些能力下放到独立的小团队,因为他们能够更好的了解网站特殊部分的独特需要。”

  根据穆尔蒂,这一系统理论上,可以扩展到无限多个服务器上。这意味着,Facebook不必再去担心,需要打造另一个新的数据中心了。对于数据团队的托斯来说,这意味着他能够保证这一基础设施平稳运行这有一个额外的好处,他表示,“把整个Hadooop集群放在一个数据中心中,让我害怕极了,而Prism能够帮助在这一点上提供帮助。”

  Prism只是众多扩展Hadoop的努力中的一个。前任雅虎雇员艾弗里·清带领的团队,最近刚刚部署了一个新的叫作Corona的平台,允许多个工作,在一个单一的Hadoop集群之上,而并不会导致崩溃。

  穆尔蒂还帮助建造了一个叫作Peregrine的工具,能够让查询Hadoop数据的速度比标准情况快很多。Hadoop的设计初衷是一个“批处理系统”,这意味着,通常需要在运行作业的时候进行等候,但是和Impala相似的是(一个由哈梅巴赫和Cloudera创建的系统),Peregrine可以让平台更接近实时。

  Facebook并没有与外界共享所有的软件,但是却分享了Corona,而如果以此作为习惯参考,它很有可能会在未来分享更多的代码。这就是为什么像艾弗里这样的工程师会在这里工作,“在Facebook,我们比起他人更早地遇到问题,而其他人就可以从中受益,他们不需要重蹈覆辙,也不需要重头再来。”

  数据天才们的糖果乐园

  Hadoop是Facebook数据操作的基石,这种情况还将延续很多年。但是随着Scuba等工具的兴起,Facebook也将转投新的方向。

  Scuba是一款正在快速增长的内存数据储存工具,设计的主要目的是为了极大的提高数据信息分析的速度。这款工具是由Facebook公司的工程师团队开发的,该团队中包括一位在顶级编程网站Top Coder上,排名第一的工程师约什·梅茨勒。Scuba在Facebook的数据中心中运行,帮助该公司收集基础设施的信息,并这些log压缩在数以百计的服务器内存中。所以,这些数据可以被即时查询到。

  帕瑞克表示:“这就像Excel的数据透视表一样。即使你在处理数以百万计的数据,你也可以在亚秒级的响应时间里得到结果。”

  是的,这个项目看起来似乎与Peregrine有些重叠至少在一些部分上存在重复。但就像杰夫·哈梅巴赫指出的,这款工具是Facebook精神的一部分。“Facebook做事的方式,就是寻找最短路径的解决方案,而并非打造一款大而全的系统,来处理所有问题。”就像Facebook的其他项目一样,Scuba是在公司级的黑客马拉松(hackathon)中脱颖而出的。工程师遇到问题就自己解决,而非等到其他项目来帮他们解决问题。

  这种情况在Facebook中随处可见。Santosh Janardhan曾就职于PayPal和YouTube,但是在他眼中,这些公司的工作相比之下非常微不足道。“Facebook击败了他们。对于我来讲,在这里我感觉到了压力。”工程师在这里希望解决更大的问题。“如果你是个技术迷,那么这里就像是糖果乐园。”

时间: 2024-11-08 21:24:34

Facebook崛起背后的数据天才的相关文章

生鲜电商崛起背后的冷链配送

生鲜电商崛起背后的"冷链配送" 就像公园这种民生设施一样,每个城市总得有几个农批市场.小到社区旁边的菜市场.水产市场,大到北京新发地这样的区域性农产品(行情,问诊)聚集地,它们大大小小,形形色色,歪歪扭扭,小强一样生存在中国每一座城市,与壮丽的写字楼.繁华的商业街交相呼应.它们是大妈的乐园,她们抱着锻炼身体的态度,有事儿没事儿遛一遛,又总能捎点儿什么回来:它们是处女座的地狱,"脏乱差"似乎是永恒的标签.时逢生鲜电商爆发前夜,面对互联网经济浪潮的洗礼,农批市场这个怪咖

双11媒体大屏背后的数据技术与产品

2016年双11阿里巴巴的产品成交额达到1207亿元,而面对与交易额一样巨大的流量洪峰,直播媒体大屏是怎样做到将交易数据实时计算并且准确显示出来的呢?在这背后究竟用到了哪些数据技术与产品呢?本次阿里巴巴2016双11技术创新论坛上,来自阿里巴巴数据技术与产品部的高级技术专家罗金鹏(藏六)就为大家分享双11媒体大屏背后的那些事. 以下内容根据演讲视频以及PPT整理而成. 本次为大家分享<双11媒体大屏背后的数据技术与产品>.阿里巴巴从2009年开始双11产品大促,从最初的5千万的产品成交额,到2

Facebook在北极的数据中心

  Facebook每天处理3.5亿张照片.45亿个"赞"和100亿条消息.这意味着Facebook需要为此配备难以置信的.巨大的技术基础设施.通常情况下,互联网企业会直接去购买服务器,但Facebook几年前就开始通过设计自己的系统和外包基建项目来建立自己的服务系统.最近,Facebook向部分美国媒体开放了其位于北极圈附近的数据中心,并介绍了其在数据服务方面的规划.如果延展开来,这将是一场会动摇传统数据与硬件服务商商业根基的革命,会让惠普.戴尔等传统厂商坐不住.本文来自彭博商业周刊

微软谷歌等力挺Facebook保护用户隐私数据

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 微软谷歌等力挺Facebook保护用户隐私数据 [TechWeb报道]8月11日消息,据国外媒体报道,近日纽约地方检察官办公室(NYDA)以政府调查为由,要求Facebook提交381位用户的隐私数据,此举遭到Facebook的强烈反对.随后,这场"隐私保卫战"上升为科技公司对战政府法律的战争. 目前,包括Dropbox.

Facebook第六个数据中心在爱尔兰开建 完全靠风能

Facebook将在爱尔兰新建数据中心 北京时间1月25日消息,Facebook今天宣布将在爱尔兰Clonee修建全新数据中心,该数据中心占地227英亩(约9.2万平米),完全依靠风能供电,2017年晚期或者2018年初数据中心就可以投入使用. Clonee是一个小村庄,它离大城市都柏林只有16公里,Clonee和邻近的Dunboyne人口总计不到1万人,Facebook修建数据中心可以刺激当地经济的发展. 这将是Facebook的第六个数据中心.去年7月时,Facebook曾宣布将在美国德州F

贵州大数据崛起背后的阿里云力量

"你知道吗,'云上贵州'从诞生,到走出山门,再跨洋到国际舞台上,从头至尾,我们可能是极少数全程参与见证的."阿里巴巴集团技术委员会主席王坚接受媒体采访时曾说. "云上贵州"--中国首个由省级政府主导的云平台的建成,拉开了贵州大数据产业爆发的序幕.贵州省政府为此做出规定:非特殊情况,所有省级政务部门将不再自建机房.这样的决定在三年前极具前瞻性,两年后新疆.山东等地陆续效仿. 这只是贵州省与阿里巴巴集团在2014年签署的<云计算和大数据战略合作框架协议>中的

中国新四大发明背后的“数据智能”

"数据智能"引爆产业互联网 文 | 田丰 阿里云研究中心主任 现在美国是产业互联网强而消费互联网弱,而中国刚好反过来,消费互联网强而产业互联网弱,所以产业升级空间巨大,人工智能的产业应用阶段到来. 今天的人工智能是以数据为基础进行训练,叫做"数据智能",中国众多传统产业在云上升级,也是来自于数据智能新一波科技浪潮的推动. 数据智能的消费升级与产业升级 在一带一路峰会上涌现出中国"新四大发明",网购.支付宝.共享单车.高铁,这是很多外国友人最想带回

智能家居3.0,开关背后是数据

"下班回到家,或是半夜起床上厕所,你是摸出手机解锁点击APP打开灯,还是直接按一下开关?"中国智能家居产业联盟秘书长周军的一席"玩笑话"引发了大家的思考. 我们身处智能家居时代,当智能家居概念和产品已逐渐被市场接受,最能得到用户认可的终端设备,是带着身边时间最长的那块屏幕--手机吗? 昨天,"2016中国智能家居发展高峰论坛"在杭举行,论坛上发布的<2016中国智能家居产业用户数据研究报告>显示,目前用户最认可的智能家居控制终端,不是

Facebook整合Rovi的数据 使用户更好的享用电视节目

&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp;   硅谷网讯 Facebook今天宣布,已经将美国领先的网络订餐平台OpenTable整合到自己的网站之中,此次整合将有利于用户通过 Facebook移动应用来订餐.也就是说,从今天开始,用户就可以通过iOS和Android版本的Facebook移动应用订餐了. 说到Facebook整合OpenTable的交易,当然不能忘记一位重要人物,此人就是此前在Foursqu