CN105808155A - 基于双控制器的读写锁方法及装置 - Google Patents

基于双控制器的读写锁方法及装置 Download PDF

Info

Publication number
CN105808155A
CN105808155A CN201410851903.0A CN201410851903A CN105808155A CN 105808155 A CN105808155 A CN 105808155A CN 201410851903 A CN201410851903 A CN 201410851903A CN 105808155 A CN105808155 A CN 105808155A
Authority
CN
China
Prior art keywords
interval
write
node
read
controller
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410851903.0A
Other languages
English (en)
Other versions
CN105808155B (zh
Inventor
李浩然
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhou Yunke Beijing Technology Co ltd
Wuhan Shenzhou Digital Cloud Technology Co ltd
Original Assignee
Divine Land Beijing Yun Ke Data Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Divine Land Beijing Yun Ke Data Technologies Co Ltd filed Critical Divine Land Beijing Yun Ke Data Technologies Co Ltd
Priority to CN201410851903.0A priority Critical patent/CN105808155B/zh
Publication of CN105808155A publication Critical patent/CN105808155A/zh
Application granted granted Critical
Publication of CN105808155B publication Critical patent/CN105808155B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Mobile Radio Communication Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于双控制器的读写锁方法及装置,涉及磁盘数据读写技术领域,本发明通过确定目标读写区间所属的区间块,在所确定到的区间块的红黑树上查找该区间块所属的Area节点,并在查找到的Area节点的红黑树上查找目标读写区间,若未找到,则创建目标读写区间对应的Block节点,并将创建的Block节点插入到该Area节点所属的红黑树中;在Block节点下创建SubLock节点,查找SubLock节点中存储地址空间冲突的节点,若存储地址空间冲突的节点存在读写冲突,则增加SubLock节点的冲突计数;判断冲突计数是否为初始值,若是,则完成对目标读写区间的锁定。本发明通过各步骤间的配合,从而既能够减少了通讯,又能更加精确的处理锁冲突。

Description

基于双控制器的读写锁方法及装置
技术领域
本发明涉及磁盘数据读写技术领域,特别涉及一种基于双控制器的读写锁方法及装置。
背景技术
在双控存储服务器中,可以将数个磁盘做成磁盘阵列(RedundantArraysofindependentDisks,RAID)卷组,从而提供高速、安全的数据存储服务。大部分RAID级别(例如RAID5)都需要将磁盘进行条带化管理,而对于一个条带的读写访问必须互斥,否则就会发生数据错误。例如Linux自带的开源RAID使用的是本地条带锁,但它不能满足双控制器对于RAID条带互斥的需求。并且在数据Cache层面,也必须要有对应的双控锁来控制对双控缓存(Cache)的读取与修改的互斥。
综上所述,在实际业务上需要的是一种双控的区间锁,可以对某一I/O范围或者条带范围进行锁定。并且,在对端控制器因异常下线的时候,本控制器的双控范围锁需要处理这样的异常以保证没有拿锁者进入无限等待状态。
要实现双控锁,必须依赖于双控通讯机制。在这里不讨论双控通讯的实现细节,仅假设存在这样的通讯机制:能够发送数据,能接收并处理数据,并在对端上线或下线时进行事件通知。
简单的方案是将整个存储地址空间(即所属的RAID卷组的存储空间)划分成固定的数据块Block(例如64K个单位),在两个控制器上保存这些Block的“所有者”信息(属于本地还是对端),如果在拿锁时该范围属于本地Block,则在本地Block上进行拿锁,否则向对端索要整个Block的所有权,在拿到所有权之后继续在Block上进行拿锁。
如果是读锁,实际上并不存在冲突,但必须等待对端完全读完才能释放Block的所有权,进而拿到Block的所有权,进而拿到锁,整个时间较长;
虽然某个Block范围属于对端,但对端持有的范围与本地想要拿锁的范围实际上并不存在冲突;
Block大小固定,不能随着不同的RAID级别灵活调整;
对于未创建的Block,在第一次拿锁时必然产生一次通讯,如果某个控制器并不实际参与io操作(例如未接光纤或光纤断开等情况),可能会产生很多不必要的通讯。
发明内容
为了提出一种既能够减少通讯,又能更加精确的处理锁冲突的基于双控制器的读写锁方法及装置;本发明提供了一种基于双控制器的读写锁方法,所述方法包括:
S1:将整个存储地址空间分割为M个区间块,并将所述M个区间块划分为等长的N个区间,所述N和M均为不小于1的整数;
S2:在每个区间块上存放一个红黑树的根节点,所述根节点用于保存Area节点,所述Area节点记录对应区域块的存储地址空间;
S3:在需要对目标读写区间进行锁定时,确定所述目标读写区间所属的区间块,在所确定到的区间块的红黑树上查找该区间块所属的Area节点,并在查找到的Area节点的红黑树上查找目标读写区间,若未找到所述目标读写区间,则创建所述目标读写区间对应的Block节点,并将创建的Block节点插入到该Area节点所属的红黑树中;
S4:在所述Block节点下创建SubLock节点,查找所述SubLock节点中存储地址空间冲突的节点,若所述存储地址空间冲突的节点存在读写冲突,则增加所述SubLock节点的冲突计数,每个SubLock节点代表一个保存存储地址空间的子锁;
S5:判断所述冲突计数是否为初始值,若是,则完成对所述目标读写区间的锁定。
其中,步骤S5中,若否,则等待所述目标读写区间被释放资源后,再对所述目标读写区间进行锁定。
其中,所述目标读写区间被释放资源,具体包括:
查找所述目标读写区间的SubLock节点中存储地址空间冲突的节点X,对每一个存在存储地址空间冲突和读写冲突的节点X,减少该节点X的冲突计数,若该节点X的冲突计数降到初始值,则完成该节点X对应的目标读写区间的锁定。
其中,步骤S2中,还包括:将每个区间分配给控制器,所述Area节点还记录有控制器标识;
当向属于对端控制器的目标读写区间进行锁定时,相应地,步骤S5中,对所述目标读写区间进行锁定之前,还包括:
向所述对端控制器发送转让请求,所述对端控制器在收到转让请求后,转让所述目标读写区间的所有权;转让完成后直接对所述目标读写区间进行锁定;
如果不能立即转让,则在本地释放资源之后,进行第二次目标读写区间所有权转让;如果仍然不能转让,则放弃转让,直接对所述目标读写区间进行锁定。
其中,步骤S2中,将每个区间分配给控制器,具体包括:
在区间上产生的第一个锁定请求时,会与对端控制器进行一次通讯,与对端控制器协商该区间的所有权,如果对方未持有该区间的所有权,则本端控制器获得该区间的所有权;否则本端控制器得知对端对该控制器的所有权;当双方同时发起对区间的所有权协商时,则使用随机数+控制器插槽号的方式决定优先级,优先级高的控制器获得该区间的所有权。
本发明还公开了一种基于双控制器的读写锁装置,所述装置包括:
初始化模块,用于将整个存储地址空间分割为M个区间块,并将所述M个区间块划分为等长的N个区间,所述N和M均为不小于1的整数;
节点生成模块,用于在每个区间块上存放一个红黑树的根节点,所述根节点用于保存Area节点,所述Area节点记录对应区域块的存储地址空间;
区间查找模块,用于在需要对目标读写区间进行锁定时,确定所述目标读写区间所属的区间块,在所确定到的区间块的红黑树上查找该区间块所属的Area节点,并在查找到的Area节点的红黑树上查找目标读写区间,若未找到所述目标读写区间,则创建所述目标读写区间对应的Block节点,并将创建的Block节点插入到该Area节点所属的红黑树中;
空间冲突模块,用于在所述Block节点下创建SubLock节点,查找所述SubLock节点中存储地址空间冲突的节点,若所述存储地址空间冲突的节点存在读写冲突,则增加所述SubLock节点的冲突计数,每个SubLock节点代表一个保存存储地址空间的子锁;
判断锁定模块,用于判断所述冲突计数是否为初始值,若是,则完成对所述目标读写区间的锁定。
其中,所述判断锁定模块,还用于若否,则等待所述目标读写区间被释放资源后,再对所述目标读写区间进行锁定。
其中,所述判断锁定模块,还用于查找所述目标读写区间的SubLock节点中存储地址空间冲突的节点X,对每一个存在存储地址空间冲突和读写冲突的节点X,减少该节点X的冲突计数,若该节点X的冲突计数降到初始值,则完成该节点X对应的目标读写区间的锁定。
其中,所述节点生成模块,还用于将每个区间分配给控制器,所述Area节点还记录有控制器标识;
所述装置还包括:
所有权转让模块,用于向所述对端控制器发送转让请求,所述对端控制器在收到转让请求后,转让所述目标读写区间的所有权;转让完成后直接对所述目标读写区间进行锁定;如果不能立即转让,则在本地释放资源之后,进行第二次目标读写区间所有权转让;如果仍然不能转让,则放弃转让,直接对所述目标读写区间进行锁定。
其中,所述节点生成模块,还用于在区间上产生的第一个锁定请求时,会与对端控制器进行一次通讯,与对端控制器协商该区间的所有权,如果对方未持有该区间的所有权,则本端控制器获得该区间的所有权;否则本端控制器得知对端对该控制器的所有权;当双方同时发起对区间的所有权协商时,则使用随机数+控制器插槽号的方式决定优先级,优先级高的控制器获得该区间的所有权。
本发明通过各步骤间的配合,从而既能够减少了通讯,又能更加精确的处理锁冲突。
附图说明
图1是本发明一种实施方式的基于双控制器的读写锁方法的流程图;
图2是本发明一种实施方式的基于双控制器的读写锁装置的结构框图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
图1是本发明一种实施方式的基于双控制器的读写锁方法的流程图;参照图1,所述方法包括:
S1:将整个存储地址空间分割为M个区间块,并将所述M个区间块划分为等长的N个区间,所述N和M均为不小于1的整数;
S2:在每个区间块上存放一个红黑树的根节点,所述根节点用于保存Area节点,所述Area节点记录对应区域块的存储地址空间;
S3:在需要对目标读写区间进行锁定时,确定所述目标读写区间所属的区间块,在所确定到的区间块的红黑树上查找该区间块所属的Area节点,并在查找到的Area节点的红黑树上查找目标读写区间,若未找到所述目标读写区间,则创建所述目标读写区间对应的Block节点,并将创建的Block节点插入到该Area节点所属的红黑树中;
S4:在所述Block节点下创建SubLock节点,查找所述SubLock节点中存储地址空间冲突的节点,若所述存储地址空间冲突的节点存在读写冲突,则增加所述SubLock节点的冲突计数,每个SubLock节点代表一个保存存储地址空间的子锁;
S5:判断所述冲突计数是否为初始值,若是,则完成对所述目标读写区间的锁定。
可选地,步骤S5中,若否,则等待所述目标读写区间被释放资源后,再对所述目标读写区间进行锁定。
可选地,所述目标读写区间被释放资源,具体包括:
查找所述目标读写区间的SubLock节点中存储地址空间冲突的节点X,对每一个存在存储地址空间冲突和读写冲突的节点X,减少该节点X的冲突计数,若该节点X的冲突计数降到初始值,则完成该节点X对应的目标读写区间的锁定。
可选地,步骤S2中,还包括:将每个区间分配给控制器,所述Area节点还记录有控制器标识;
当向属于对端控制器的目标读写区间进行锁定时,相应地,步骤S5中,对所述目标读写区间进行锁定之前,还包括:
向所述对端控制器发送转让请求,所述对端控制器在收到转让请求后,转让所述目标读写区间的所有权;转让完成后直接对所述目标读写区间进行锁定;
如果不能立即转让,则在本地释放资源之后,进行第二次目标读写区间所有权转让;如果仍然不能转让,则放弃转让,直接对所述目标读写区间进行锁定。
可选地,步骤S2中,将每个区间分配给控制器,具体包括:
在区间上产生的第一个锁定请求时,会与对端控制器进行一次通讯,与对端控制器协商该区间的所有权,如果对方未持有该区间的所有权,则本端控制器获得该区间的所有权;否则本端控制器得知对端对该控制器的所有权;当双方同时发起对区间的所有权协商时,则使用随机数+控制器插槽号的方式决定优先级,优先级高的控制器获得该区间的所有权。
本发明还公开了一种基于双控制器的读写锁装置,参照图2,所述装置包括:
初始化模块,用于将整个存储地址空间分割为M个区间块,并将所述M个区间块划分为等长的N个区间,所述N和M均为不小于1的整数;
节点生成模块,用于在每个区间块上存放一个红黑树的根节点,所述根节点用于保存Area节点,所述Area节点记录对应区域块的存储地址空间;
区间查找模块,用于在需要对目标读写区间进行锁定时,确定所述目标读写区间所属的区间块,在所确定到的区间块的红黑树上查找该区间块所属的Area节点,并在查找到的Area节点的红黑树上查找目标读写区间,若未找到所述目标读写区间,则创建所述目标读写区间对应的Block节点,并将创建的Block节点插入到该Area节点所属的红黑树中;
空间冲突模块,用于在所述Block节点下创建SubLock节点,查找所述SubLock节点中存储地址空间冲突的节点,若所述存储地址空间冲突的节点存在读写冲突,则增加所述SubLock节点的冲突计数,每个SubLock节点代表一个保存存储地址空间的子锁;
判断锁定模块,用于判断所述冲突计数是否为初始值,若是,则完成对所述目标读写区间的锁定。
可选地,所述判断锁定模块,还用于若否,则等待所述目标读写区间被释放资源后,再对所述目标读写区间进行锁定。
可选地,所述判断锁定模块,还用于查找所述目标读写区间的SubLock节点中存储地址空间冲突的节点X,对每一个存在存储地址空间冲突和读写冲突的节点X,减少该节点X的冲突计数,若该节点X的冲突计数降到初始值,则完成该节点X对应的目标读写区间的锁定。
可选地,所述节点生成模块,还用于将每个区间分配给控制器,所述Area节点还记录有控制器标识;
所述装置还包括:
所有权转让模块,用于向所述对端控制器发送转让请求,所述对端控制器在收到转让请求后,转让所述目标读写区间的所有权;转让完成后直接对所述目标读写区间进行锁定;如果不能立即转让,则在本地释放资源之后,进行第二次目标读写区间所有权转让;如果仍然不能转让,则放弃转让,直接对所述目标读写区间进行锁定。
可选地,所述节点生成模块,还用于在区间上产生的第一个锁定请求时,会与对端控制器进行一次通讯,与对端控制器协商该区间的所有权,如果对方未持有该区间的所有权,则本端控制器获得该区间的所有权;否则本端控制器得知对端对该控制器的所有权;当双方同时发起对区间的所有权协商时,则使用随机数+控制器插槽号的方式决定优先级,优先级高的控制器获得该区间的所有权。
实施例
下面以一个具体的实施例来说明本发明,但不限定本发明的保护范围。本实施例的方法包括:
(1).将整个存储地址空间划分为M个区间,区间大小可以在创建锁的时候进行制定,例如可以将其指定为一个条带的大小(这是一个优化参数)。区间为所有权划分的最小单元。(2).将整个存储地址空间划分为数个等长的区间块,例如将128TB的存储地址空间按照128GB分为1024个区间块,其目的是将区间块的范围缩小,加快区间块上的查找速度,这一步可以看作是一次简单Hash。区间块的大小是区间大小的整数倍(最后一个区间块除外)。
(3).每个区间块上存放一个红黑树的根节点,在区间块上产生的第一个拿锁(即对目标读写区域进行锁定)请求会进行一次通讯,与对端协商该目标读写区域的所有权,如果对方未持有该目标读写区域,则本端获得该目标读写区域;否则本端得知对端对该目标读写区域的所有权;特别的,当双方同时发起对某目标读写区域的所有权协商时(冲突发生),使用随机数+控制器插槽号的方式决定优先级。协商完成后,会在双端区间块的红黑树上生成一个节点,称之为Area节点,上面记录了整个区间块的存储地址空间,及控制器标识。
(4).在需要对目标读写区间进行锁定时,确定所述目标读写区间所属的区间块,在所确定到的区间块的红黑树上查找该区间块所属的Area节点,并在查找到的Area节点的红黑树上查找目标读写区间,若未找到所述目标读写区间,则创建所述目标读写区间对应的Block节点,并将创建的Block节点插入到该Area节点所属的红黑树中。
(5).在Block节点下面是一个基于红黑树的范围树,其节点称之为SubLock节点(子锁)。首先创建SubLock节点,然后在Block节点中查找范围冲突的SubLock节点,对找到的范围冲突节点判断是否存在读写冲突。如存在,则增加该SubLock节点的冲突计数。在查找结束后,如果该SubLock节点的冲突计数为0,则该SubLock节点拿到了锁,调用对应的拿锁回调函数。冲突计数在这里起到了两个作用:冲突检测、拿锁顺序保证。
(6).在放锁(即释放资源)的时候进行与步骤5同样冲突检测,并减小该SubLock节点的冲突计数,如果某个SubLock节点的冲突计数降到0,则其拿到了锁,调用对应的拿锁回调函数。
(7).特别的,当试图在属于对端的Area节点上进行拿锁时,使用同样的步骤进行拿锁,在拿到本地的锁之后,再向对端发起拿锁请求。对端在收到请求之后,会尝试转让目标读写区间的归属权,如果不能立即转让(对端在该Block节点上还有未释放的SubLock节点),则在对端重复本地拿锁流程。在拿锁完成后进行第二次Block节点归属权转让的尝试,如果仍然不能转让,则放弃转让,对拿锁请求进行响应。本端在收到响应之后,完成整个拿锁动作。
(8).在释放属于对端的锁时,也通知对端该锁已经释放。
(9).在处理对端断开事件时,使用链表遍历所有属于对端的锁进行放锁,再遍历所有的Area节点,将属于对端的Area节点转换为属于本地的Area节点即可。
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。

Claims (10)

1.一种基于双控制器的读写锁方法,其特征在于,所述方法包括:
S1:将整个存储地址空间分割为M个区间块,并将所述M个区间块划分为等长的N个区间,所述N和M均为不小于1的整数;
S2:在每个区间块上存放一个红黑树的根节点,所述根节点用于保存Area节点,所述Area节点记录对应区域块的存储地址空间;
S3:在需要对目标读写区间进行锁定时,确定所述目标读写区间所属的区间块,在所确定到的区间块的红黑树上查找该区间块所属的Area节点,并在查找到的Area节点的红黑树上查找目标读写区间,若未找到所述目标读写区间,则创建所述目标读写区间对应的Block节点,并将创建的Block节点插入到该Area节点所属的红黑树中;
S4:在所述Block节点下创建SubLock节点,查找所述SubLock节点中存储地址空间冲突的节点,若所述存储地址空间冲突的节点存在读写冲突,则增加所述SubLock节点的冲突计数,每个SubLock节点代表一个保存存储地址空间的子锁;
S5:判断所述冲突计数是否为初始值,若是,则完成对所述目标读写区间的锁定。
2.如权利要求1所述的方法,其特征在于,步骤S5中,若否,则等待所述目标读写区间被释放资源后,再对所述目标读写区间进行锁定。
3.如权利要求2所述的方法,其特征在于,所述目标读写区间被释放资源,具体包括:
查找所述目标读写区间的SubLock节点中存储地址空间冲突的节点X,对每一个存在存储地址空间冲突和读写冲突的节点X,减少该节点X的冲突计数,若该节点X的冲突计数降到初始值,则完成该节点X对应的目标读写区间的锁定。
4.如权利要求1所述的方法,其特征在于,步骤S2中,还包括:将每个区间分配给控制器,所述Area节点还记录有控制器标识;
当向属于对端控制器的目标读写区间进行锁定时,相应地,步骤S5中,对所述目标读写区间进行锁定之前,还包括:
向所述对端控制器发送转让请求,所述对端控制器在收到转让请求后,转让所述目标读写区间的所有权;转让完成后直接对所述目标读写区间进行锁定;
如果不能立即转让,则在本地释放资源之后,进行第二次目标读写区间所有权转让;如果仍然不能转让,则放弃转让,直接对所述目标读写区间进行锁定。
5.如权利要求4所述的方法,其特征在于,步骤S2中,将每个区间分配给控制器,具体包括:
在区间上产生的第一个锁定请求时,会与对端控制器进行一次通讯,与对端控制器协商该区间的所有权,如果对方未持有该区间的所有权,则本端控制器获得该区间的所有权;否则本端控制器得知对端对该控制器的所有权;当双方同时发起对区间的所有权协商时,则使用随机数+控制器插槽号的方式决定优先级,优先级高的控制器获得该区间的所有权。
6.一种基于双控制器的读写锁装置,其特征在于,所述装置包括:
初始化模块,用于将整个存储地址空间分割为M个区间块,并将所述M个区间块划分为等长的N个区间,所述N和M均为不小于1的整数;
节点生成模块,用于在每个区间块上存放一个红黑树的根节点,所述根节点用于保存Area节点,所述Area节点记录对应区域块的存储地址空间;
区间查找模块,用于在需要对目标读写区间进行锁定时,确定所述目标读写区间所属的区间块,在所确定到的区间块的红黑树上查找该区间块所属的Area节点,并在查找到的Area节点的红黑树上查找目标读写区间,若未找到所述目标读写区间,则创建所述目标读写区间对应的Block节点,并将创建的Block节点插入到该Area节点所属的红黑树中;
空间冲突模块,用于在所述Block节点下创建SubLock节点,查找所述SubLock节点中存储地址空间冲突的节点,若所述存储地址空间冲突的节点存在读写冲突,则增加所述SubLock节点的冲突计数,每个SubLock节点代表一个保存存储地址空间的子锁;
判断锁定模块,用于判断所述冲突计数是否为初始值,若是,则完成对所述目标读写区间的锁定。
7.如权利要求6所述的装置,其特征在于,所述判断锁定模块,还用于若否,则等待所述目标读写区间被释放资源后,再对所述目标读写区间进行锁定。
8.如权利要求7所述的装置,其特征在于,所述判断锁定模块,还用于查找所述目标读写区间的SubLock节点中存储地址空间冲突的节点X,对每一个存在存储地址空间冲突和读写冲突的节点X,减少该节点X的冲突计数,若该节点X的冲突计数降到初始值,则完成该节点X对应的目标读写区间的锁定。
9.如权利要求6所述的装置,其特征在于,所述节点生成模块,还用于将每个区间分配给控制器,所述Area节点还记录有控制器标识;
所述装置还包括:
所有权转让模块,用于向所述对端控制器发送转让请求,所述对端控制器在收到转让请求后,转让所述目标读写区间的所有权;转让完成后直接对所述目标读写区间进行锁定;如果不能立即转让,则在本地释放资源之后,进行第二次目标读写区间所有权转让;如果仍然不能转让,则放弃转让,直接对所述目标读写区间进行锁定。
10.如权利要求9所述的装置,其特征在于,所述节点生成模块,还用于在区间上产生的第一个锁定请求时,会与对端控制器进行一次通讯,与对端控制器协商该区间的所有权,如果对方未持有该区间的所有权,则本端控制器获得该区间的所有权;否则本端控制器得知对端对该控制器的所有权;当双方同时发起对区间的所有权协商时,则使用随机数+控制器插槽号的方式决定优先级,优先级高的控制器获得该区间的所有权。
CN201410851903.0A 2014-12-31 2014-12-31 基于双控制器的读写锁方法及装置 Active CN105808155B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410851903.0A CN105808155B (zh) 2014-12-31 2014-12-31 基于双控制器的读写锁方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410851903.0A CN105808155B (zh) 2014-12-31 2014-12-31 基于双控制器的读写锁方法及装置

Publications (2)

Publication Number Publication Date
CN105808155A true CN105808155A (zh) 2016-07-27
CN105808155B CN105808155B (zh) 2018-10-19

Family

ID=56420567

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410851903.0A Active CN105808155B (zh) 2014-12-31 2014-12-31 基于双控制器的读写锁方法及装置

Country Status (1)

Country Link
CN (1) CN105808155B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106649131A (zh) * 2016-12-29 2017-05-10 郑州云海信息技术有限公司 一种固态硬盘及其逻辑地址范围冲突监控方法、系统
CN107239235A (zh) * 2017-06-02 2017-10-10 郑州云海信息技术有限公司 一种多控多活raid同步方法及系统
CN107341243A (zh) * 2017-07-06 2017-11-10 携程旅游网络技术(上海)有限公司 基于区间树查找算法的结算周期生成方法及系统
CN107807787A (zh) * 2016-09-08 2018-03-16 北京京东尚科信息技术有限公司 一种分布式数据存储方法和系统
CN111831575A (zh) * 2019-04-16 2020-10-27 武汉海康存储技术有限公司 逻辑地址范围的存储方法、装置及存储设备
CN111915477A (zh) * 2020-08-08 2020-11-10 湖南润泽医疗影像科技有限公司 一种彩色超声多普勒转置存储的地址轮换方法
CN113253944A (zh) * 2021-07-07 2021-08-13 苏州浪潮智能科技有限公司 一种磁盘阵列访问方法、系统及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060136666A1 (en) * 2004-12-21 2006-06-22 Ching-Te Pang SAS storage virtualization controller, subsystem and system using the same, and method therefor
CN101576805A (zh) * 2009-06-12 2009-11-11 浪潮电子信息产业股份有限公司 一种基于并行处理的多主机接口冗余san控制器
CN102629225A (zh) * 2011-12-31 2012-08-08 成都市华为赛门铁克科技有限公司 双控制器磁盘阵列、存储系统以及数据存储路径切换方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060136666A1 (en) * 2004-12-21 2006-06-22 Ching-Te Pang SAS storage virtualization controller, subsystem and system using the same, and method therefor
CN101576805A (zh) * 2009-06-12 2009-11-11 浪潮电子信息产业股份有限公司 一种基于并行处理的多主机接口冗余san控制器
CN102629225A (zh) * 2011-12-31 2012-08-08 成都市华为赛门铁克科技有限公司 双控制器磁盘阵列、存储系统以及数据存储路径切换方法
CN102629225B (zh) * 2011-12-31 2014-05-07 华为技术有限公司 双控制器磁盘阵列、存储系统以及数据存储路径切换方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107807787A (zh) * 2016-09-08 2018-03-16 北京京东尚科信息技术有限公司 一种分布式数据存储方法和系统
CN107807787B (zh) * 2016-09-08 2020-12-22 北京京东尚科信息技术有限公司 一种分布式数据存储方法和系统
CN106649131A (zh) * 2016-12-29 2017-05-10 郑州云海信息技术有限公司 一种固态硬盘及其逻辑地址范围冲突监控方法、系统
CN106649131B (zh) * 2016-12-29 2019-12-31 苏州浪潮智能科技有限公司 一种固态硬盘及其逻辑地址范围冲突监控方法、系统
CN107239235A (zh) * 2017-06-02 2017-10-10 郑州云海信息技术有限公司 一种多控多活raid同步方法及系统
CN107239235B (zh) * 2017-06-02 2020-07-24 苏州浪潮智能科技有限公司 一种多控多活raid同步方法及系统
CN107341243A (zh) * 2017-07-06 2017-11-10 携程旅游网络技术(上海)有限公司 基于区间树查找算法的结算周期生成方法及系统
CN111831575A (zh) * 2019-04-16 2020-10-27 武汉海康存储技术有限公司 逻辑地址范围的存储方法、装置及存储设备
CN111915477A (zh) * 2020-08-08 2020-11-10 湖南润泽医疗影像科技有限公司 一种彩色超声多普勒转置存储的地址轮换方法
CN113253944A (zh) * 2021-07-07 2021-08-13 苏州浪潮智能科技有限公司 一种磁盘阵列访问方法、系统及存储介质

Also Published As

Publication number Publication date
CN105808155B (zh) 2018-10-19

Similar Documents

Publication Publication Date Title
CN105808155A (zh) 基于双控制器的读写锁方法及装置
US7991822B2 (en) Propagation of updates for attributes of a storage object from an owner node of the storage object to other nodes
US20220309007A1 (en) Data Write Method, Apparatus, and System
US7249152B2 (en) Dynamic disk space management by multiple database server instances in a cluster configuration
US8990954B2 (en) Distributed lock manager for file system objects in a shared file system
US7899895B2 (en) Transfer of ownership of a storage object in response to an original owner node becoming available after a period of unavailability
CN106095589B (zh) 一种分配分区的方法、装置及系统
CN107888657A (zh) 低延迟分布式存储系统
CN102541983B (zh) 一种分布式文件系统中多客户端缓存同步的方法
CN101566927B (zh) 存储系统和存储控制器以及数据缓存方法
US7778986B2 (en) Securing transfer of ownership of a storage object from an unavailable owner node to another node
CN102117287A (zh) 分布式文件系统访问方法、元数据服务器及客户端
JP2004302713A (ja) 記憶システム及びその制御方法
CN107179878A (zh) 基于应用优化的数据存储的方法和装置
CN111125049A (zh) 基于rdma与非易失内存的分布式文件数据块读写方法及系统
CN102486753B (zh) 构建及允许访问高速缓存的方法、设备及存储系统
CN104254839A (zh) 用于分割单链表以供分配存储器元素的系统和方法
CN104573112B (zh) Oltp集群数据库中页面查询方法及数据处理节点
CN103514164A (zh) 数据迁移方法及系统
CN101344882A (zh) 数据查询方法、插入方法及删除方法
US9667735B2 (en) Content centric networking
CN104346298B (zh) 基于智能卡的数据处理方法、装置及智能卡
CN109656730A (zh) 一种访问缓存的方法和装置
CN107465706B (zh) 一种基于无线通信网络的分布式数据对象存储装置
CN105450679A (zh) 进行数据云存储的方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20170331

Address after: Nanshan District Guangdong streets, Shenzhen city 518131 Guangdong Province Road No. 8 financial services technology innovation base 1 building 11 floor F3

Applicant after: Shenzhen science and Technology Co.,Ltd. digital cloud data

Address before: 100085 Beijing, Haidian District, No. 9 on the ground floor of the digital science and Technology Plaza, 9

Applicant before: YUNKE CHINA DATA TECHNOLOGY LTD.

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20190507

Address after: 430200 Six Floors of 777B Office Building, Guanggu Third Road, Donghu New Technology Development Zone, Wuhan City, Hubei Province

Patentee after: Wuhan Shenzhou Digital Cloud Technology Co.,Ltd.

Address before: 518131 F3, 11th floor, No. 8 Kefa Road, Yuehai Street, Nanshan District, Shenzhen City, Guangdong Province

Patentee before: Shenzhen science and Technology Co.,Ltd. digital cloud data

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230414

Address after: 6 / F, office building B, No.777, Guanggu Third Road, Donghu New Technology Development Zone, Wuhan, Hubei 430200

Patentee after: Wuhan Shenzhou Digital Cloud Technology Co.,Ltd.

Patentee after: Shenzhou Yunke (Beijing) Technology Co.,Ltd.

Address before: 6 / F, office building B, No.777, Guanggu Third Road, Donghu New Technology Development Zone, Wuhan, Hubei 430200

Patentee before: Wuhan Shenzhou Digital Cloud Technology Co.,Ltd.