openstack swift系列-----数据模型及架构(1)
2015-07-14 08:25
369 查看
本系列的目的是为了使大家熟悉swift的不同组件以及它们是如何协同工作来提供持久性、可扩展性、高并发的对象存储服务。
Swift Data Model
Openstack Swift结合三个概念为用户提供存储非结构化数据的服务:租户(account)、容器(Container)、对象(Object)。通过使用三者中的一个及多个使系统能够确定数据的唯一存储路径。
/租户
租户存储位置是是名字唯一的存储区域,它包含了租户的元数据信息、该租户的容器列表。需要注意的是,在swift中,一个租户并不是通常所说的用户标示。你可以这么理解,租户就是一块存储区域。
/租户/容器
容器存储位置是用户在租户内部定义的存储区域,用来存储容器的元数据信息以及在容器中存储的对象列表。
/租户/容器/对象
对象存储位置是对象数据及其元数据所存储的位置。
由于各个部分组合在一起构成了存储位置,容器及对象的名称在一个集群中不必是唯一的。如果相同名字的对象被上传到不同的容器或租户区域中,那么它们都有唯一的存储路径。如图所示,对象名称为ObjectBlue的对象存储路径分别为:
/AccountA/Container1/ObjectBlue
/AccountA/Container2/ObjectBlue
/AccountB/Container1/ObjectBlue
我们在以上部分介绍了存储路径及其组成结构,在接下来的部分将分别进行深入介绍。
Swift Data Model
Openstack Swift结合三个概念为用户提供存储非结构化数据的服务:租户(account)、容器(Container)、对象(Object)。通过使用三者中的一个及多个使系统能够确定数据的唯一存储路径。
/租户
租户存储位置是是名字唯一的存储区域,它包含了租户的元数据信息、该租户的容器列表。需要注意的是,在swift中,一个租户并不是通常所说的用户标示。你可以这么理解,租户就是一块存储区域。
/租户/容器
容器存储位置是用户在租户内部定义的存储区域,用来存储容器的元数据信息以及在容器中存储的对象列表。
/租户/容器/对象
对象存储位置是对象数据及其元数据所存储的位置。
由于各个部分组合在一起构成了存储位置,容器及对象的名称在一个集群中不必是唯一的。如果相同名字的对象被上传到不同的容器或租户区域中,那么它们都有唯一的存储路径。如图所示,对象名称为ObjectBlue的对象存储路径分别为:
/AccountA/Container1/ObjectBlue
/AccountA/Container2/ObjectBlue
/AccountB/Container1/ObjectBlue
我们在以上部分介绍了存储路径及其组成结构,在接下来的部分将分别进行深入介绍。
相关文章推荐
- Ubuntu 12.04 OpenStack Swift单节点部署手册
- openstack Swift Grizzly TypeError: dist must be a Distribution instance
- Ceph部署(二)RGW搭建
- OPENSTACK SWIFT API(中文版本)
- [QA] OpenStack Swift 组件搭建成功后,重启机器失败
- 开始学习swift啦。第一天-01
- Swift 函数Count,Filter,Map,Reduce
- Swift值字典使用
- swift 集合类
- 改变状态栏和导航栏的透明度
- swift 可选类型,强制拆包,隐性拆包
- swift Bool和元组(Turple)
- swift 字符串
- Swift学习笔记系列——(7)枚举
- [Swift] 输出语句 简单赋值 转换类型 数组 字典
- swift篇第三期:类、枚举、结构体
- Swift学习笔记系列——(6)闭包
- swift数组
- swift语言的学习笔记十二(初始化方法)
- swift与OC之间不得不知道的21点