首页 > 编程语言 > 详细

openstack关联:swift存储原理

时间:2015-03-03 02:27:58      阅读:353      评论:0      收藏:0      [点我收藏+]
众所周知:swift存储时要初期化3个ring,这个容易理解。对rebalance理解起来有困难。现分析如下:
先看这张图:
bubuko.com,布布扣
(因为一般1个region中的1个zone中要做3个对象复制)
利用上图指示的关系,假如我们要存入一个对象,首先通过对象的account/container/object的md5值的前四个字节(32位)右移动part_shift位,得到具体对象对应的分区号,然后通过replica2part2dev_id(备份到分区到设备的映射), 找到当前分区对应的三个备份设备的Id,获得id后从devs里面得到具体的dev,因dev里面存有设备的ip,port,以及存储数据的磁盘,分别创建请求这三个设备,将数据存入设备上。
待续。。。

openstack关联:swift存储原理

原文:http://blog.chinaunix.net/uid-7374279-id-4846870.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!