加入收藏 | 设为首页 | 会员中心 | 我要投稿 应用网_丽江站长网 (http://www.0888zz.com/)- 科技、建站、数据工具、云上网络、机器学习!
当前位置: 首页 > 站长资讯 > 外闻 > 正文

Dropbox 弃用亚马逊云服务的启示

发布时间:2016-03-21 16:00:10 所属栏目:外闻 来源:腾讯科技
导读:Dropbox是一家坐落在旧金山的初创公司,在全球拥有5亿用户。随着规模的扩大, Dropbox弃用亚马逊云服务,自主建设了庞大的数据中心。这是一个工程上的壮举,它的意义也远远

詹姆斯·考林(James Cowling)在麻省理工学院读书的时候,就认识了Dropbox的创业者。当时他在那里读研究生,专业方向是分布式计算系统(在几十个、几百个,甚至上千个设备上运行的计算系统),他和最早的一批Dropbox员工一起研究这个课题,就这样,他认识了Dropbox的联合创始人兼首席执行官德鲁·休斯顿(Drew Houston)。在Dropbox不断成长的过程中,他们一直保持着联系,而且一起讨论过弃用亚马逊云服务的条件和方式。 “这个想法似乎非常大胆,”考林说。

考林说,2012年,互联网上最大胆的创新公司谷歌曾想把他招募到Spanner团队。Spanner是谷歌的全球数据库,该公司的大量在线服务都以它为依托。而且,Spanner可能也是地球上的最大最复杂的数据库,是分布式系统中最有分布式特性的一个。但是考林还是决定去Dropbox工作。 “我想创建一些东西,”考林说。Spanner已经建好了,但Dropbox的数据王国还没有。

Dropbox在诞生之后的大部分时间里,都采用了部分上使用亚马逊云服务,部分上使用自己数据中心相结合的方式。用户通过Dropbox共享文件时,该公司就把这些文件储存在亚马逊的Simple Storage Service(简称为S3)上,同时把这些文件的所有元数据——即它们属于谁,允许哪些人下载——存放在Dropbox自己数据中心的机器上。

该公司的基础设施副总裁阿卡利·古普塔(Akhil Gupta)曾在谷歌工作。考林和古普塔以及其他人一起,设计了一个全面的软件系统,Dropbox可以存储存储成百上千PG的数据——相当于数以亿计个优盘的存储量——而且储存效率比在亚马逊S3上高得多。他们给这个系统取名“魔法口袋”(Magic Pocket)。 “我们的构想是,你可以把你所有的东西都存放在Dropbox上,不会迷路,不会找不到东西,你随时都可以使用它们,它就像一个魔法口袋。”古普塔说。

从本质上说,他们相当于是建立了公司自己的亚马逊S3,所不同的,只是他们专门设计了软件,用来解决该公司特定的技术问题。 “这不是对等替换,”阿加瓦尔说。 “而是一个专门为我们自己度身定制的东西。”

即便是在Dropbox还没有搬离亚马逊的时候,亚马逊就已经表现得像是Dropbox的竞争对手了。亚马逊提供了自己的文件共享服务,虽然它缺乏Dropbox那样的用户友好度,而且品牌知名度也不如Dropbox,但这不免让规模相对较小的Dropbox感到担心。不过阿加瓦尔说,弃用亚马逊云服务主要是财务上的原因,而不是竞争上的原因。“你必须把这些科技巨头想象是一个国家——友好邻邦,虽然你可能会与它们发生这样那样的小冲突,”他说。 “亚马逊在很多领域都很出色,但我认为,当一家云储存提供商并不是它们的首要任务,这和我们不一样。”

事情最好真的能像他希望的那样,因为Dropbox已经压下了它的全部赌注。它根据自己的需要开发了自己的软件。而且还不仅仅是如此,Dropbox也度身定制了硬件:它自己设计了计算机。

定制硬件

多年以来,互联网巨头谷歌、Facebook、微软和亚马逊都在为自己的数据中心设计硬件——计算机服务器、网络交换机,有些时候还包括用来储存大量数据的硬件。这些公司别无选择,只能自己动手处理所有一切:因为它们的在线王国已经变得如此庞大,使用通用设备只会更加昂贵、更加困难。它们需要的是新型硬件——更便宜、更精简、更具可塑性。因此,它们和硬件制造商一起,和亚洲本地的零部件供应商一起,设计制造了专门的设备。

如今,谷歌建造的服务器比全世界其他任何一家公司都多——包括那些销售服务器的厂商。亚马逊和微软在这方面也没落后。而且,由于这些公司提供云计算服务,很多其他企业现在采用的硬件也和传统的通用硬件有差别——特别是在Facebook开源了其定制设备的设计之后。现在,一些供应商,包括广达这样的亚洲制造商,都在销售基于Facebook硬件的产品。

拉米·阿加马(Rami Aljamal)亲身经历这个变化。他在Twitter设计了一系列精简机型,也在戴尔的新部门DCS工作过(戴尔设立这个部门,是希望夺回市场份额。谷歌等公司设计自己的硬件,让戴尔损失了一些市场份额)。现在,他在Dropbox的设计机器。就像谷歌、亚马逊和微软一样,Dropbox认为它也必须拥有适合自己独特需求的机器。

Dropbox存储了海量数据,因此它需要适合开展这个任务的机器。阿加马和他的团队在 Dropbox总部一个实验室里面设计了这种机器,他们称之为Diskotech。 “我们最关心的东西是磁盘,” 阿加马说。 “所有信息都储存在磁盘上。”Diskotech宽约45厘米,长约106厘米,高15厘米,可存储多达1 PB数据(100万GB)。只需要50台这样的机器,就可以储存人类有史以来写过的一切东西。

进行更换

考林和同事从2013年夏天开始开发“魔法口袋”软件,花了大约6个月的时间完成了初始代码。但是,这只是他们迈出的一小步。在系统建成之后,他们必须确保软件能够正常工作,必须让它在多个数据中心数以千计的机器正常运行。他们不得不为公司的新硬件改写软件,而且还得把所有的数据都搬离亚马逊。

整个过程花了两年的时间。毫无疑问,这样的项目是技术上的一大挑战。但是与此同时,它也是后勤上的一个挑战。在互联网上移动如此之多的数据是一回事,把这么多的机器搬到数据中心又是另外一回事,而且他们必须在Dropbox继续为亿万用户提供服务的同时做到这两件事。 “就好比是一辆正在行驶的汽车,你希望能够在开车的同时,还能够更换轮胎。”机器扩张工作的负责人丹·威廉姆斯(Dan Williams,曾是Facebook网络工程师)表示。也就是说,在进行这些变更的时候,Dropbox不能停运。它不能对亿万用户说:你们的文件暂时无法使用了。这个艰巨任务圆满完成的最佳指标之一,就是用户完全注意不到公司有这样的变化。

考林和同事在写完最初的代码之后,就在一种比较标准的硬件上面进行了测试。他们的目标是连续测试180天不会出现重大错误。团队甚至在Dropbox总部的墙上挂了一个倒计时钟。两个月之后,测试出现了一个错误——可能会把数据存储到错误的地方——然后他们又把倒计时钟调回到180天。测试总共历时8个月。

(编辑:应用网_丽江站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读