云端冷存储 三足鼎立
2017-05-12沈建苗
沈建苗
冷存储由Facebook于2014年开源,这种存储服务器专为不常访问的数据而设计。它针对低成本硬件、高容量和高存储密度,以及低功耗进行了优化。如今,亚马逊网络服务、谷歌云平台,以及微软Azure都可以为客户提供云存储服务,同时这三家公司也在云端冷存储领域实现了“三足鼎立”的局面。
冷存储由Facebook于2014年开源:这种存储服务器专为不常访问的数据而设计,比如旧的Facebook照片。它针对低成本硬件、高容量和高存储密度,以及低功耗进行了优化。为了放置这些冷存储服务器,Facebook特意建立了独立的、简化的数据中心。
由于许多公司生成并需要保存的数据量急剧增长,各大云提供商推出了一种可以代替传统备份产品的云服务。作为云服务来提供的冷存储正在改变企业组织存储和提供大量信息的方式。但一大问题是,冷存储用于备份是否更划算。
亚马逊网络服务、谷歌云平台,以及微软Azure现在都提供云存储服务。它们各自采用的方法各不相同,那么它们彼此相比又如何?
应对数据洪水
几乎所有调研公司都预测,云服务市场会继续增长,而且快速增长。Gartner最近表示,云在今年的新IT支出中会占据大头。今年对这个领域来说将是关键的一年,因为私有云开始让位于混合云,近一半的大企业会在2017年底之前部署混合云。那么,企业在生成多少数据呢?思科估计,全球数据中心流量完全进入了泽字节(ZB)时代,将从2014年的3.4 ZB增加到2019年的10.4 ZB。数据中心流量中迅速增长的一部分就是云流量,到2019年将在预测的10.4 ZB中占有8.6 ZB。
由于谷歌和亚马逊已经在冷存储市场中,所以微软也决定加入游戏。去年4月,微软宣布正式推出Cool Blob Storage,这是面向对象数据的低成本存储服务。
有什么用场?
微软当时宣布Cool Blob存储服务时,列出了几种典型的使用场合,比如备份、媒体内容、科学数据、合规和归档数据。实际上,任何很少访问的数据都很适合使用冷存储:法律数據、信息的第三个副本、因合规而需要保留较长时间的数据和归档信息,这些都是典型的例子。那么,冷存储与较传统的存储方案有何不同呢?
不妨先从定义开始说起,冷存储的定义是,这是存储非活跃数据的一种操作模式和存储系统。部署冷存储后,预计数据检索时间会超出在线或生产应用通常被认为可接受的范围。部署冷存储是为了节省资金和运营成本。
实际上,不是所有的冷存储架构都是同样设计的。牢记这一点,不妨看看三大提供商的冷存储方案。
谷歌Nearline:谷歌在2015年发布了Nearline归档存储产品,很快就被认为是市场上具有颠覆性的解决方案。为什么?因为它直接承诺:检索时间非常短(只有几秒钟)。与市场领导者AWS Glacier相比,这相当快。谷歌声称,Nearline提供的可用性比公司的标准存储产品低一点,延迟高一点,不过成本较低。Nearline“检索首个字节的时间”在2秒到5秒。如果看一下其他解决方案,可以说谷歌Nearline真正改变了游戏规则。不过它有几个问题。
一个问题是,谷歌Nearline将数据检索速度限制在每个存储的TB为4MBps。存储使用量增加后,这种吞吐量可线性扩展。所以,如果你发觉需要下载大量数据,可能需要等一阵子。不过,如果遇到这种情形:需要比默认的4MBps更快地从谷歌云存储Nearline检索内容。一项名为On-Demand I/O的功能让你可以提高吞吐量。有两点需要牢记:
1. 默认情况下,On-Demand I/O已被关闭。
2. On-Demand I/O仅适用于Nearline存储,对标准存储或低可用持久存储I/O(Durable Reduced Availability Storage I/O)没有影响。
总的来说,谷歌承诺提供一种低成本、高度持久、高可用性的存储服务,用于数据归档、在线备份和灾难恢复。数据立即可用,不是等待几小时或数天。由于3秒的平均响应时间和每月每GB仅1美分的价格,Nearline为你提供了出色的性能和低成本。此外,它让你可以存储“无限量”数据,并通过谷歌云平台Storage API获得快速访问,数据检索的响应时间大约是3秒。
最后,很酷的地方是它所提供的功能。除了On-Demand I/O外,还能获得传输服务。这基本上让你可以从亚马逊S3、HTTP/HTTPS网站和本地环境之类的地方导入数据。这个过程可自动化,实现全面的生命周期管理。
AWS Glacier:作为最早的领先冷存储解决方案之一,Glacier是一种安全、成本极低的存储服务,用于数据归档和在线备份。客户可以存储大量或少量的数据。据亚马逊声称,起价低至每月每GB只要0.01美元,与本地解决方案相比大大节省了成本。为了保持低成本,Glacier针对不常访问的数据进行了优化,几小时的检索时间对这类数据而言是适合的。同样是检索和提供1TB的数据,使用Glacier与使用Nearline的体验会不一样。Glacier在大约3到5小时内提供该存储对象。相比之下,下载4小时后,谷歌Nearline客户下载1TB数据的任务才完成5%,大约需要69个小时才能全部完成。
在Glacier环境中,数据存储在“归档”中。归档可以是任何数据,比如照片、视频或文档。可以将某个文件作为归档文件来上传,也可以将多个文件聚合成一个TAR或ZIP文件,然后作为一个归档文件来上传。
一个归档文件可能有40TB这么大。可以在亚马逊Glacier中存储无限数量的归档文件和数据。每个归档文件在创建时被分配一个独特的归档ID,归档的内容是不可变的,这意味着归档文件创建后就无法更新。
亚馬逊Glacier使用“保管库”(Vault)作为存储归档的容器。可以在AWS管理控制台中查看保管库列表,使用AWS SDK对保管库执行各种操作,比如创建保管库、删除保管库、锁住保管库、列出保管库元数据、检索保管库清单、标记保管库以便过滤,以及配置保管库通知。此外,还可以为每个保管库设置访问策略,允许或禁止用户执行特定活动。在一个AWS账户下,最多可以有1000个保管库。
一旦你的数据进入保管库,管理员就有机会使用一些细粒度的控制功能,包括清点库存、访问控制、访问策略、保险库锁住(比如一次写入多次读取控制)、审核记录、集成的生命周期管理、高级和低级的AWS API集成、数据保护和数据可靠性。
微软Cool Blob Storage:去年4月推出的Cold Blob存储服务是微软追赶领头羊的举措。
Azure冷存储层经过了优化,用于存储不常访问、长期存储的数据。Cool Blob Storage每月每GB的成本从0.01美元到0.048美元不等,这取决于地理区域和存储的数据总量。“热”Blob存储层(用于存储频繁访问的数据)的同类价位是每GB 0.0223美元到0.061美元。在一些情况下,将部分数据存储在冷存储层可节省50%以上的成本。
微软强调,你可以基于对象数据的访问模式,选择热访问层或冷访问层来存储对象数据。要关注的一些功能:API集成(但仅与其他现有的Blob存储服务集成)、安全、可扩展性、多地理区域分布和99%的可用性(热存储层提供99.9%)。
面对挑战
Nearline、Cool Blob Storage和Glacier功能强大、价位合理,但端到端集成和管理仍是个挑战。备份和存储方面的管理功能至关重要。
比如说,AWS Glacier让客户可以设置策略,但只允许用户每天检索一定数量的数据。此外,用户还可以设置策略,只在免费套餐的范围内检索数据。相比谷歌Nearline,Glacier似乎缺少同样的细粒度。至于微软,只要你的数据一开始就存储在微软云中,Cool Blob Storage的表现就很棒。
这个领域没有绝对的赢家。这取决于冷存储特定的使用场合。你在构建自己的冷存储架构时,要确保基于最佳集成实践来搭建环境。这意味着你要了解存储何种类型的数据、保留策略、定价以及恢复期间需要多快获得信息。