使用对象存储和商业硬件是进入云计算[注]服务的一种方案,但并非***方式。当开始支持新的、云架构下的应用(这类应用是根据RESTful应用编程接口[RESTful API]编写的)的存储需求时,对象存储将会非常有意义。然而对于当下的应用,客户通常喜欢追求其他方法,比如利用公有云[注]块存储服务、云存储网关以及紧密联合一个或多个公有云的第三方产品。
那么,如何判断哪种工作负载和用例是适合公有云存储的?从开销和扩展性的角度云计算可能看起来有吸引力,不过比起其他方案,云计算能够更好地满足特定类型的工作负载和存储用例。
让我们首先了解一点背景知识。自从Taneja Group在2008年***提出面向企业客户的公有云存储方案之后,这套解决方案已经得到极大发展。尽管亚马逊依然是这方面的***,但当今客户拥有了更多厂商以及存储方案的选择权,可以追求***性价比的服务。不断创新和不断升级的竞争使得云存储方案变得比以往更具吸引力。
当今服务于企业市场的主流公有云厂商倾向于提供三项基本存储服务:紧耦合云平台的块存储服务(例如,亚马逊的弹性块存储[EBS]服务、惠普云块存储服务、Windows Azure二进制块存储服务);独立对象存储服务(例如,亚马逊简单存储服务、惠普云对象存储服务、Windows Azure二进制存储服务);内容传输网络服务(例如亚马逊CloudFront、惠普云CDN、Windows Azure CDN)。对象存储方案是开发者基于下一代框架编写云应用时主要的兴趣点,而块存储方案则主要为了满足当前应用老旧的存储要求。
与此同时,公有云存储厂商通常提供额外的存储相关服务来满足特定用例的需求,例如关系型和非关系型数据库应用、数据库同步、长期归档存储(比如亚马逊Glacier)以及云存储网关(比如AWS存储或微软StorSimple云集成企业存储)。另外也有一系列的第三方云备份产品可供选择。
在这样的背景下,最适合云环境的工作负载和存储用例将在很大程度上受到应用和服务等级需求的支配。以规划和评估的角度来看这样做很有用,它可以基于两个关键维度的考虑来限定你对存储的需求:数据的价值/敏感性,以及存储用例和工作负载的性质。
简言之,数据价值/敏感性越大,对安全性和合规性的需求就越高。尽管公有云的安全性已经稳步提升,但这并不能够解决高度受管控数据的存储需求,对于此类数据必须满足严密的安全性、隐私以及/或者其他合规性标准。诸如涵盖敏感的医疗、财务等信息均受控于行业法规,比如美国国内的健康保险可移植性与责任法案、支付卡行业数据安全标准。联邦和州政府数据的许多类型也在这个受控目录内。如果你的数据无法承受哪怕最轻微的安全威胁、非授权访问或数据丢失,那么就不能存在公有云中。
公有云存储应用往往无法达到生产应用所要求的性能等级和可用性,因此,厂商不愿意在他们的服务等级条款中包含任何超越最小可用性的责任义务(并且没有任何有关性能的保证)。例如AWS保证其弹性计算云、弹性块存储[EBS]的基础设施具有99.95%可用性(即相当于每个月宕机21分钟),但是就算客户的工作负载宕机了,此类保证依旧可以得到满足,因为可用性的定义是至少有一个实例能够响应外部连接同时至少一个挂载的磁盘卷能够进行读写和输入输出。
公有云存储的***应用领域是数据价值/敏感性非常低,并专注于二层或三层用例的领域,比如开发/测试、备份、灾难恢复、归档等。在上述情景下公有云存储提供了理想的解决方案,因为存储性能、可用性和安全性需求是相对放松的。尽管如此,客户仍可以利用云计算极大的可扩展性和令人信服的费用。