360SDN.COM

云存储系统OpenStack Object Storage(Swift)介绍

来源:  2017-01-08 14:23:10    评论:0点击:

OpenStack是一个美国国家航空航天局和Rackspace合作研发的开源云计算项目,并成为Apache下的一个重要开源项目,目前已经发展到了180家公司参与其中。
OpenStack Object Storage(Swift)是OpenStack开源云计算项目的子项目之一。Swift的目的是使用普通硬件来构建冗余的、可扩展的分布式对象存储集群,存储容量可达PB级。OpenStack Object Storage 最初由 Rackspace 采用Python语言开发,并于 2010 年 7 月贡献给 OpenStack ,作为该开源项目的一部分。它的目的是用于托管 Rackspace的 Cloud Files service ,原始项目代号是 swift,所以沿用至今。
在分布式对象存储中的一个关键问题是数据该如何存放。Ring是Swift中最重要的组件,用于记录存储对象与物理位置间映射关系。在涉及查询account、container、object信息时就需要查询集群的ring信息。
 
先来看一下Swift文档中关于Ring的描述:
       Ring用来确定数据驻留在集群中的位置。有单独对应于Account数据库、container数据库和单个object的ring。
       Ring中每个partition在集群中都(默认)有3个replica。每个partition的位置由ring来维护,并存储在映射中。
       Ring使用zone的概念来保证数据的隔离。每个partition的replica都确保放在了不同的zone中。一个zone可以是一个硬盘,一个服务器,一个机架,一个交换机,甚至是一个数据中心............
.......
 
在上述Ring的特性描述中提到了Ring使用zone、device、partition和replica等等来维护数据和磁盘间的映射信息。那么在Ring的背后采用什么算法,使用了什么机制来保证数据的安全、高效和可扩展呢?这些概念对于数据存储带来了什么好处?本文逐步深入探讨了Swift如何通过Ring组件来实现冗余的、可扩展的目的。


项目主页:http://www.openstack.org/software/
为您推荐

友情链接 |九搜汽车网 |手机ok生活信息网|ok生活信息网|ok微生活
 Powered by www.360SDN.COM   京ICP备11022651号-4 © 2012-2016 版权