[发明专利]一种范围锁的实现方法及装置有效
申请号: | 201410677262.1 | 申请日: | 2014-11-21 |
公开(公告)号: | CN104391935B | 公开(公告)日: | 2017-12-12 |
发明(设计)人: | 杨晗;冯锐 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京同达信恒知识产权代理有限公司11291 | 代理人: | 冯艳莲 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 范围 实现 方法 装置 | ||
1.一种范围锁的实现方法,其特征在于,该方法包括:
接收第一请求,其中,所述第一请求包含第一区间的区间信息和锁权限信息;
将所述第一区间与本地存储的已授权区间进行比对;
若所述第一区间是所述已授权区间中第二区间的子集,则根据预设的冲突判断规则确定所述第一区间的锁权限信息与所述第二区间的锁权限信息是否冲突;
如果所述第一区间的锁权限信息与所述第二区间的锁权限信息不冲突,则返回所述第一区间的区间信息和锁权限信息。
2.如权利要求1所述的方法,其特征在于,所述已授权区间的区间信息和锁权限信息以红黑树的方式记录;
所述方法还包括:将所述第一区间的区间信息和锁权限信息加入到红黑树中。
3.如权利要求1或2所述的方法,其特征在于,当所述已授权区间有多个时,其中,任意两个已授权区间存在重叠部分,则所述任意两个已授权区间的锁权限信息不冲突。
4.如权利要求1或2所述的方法,其特征在于,所述锁权限信息包括:对数据执行读操作或写操作的锁权限信息。
5.如权利要求1或2所述的方法,其特征在于,根据预设的冲突判断规则确定所述第一区间的锁权限信息与所述第二区间的锁权限信息是否冲突包括:
当所述第一区间的锁权限信息与所述第二区间的锁权限信息不相同,则确定所述第一区间的锁权限信息与所述第二区间的锁权限信息冲突;
当所述第一区间的锁权限信息与所述第二区间的锁权限信息相同,则确定第一区间的锁权限信息与所述第二区间的锁权限信息是否为读取操作,如果是,则确定所述第一区间的锁权限信息与所述第二区间的锁权限信息不冲突;否则,所述第一区间的锁权限信息与所述第二区间的锁权限信息冲突。
6.如权利要求1或2所述的方法,其特征在于,还包括:
若所述已授权区间中不包含所述第一区间,则返回所述第一区间的区间信息和锁权限信息;或
若所述已授权区间与所述第一区间有重合部分,则遍历已授权区间,确定所述第一区间的区间信息和锁权限信息是否与所述已授权区间的区间信息和锁权限信息冲突;如果冲突则将所述第一请求放入等待队列或返回拒绝的响应消息;如果不冲突,返回所述第一区间的区间信息和锁权限信息。
7.一种范围锁的实现装置,其特征在于,该装置包括:
接收模块,用于接收第一请求,其中,所述第一请求包含第一区间的区间信息和锁权限信息;
比对模块,用于将所述第一区间与本地存储的已授权区间进行比对;
冲突判断模块,用于若所述第一区间是所述已授权区间中第二区间的子集,则根据预设的冲突判断规则确定所述第一区间的锁权限信息与所述第二区间的锁权限信息是否冲突;
授权模块,用于如果所述第一区间的锁权限信息与所述第二区间的锁权限信息不冲突,则返回所述第一区间的区间信息和锁权限信息。
8.如权利要求7所述的装置,其特征在于,该装置还包括存储模块,用于以红黑树的方式记录所述已授权区间的区间信息和锁权限信息,并将所述第一区间的区间信息和锁权限信息加入到红黑树中。
9.如权利要求7或8所述的装置,其特征在于,冲突判断模块具体用于当所述第一区间的锁权限信息与所述第二区间的锁权限信息不相同,则确定所述第一区间的锁权限信息与所述第二区间的锁权限信息冲突;当所述第一区间的锁权限信息与所述第二区间的锁权限信息相同,则确定第一区间的锁权限信息与所述第二区间的锁权限信息是否为读取操作,如果是,则确定所述第一区间的锁权限信息与所述第二区间的锁权限信息不冲突;否则,所述第一区间的锁权限信息与所述第二区间的锁权限信息冲突。
10.如权利要求7或8所述的装置,其特征在于,该装置还包括:
遍历模块,用于遍历已授权的区间,若所述已授权区间中不包含所述第一区间,则返回所述第一区间的区间信息和锁权限信息;若所述已授权区间与所述第一区间有重合部分,则遍历已授权区间,确定所述第一区间的区间信息和锁权限信息是否与所述已授权区间的区间信息和锁权限信息冲突;如果冲突则将所述第一请求放入等待队列或返回拒绝的响应消息;如果不冲突,返回所述第一区间的区间信息和锁权限信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410677262.1/1.html,转载请声明来源钻瓜专利网。