一种域地址变更方法、装置、设备及可读存储介质制造方法及图纸

技术编号:35112855 阅读:9 留言:0更新日期:2022-10-01 17:28
本发明专利技术公开一种域地址变更方法、装置、设备及可读存储介质,涉及存储技术领域。方法包括:当获取域地址变更请求时,根据RAID条带长度,计算待变更地址在地址空间对应的RAID条带编号;从缓存层中获取与待变更地址的RAID条带编号相对应的域地址信息;更新待变更地址的域地址信息。通过缓存域计算结果,降低由计算方式获取域地址的频率,对于常用域地址来说,采用查询方式获取域地址,节约获取常用域地址的时间,提高RAID整体性能;域变更时,通过引用计数和回调函数的方式追踪域地址对应的地址空间在RAID层的使用状态,无需暂停RAID全部业务,避免变更过程导致RAID的性能骤降。避免变更过程导致RAID的性能骤降。避免变更过程导致RAID的性能骤降。

【技术实现步骤摘要】
一种域地址变更方法、装置、设备及可读存储介质


[0001]本专利技术涉及存储
,特别涉及一种域地址变更方法、装置、设备及可读存储介质。

技术介绍

[0002]四控存储系统是目前统一存储的主流控制器架构,四控系统使用四个控制器分别备份,实现四个控制器性能叠加。此外,根据需求也容易扩展为八控存储系统或减配到双控存储系统。四控系统将地址空间划分为四个域,空间隔离避免域间信息交叉。空间的域划分由用户层进行,虚拟空间结构保证域的独立控制器访问,域划分空间的方案免除域外部的地址空间访问,避免资源抢占问题,提高了存储系统性能。
[0003]RAID(Redundant Arrays of Independent Disks,独立磁盘冗余阵列),采用多个独立的磁盘组成磁盘系统,实现比单块磁盘更好的存储性能和更高的可靠性。应用四控系统的RAID遵循四域划分规则,RAID内部地址空间相应地划分为四个域。由于这四个域必须与四控系统的域划分保持一致,因此,RAID在运行时需要实时查询地址空间对应的域。现有技术中,通常以条带为单位对RAID的地址空间进行管理,RAID内部实现域与条带的对应,实现地址空间转化。
[0004]RAID在运行时实时查询地址空间对应的域,无疑增加RAID层的原生IO的运行时延;同时,由于域变更时,需要保证该与没有正在被使用,当地址空间对应域变更时,需要通过停止RAID业务的方式完成地址空间对应域的变更。通过暂停RAID全部业务的方式来保证上述域变更条件,频繁的域变更行为将严重影响RAID的整体性能。因此,亟需一种域地址变更方法、装置、系统和可读存储介质,无需以暂停RAID全部业务的方式保证域变更环境,提高域变更过程中RAID的整体性能。

技术实现思路

