【技术实现步骤摘要】
一种无锁多控制器磁盘阵列系统
[0001]本专利技术属于数据存储
,具体涉及一种无锁多控制器磁盘阵列系统
。
技术介绍
[0002]RAID(Redundant Array of Independent Disks)
被广泛应用在存储系统中,主要分为软
RAID
和硬
RAID。
相比于用
RAID
卡组装的硬
RAID
,软件实现的软
RAID
更加灵活多样,是国内存储厂商
RAID
的主要实现方式
。
软
RAID
能高效地工作在单个存储节点
(
控制器
)
上,但不满足生产环境的软硬件冗余需求,因此为了提高数据的安全性,产生了多控阵列系统
。
多控阵列系统通常由两个及以上的控制器组成,每个控制器管理自己的软硬件资源,共用数据盘资源,为了实现无缝故障接管或负载均衡,多控制器需要实现多控多活
(
多个控制器能同时读写相同的存储资源
)
,控制器之间通常共享部分资源,如缓存
、
配置等
。
控制器共享缓存是多控设计的重难点,它关系着系统性能和数据一致性,是实现多控多活和负载均衡的关键
。
多个控制器之间通常采用锁来保证缓存的一致性,这种实现方式产生了锁竞争,降低了存储系统性能,因此需要提出一种新的多控阵列架构,实现高性能
、
高 ...
【技术保护点】
【技术特征摘要】
1.
一种无锁多控制器磁盘阵列系统的设计方法,其特征在于,将磁盘阵列系统设计为包括私有客户端和存储服务端;存储服务端中,四块硬盘
Disk0、Disk1、Disk2、Disk3
组成一个
RAID
,
RAID
中每块硬盘相同偏移的地址空间组成条带集合
[C0、C1、C2
…
Cn]
,
n
为正整数,条带集合代表了系统上的存储资源,每一个存储节点即控制器对该条带集合具有查看权限,但只对归属条带具有读写权限;条带集合
[C0、C1、C2
…
Cn]
对应的偏移为
[0、1、2
…
n]
,条带集合中的这些条带按照偏移均衡地归属于存储节点,存储节点只对其归属资源有读写权限,这些资源在多控阵列中有且只能有一个属主,是独占资源;条带大小
、
条带属主和控制器信息构成数据管理
MAP
;在内核中,块设备的
IO
请求为
BIO
,每个
BIO
中包含请求的起始地址
bi_sector
和数据长度
bi_size
,私有客户端设计为执行以下业务流程:
(1)BIO
提交私有客户端,数据地址加上逻辑卷偏移得到
BIO
在
RAID
上的绝对地址;
(2)
根据存储节点
RAID
的条带大小和
BIO
在
RAID
上的绝对地址,将
BIO
切割为带有条带偏移标签的子
BIO
;
(3)
将子
BIO
的数据偏移减去逻辑卷偏移,得到子
BIO
在逻辑卷上的偏移地址;
(4)
根据子
BIO
在逻辑卷上的偏移地址和即存储节点的数据管理
MAP
,得到每一个子
BIO
的对应路径,从而发送
IO
请求给存储节点
。2.
如权利要求1所述的方法,其特征在于,私有客户端和存储服务端共同维护着数据管理
MAP
,如图4所示,在私有客户端链接存储服务端之前,存储服务端的
MAP
信息是同步并且一致的,即存储节点的
ID
是全局唯一且不可改变的,新存储节点的加入可以接替下线存储节点的
ID
;在私有客户端接入存...
【专利技术属性】
技术研发人员:邓玲,田鹏,刘彬彬,徐晗,赵彬,
申请(专利权)人:北京计算机技术及应用研究所,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。