什么是对象存储

截止2012年底,1.3万亿的对象被存储在亚马逊S3——这个世界上最大以及最广为人知的对象存储系统中。当时,这一数字每天以超过10亿个对象的速度增加着,因此2万亿大关实为指日可待。

对象存储比传统的文件系统存储在规模上要大得多,这是由于前者比后者着实要简单得多。对象存储系统并非将文件组织成一个目录层次结构,而是在一个扁平化的容器组织中存储文件(在亚马逊S3系统中被称作“桶”),并使用唯一的ID(在S3中被称作“关键字”)来检索它们。其结果是对象存储系统相比文件系统需要更少的元数据来存储和访问文件,并且它们还减少了因存储元数据而产生的管理文件元数据的开销。这意味着对象存储能够通过增加节点而近乎无限制地扩展规模。

可靠性是在普通的硬盘和磁盘驱动器上通过不同服务器和地点间的对象复制实现的。如果你设置了你自己的解决方案,比如使用OpenStack的Swift,那么你就可以配置存储区域和副本的数量,从而满足自身的需求。(OpenStack建议一个生产系统至少有5个节点。)对于标准的亚马逊S3系统,亚马逊承诺了9个9S“持久性”。如果你的数据保护需求不是那么极端,那么你可以利用“减少冗余存储”(2个9s“持久性”)选项来节省一些钱。

你在一个对象存储系统中获得的功能通常是最少的。你能够存储、检索、复制和删除文件,还可以控制哪些用户可以做哪些事,而这就是全部了。如果你想要搜索或是拥有一个其他应用程序可以借鉴的对象元数据中央存储库,那么你通常不得不自己实现它。亚马逊S3和其它对象存储系统提供REST API,使得程序员能够使用这些容器和对象。SoftLayer是少有的向用户提供其对象存储的搜索功能的公共云。

最后,对象存储系统的HTTP接口允许全球各地的用户快速、方便地访问文件。(例如,亚马逊S3系统中的每一个文件都有一个唯一的基于亚马逊位置、“桶”名和文件名的URL。)当然,相比于从NAS中访问一个文件,你将需要等待更长的时间,但是你不能因此否认其所带来的方便。

除了显著放缓的吞吐量,相比于一个传统的文件系统而言,对象存储的另一大缺点是数据的一致性只在最终获得。每当你更新一个文件,在请求返回最新版本之前,你可能不得不等待,直到这一更改被传播到所有副本才可以。这就使得对象存储不适用于频繁更改的数据。但是它非常适合那些不常变化的数据,比如备份、档案、视频和音频文件、以及虚拟机映像。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值