[0005]为了解决现有技术的问题,改善域变更时RAID的整体性能,本专利技术实施例提供域地址变更方法、装置、设备及可读存储介质,在域变更时,无需以暂停RAID全部业务的方式保证域变更环境,提高域变更过程中RAID的整体性能。为了解决上述的一个或多个技术问题,本专利技术采用的技术方案如下:第一方面,提供一种域地址变更方法,包括:当获取域地址变更请求时,根据RAID条带长度,计算待变更地址在地址空间对应的RAID条带编号;从缓存层中获取与待变更地址的RAID条带编号相对应的域地址信息,其中,缓存层包括:域缓存池和域计算模块,域缓存池包括:域结构链表,所述域结构链表由域结构级联而成,域结构包括:RAID条带编号,与RAID条带编号对应的域地址信息,以及用于表征域结构被获取或被释放的引用次数;更新待变更地址的域地址信息。
[0006]进一步地,从缓存层中获取与待变更地址的RAID条带编号相对应的域地址信息包括:在域缓存池中查询待变更地址的RAID条带编号;若域缓存池中包括待变更地址的RAID条带编号,则返回与RAID条带编号相对应的域地址信息。
[0007]进一步地,在域缓存池中查询待变更地址的RAID条带编号包括:计算与待变更地址的RAID条带编号相对应的哈希节点编号;轮询与哈希节点编号相串联的域结构中的RAID条带编号,与待变更地址的RAID条带编号进行比对。
[0008]进一步地,计算与待变更地址的RAID条带编号相对应的哈希节点编号包括:根据公式H=N%L计算与待变更地址的RAID条带编号相对应的哈希节点编号,其中,H表示哈希节点编号,N表示待变更地址的RAID条带编号,L表示哈希表长度。
[0009]进一步地,若域缓存池中未包括待变更地址的RAID条带编号,则通过域计算获取与待变更地址的RAID条带编号相对应的域地址信息。
[0010]进一步地,通过域计算获取待变更地址的RAID条带编号相对应的域地址信息之后还包括:根据待变更地址的RAID条带编号,待变更地址的RAID条带编号相对应的域地址信息,建立相应的新建域结构;将新建域结构缓存至域缓存池。
[0011]进一步地,将新建域结构缓存至域缓存池包括:若域结构链表容量已满,则从删除域结构链表尾部的一个域结构;将删除尾部域结构的域结构链表整体向域结构链表的尾部平移一个域结构单位;将新建域结构添加至域结构链表的头部。
[0012]进一步地,将新建域结构缓存至域缓存池还包括:若域结构链表容量未满,则将域结构链表整体向域结构链表的尾部平移一个域结构单位;将新建域结构添加至域结构链表的头部。
[0013]进一步地,更新待变更地址的RAID域地址信息包括:获取待变更地址的条带编号数组,条带编号数组包括依次排列的待变更地址的RAID条带编号;启动变更任务,将条带编号数组中的待变更地址的RAID条带编号所对应的原域地址更新为新域地址。
[0014]进一步地,启动变更任务,将条带编号数组中的待变更地址的RAID条带编号所对应的原域地址更新为新域地址包括:获取条带编号数组中,引用次数不为零的RAID条带编号数量;判断引用次数是否大于零;若否,则立即以新域地址更新原域地址,完成域地址变更方法。
[0015]当域结构被获取时,引用次数增加;当域结构被释放时,引用次数减少。
[0016]进一步地,若判断引用次数是否大于零的结果为是,则监控条带编号数组中,引用次数大于零的RAID条带编号,当有RAID条带编号对应的引用次数变为零时,调用回调函数以表示引用次数不为零的RAID条带编号数量;当引用次数不为零的RAID条带编号数量为零时,立即以新域地址更新原域地址,完成域地址变更方法。
[0017]进一步地,调用回调函数以表示引用次数不为零的RAID条带编号数量包括:将引用次数不为零的RAID条带编号数量减一后,作为当前引用次数不为零的RAID条带编号数量。
[0018]第二方面,提供一种域地址变更装置,包括:条带计算模块,域地址获取模块,域地址更新模块;条带计算模块,用于当获取域地址变更请求时,根据RAID条带长度,计算待变更地址在地址空间对应的RAID条带编号;域地址获取模块,用于从缓存层中获取与待变更地址的RAID条带编号相对应的域地址信息,其中,缓存层包括:域缓存池和域计算模块,域缓存池包括:域结构链表,域结构链表由域结构级联而成,域结构包括:RAID条带编号,与RAID条带编号对应的域地址信息,以及用于表征域结构被获取或被释放的引用次数;域地址更新模块,用于更新待变更地址的域地址信息。
[0019]第三方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,上述处理器执行上述计算机程序时实现上述第一部分记载方法的步骤。
[0020]第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现上述第一部分记载方法的步骤。
[0021]本专利技术实施例提供的技术方案带来的有益效果是:1. 通过缓存域计算结果,降低由计算方式获取域地址的频率,如此,对于常用域地址来说,采用查询方式获取域地址,能够节约获取常用域地址的时间,改善IO时延,提高RA本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种域地址变更方法,其特征在于,所述方法包括:当获取域地址变更请求时,根据RAID条带长度,计算待变更地址在地址空间对应的RAID条带编号;从缓存层中获取与待变更地址的RAID条带编号相对应的域地址信息,其中,所述缓存层包括:域缓存池和域计算模块,所述域缓存池包括:域结构链表,所述域结构链表由域结构级联而成,所述域结构包括:RAID条带编号,与所述RAID条带编号对应的域地址信息,以及用于表征所述域结构被获取或被释放的引用次数;更新待变更地址的域地址信息。2.根据权利要求1所述的一种域地址变更方法,其特征在于,所述从缓存层中获取与待变更地址的RAID条带编号相对应的域地址信息包括:在所述域缓存池中查询所述待变更地址的RAID条带编号;若所述域缓存池中包括所述待变更地址的RAID条带编号,则返回与所述RAID条带编号相对应的域地址信息。3.根据权利要求2所述的一种域地址变更方法,其特征在于,所述在所述域缓存池中查询所述待变更地址的RAID条带编号包括:计算与所述待变更地址的RAID条带编号相对应的哈希节点编号;轮询与所述哈希节点编号相串联的域结构中的RAID条带编号,与所述待变更地址的RAID条带编号进行比对。4.根据权利要求3所述的一种域地址变更方法,其特征在于,所述计算与所述待变更地址的RAID条带编号相对应的哈希节点编号包括:根据公式H=N%L计算与所述待变更地址的RAID条带编号相对应的哈希节点编号,其中,H表示哈希节点编号,N表示待变更地址的RAID条带编号,L表示哈希表长度。5.根据权利要求2所述的一种域地址变更方法,其特征在于,若所述域缓存池中未包括所述待变更地址的RAID条带编号,则通过域计算获取与所述待变更地址的RAID条带编号相对应的域地址信息。6.根据权利要求5所述的一种域地址变更方法,其特征在于,所述通过域计算获取所述待变更地址的RAID条带编号相对应的域地址信息之后还包括:根据所述待变更地址的RAID条带编号,所述待变更地址的RAID条带编号相对应的域地址信息,建立相应的新建域结构;将所述新建域结构缓存至所述域缓存池。7.根据权利要求6所述的一种域地址变更方法,其特征在于,所述将所述新建域结构缓存至所述域缓存池包括:若所述域结构链表容量已满,则从删除所述域结构链表尾部的一个域结构;将删除尾部域结构的域结构链表整体向所述域结构链表的尾部平移一个域结构单位;将所述新建域结构添加至所述域结构链表的头部。8.根据权利要求7所述的一种域地址变更方法,其特征在于,所述将所述新建域结构缓存至所述域缓存池还包括:
若所述域结构链表容量未...

【专利技术属性】
技术研发人员:朱红玉贺坤
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1