- UID
- 871057
- 性别
- 男
|
与管理传统的大型数据基础设施相比,管理与大数据相关的拍字节级数据存储是一种全新的方式。目前在线照片分享网站Shutterfly管理着30拍字节的数据。Shutterfly在这里与我们分享了他们驯服“数据野兽”的经验。
目前,每个人都在谈论大数据分析方法和相关的商务智能成果。但是在公司能够利用这些数据前,他们必须想办法解决存储问题。管理拍字节级甚至更大规模的数据存储与管理传统大型数据集有着本质的区别。
Shutterfly为一家在线照片分享网站。他们并不限制用户存储照片的数量,并且允许用户存储原始分辨率的照片,用户在存储时可以不用降低照片的分辨率。Shutterfly还曾承诺永远不会删除任何照片。
Shutterfly 高级副总裁兼首席技术官Neil Day称:“我们的照片存档大小已经超过了30拍字节。存储池的增长速度远远高于用户群的增长速度。在我们吸引到客户后,他们做的第一件事就是向我们上传大量照片。在他们喜欢上我们之后,他们做的第一件事就是再次上传大量照片。”
为了有一个直观的印象,大家可以想像一下,1拍字节等于100太字节,等于1百万吉字节。美国宇航局哈勃太空望远镜前20年的观测数据存档也仅为45太字节多一点。以128 kB/s速率压缩的1太字节音频数据可以存储17000小时的音频。
拍字节级基础设施的特点
Day称:“拍字节级基础设施与传统存储设施完全不同。建立和维护它们非常困难。与传统大型数据集的管理压力相比,一个拍字节或多个拍字节基础设施的管理压力完全是天壤之别。它们之间的差异就如同在笔记本电脑上处理数据和在RAID阵列上处理数据一样。”
Day在2009年进入Shutterfly网站。当时存储已经成为了公司最大的开销,并且这一开销仍然在飞速地增长。这些开销的增长速度并不是根据原始容量的增长速度而增长,而是根据员工数量的增长速度而增长。
Day 称:“存储每增长n个拍字节就意味着我们需要增加一名存储管理员,以及相应的物理和逻辑基础设施。有了这些大型存储,数据量不断创下新高。实际管理这些大型存档的人必须不断的解决硬件故障问题。每个人都想解决这一基本问题,因为大家都清楚硬盘方面的任何一个故障都会导致服务中断。那么你如何确保数据能够被持续获取,如何保证性能不会下降?”
扩展RAID是一个棘手的问题
失效备援的标准解决方案是进行复制,通常是以RAID阵列的形式进行。但是如果规模庞大,那么RAID产生的问题将比解决的问题更多。在传统的RAID数据存储方案中,为了保证完整性和可用性,每个数据的拷贝都会被做成镜像,存储在不同的磁盘阵列上。不过,这也意味着每份被存储和被做成镜像的数据将导致存储容量膨胀五倍。随着RAID阵列中的磁盘容量越来越大,将故障磁盘中的内容恢复到新磁盘上所需要的时间也越来越长。
Day 称:“实际上,我们在RAID上并没有遇到操作问题。我们遇到的问题是,磁盘容量越来越大,如果磁盘组件出现故障,切换至冗余系统的时间将越来越长。奇偶校验与生成的数据集的大小是成正比的。目前我们已经开始在基础设施中使用1太字节和2太字节的磁盘,这导致切换到冗余系统的时间更长。目前的发展趋势并没有朝着正确的方向发展。”
可靠性和可用性对于Shutterfly来说非常关键,这也是企业级存储的需求。Day称,快速增长的存储成本使得商品化服务越来越具有吸引力。在Day和他的团队对一些能够让Shutterfly控制成本的潜在技术解决方案进行投资的过程中,他们接触到了一种名为纠删码的技术。这一技术引起了他们的兴趣。
利用纠删码创建下一代存储
Reed-Solomon纠删码最初是作为前身纠错(FEC)代码,用于在不可靠的信道中发送数据,例如深空探测任务中的数据传输。这一技术还被广泛的应用在CD和DVD上,以处理灰尘和划痕等光盘损伤问题。目前几家存储厂商已经开始展开合作,将纠删码整合到他们的解决方案中。通过纠删码,数据段能够被分解为多个小块,每一小块数据本身都是没用的。然后,这些数据块被分散到不同的硬盘上或是服务器上。只需要部分数据块,数据就能够随时被重新恢复,甚至当硬盘故障导致多个数据块丢失后,数据仍然能够被完整地拼凑起来。换句话说,你不再需要创建多份数据拷贝,单个实例就能够保证数据的完整性和可用性。
总部位于芝加哥的Cleversaf公司是较早涉足纠删码解决方案的厂商之一。该公司还通过增加存储单元信息研发出了分散码技术。该技术允许用户在地理位置上相互独立的地方,如在多个数据中心上存储数据块、或是片段。
由于每个片断在数学意义上都是无用的,这使得其具有私密性和安全性。与RAID需要多份拷贝不同,信息分散技术仅使用一个单个实例数据,并且为了确保数据的完整性和可用性只进行了最低限制的扩展,因此公司可能节省90%的存储成本。
Cleversafe 公司产品策略、营销和客户解决方案副总裁Russ Kennedy称:“在重新将数据块拼凑在一起时,你不必拥有每一个数据块。所生成的全部数据块的数量我们称之为广度,恢复数据所需要的最低限度的数据块,我们称之为阈值。这两者之间的差异决定了数据的可靠性。当你同时丢失了节点和硬盘后,你仍然能够恢复原始的数据。在RAID中你能够获得的最高的可靠性是双奇偶校验,你可以丢失两块硬盘。但是在我们的解决方案中,你可以丢失最多六块硬盘。”
纠删码是一项以软件为基础的技术,这意味着该技术可以使用商用硬件,进一步压缩扩展成本。
创建下一代存储基础设施
Day称:“在找到了合适的技术后,我们将关注提供这种技术解决方案的厂商。同时,我们还关注如何创建它们。我们认为,如果能够找到一家能够满足我们需求的公司,并且他们的系统已经经过了实践检验,那么对于我们来说是再好不过的了。”
Shutterfly让四家厂商为他们评估和创建其数据中心所需要的存储设备原型。Day称,他们关注的重点是性能、可用性、容错性和可管理性。
他解释称:“我们有专门的人员管理照片存档。我们在2010年最大的一个顾虑是照片存档越来越大。随着存档的日益增长,我们不得不增加管理人员的数量。这让我们感到很头疼。”
Day称,Cleversafe的出现让Shutterfly遇到了救星,该公司也希望与Shutterfly合作,为Shutterfly量身订做解决方案。他们对这一新概念进行了仔细验证,包括在Shutterfly实验室中进行上传和性能测试。在Shutterfly对运行和性能感到满意后,Cleversafe推出了一款平行存储基础设施,同时公司将Shutterfly所有流量的一份拷贝引导至这一基础设施上。
Day 称:“每一份上传的照片都被同时存储在我们的老式基础设施上和Cleversafe的基础设施上。当时我们运行了六个月的时间,包括节假日。”节假日对于Shutterfly来说是使用高峰期,许多用户都会创建相册,并上传大量的照片。
在2011年,Shutterfly将Cleversafe的解决方案全面应用于照片存档中,并将其作为主要的照片存储仓库。
纠删码存储的总拥有成本
Day 称:“总体上,纠删码存储是一个软件解决方案,允许我们部署费效比更好的硬件。对于我们来说,它改变了总拥有成本。我们与硬件厂商打交道时拥有了更高的灵活性,我们可以确保在硬盘和基础设施方面获得最优惠的价格。”
Day表示存储池的管理也得到了极大的简化。他称:“现在我们基本上只需要增加存储空间即可,随后它们会自动的添加到我们所指定的存储池中。以前,只有我们增加了额外的存储,那么我们就不得不进折腾一翻。”
现在,如果一块硬盘发生故障或是掉线了,Shutterfly的存储基础设施能够将其标记为不可用状态,并引导数据绕开这块硬盘,同时迅速恢复这块硬盘上的数据。以往当一块硬盘或是多块硬盘发生了故障,团队会召集所有的人一起排除故障,现在他们的团队只需注明故障,在计划维护方案中替换掉受影响的基础设施即可。
他称:“这样一来,我们不必再像以前一样尽可能快的增加人手了。现在,我们的人手仍然在增长,但是速度比以前慢多了。日常维护工作的工作量已经下降了不少。管理员可以在他们感兴趣的前瞻性项目中花上更多的时间。他们的工作重点已经转移至我们以往称为附加工作的工作上去了。在增加员工人数和工作内容方面,这一技术都产生了不错的效果。”
数据存储将让公司具备敏锐的洞察力
尽管Shutterfly是一家需要处理海量数据的互联网公司,但是如今大多数公司也都不得不面对大量数据,全球的公司正在存储越来越多的数据。
他称:“我们的存档规模在五年内将变得非常庞大,与比平均水平相比,要大几个数量级。我们希望在四年或五年后能够看到大量应用和技术投入市场,让处理超大型数据集成为可能。让人感到兴奋的是,它们将允许公司观察细微的数据,从而使得公司具有更加敏锐的业务洞察力。”
Day称:“这是一个发展趋势。目前我们还仅仅处于初级阶段。随着业务的互联性、移动性以及与客户实时互动程度的不断提升,数据量将越来越大。对这些数据的分析可能将会对业务洞察力产生深远影响。但是这些工作的首要条件是要能够可靠地存储这些海量数据。” |
|