admin管理员组

文章数量:1648309

关于副本的问题:

在swift中,副本涉及到冗余的处理。副本数量的多少,就代表了在swift系统中,该对象被存储了几份,下面以操作说明:

1.1以账户服务器为例

首先我们可以通过命令swift-ring-builderaccount.builder查看账户服务副本数目:


结果为3个副本,然后我们确认是否账户数据库为三分,以数据库

11ae9132c974c131329d4e05475d7de8.db为例:

通过命令:find / -name11ae9132c974c131329d4e05475d7de8.db


可以看出数目为3份,分别存储在sdb1,sdb2,sdb3

1.2.以objects为例

我们可以通过命令swift-ring-builderobject.builder查看对象服务副本数目:


结果副本数为4,然后我们再确认是否对象数据位4份,以对象文件:

1318184537.46448.data为例:

通过命令:find / -name1318184537.46448.data


可以看出对象存储的分数的却为4。


以/mnt/sdb1/1/node/sdb1/accounts/18106/de8/11ae9132c974c131329d4e05475d7de8/11ae9132c974c131329d4e05475d7de8.db为例:

 

11ae9132c974c131329d4e05475d7de8:对account名进行的hash算法而获得;

11ae9132c974c131329d4e05475d7de8.db:账户服务器对应的数据库文件

DATADIR:accounts

(part)分区:/18106/

Suffix:/de8/--hash的最后3位:11ae9132c974c131329d4e05475d7de8

Drive:/sdb1/

root:(/srv/1/node)->/mnt/sdb1/1/node/

本文标签: 账户源码服务器SwiftOpenStack