[发明专利]一种应用于分布式串行长事务的并发控制方法有效
| 申请号: | 201711085717.0 | 申请日: | 2017-11-07 |
| 公开(公告)号: | CN107832121B | 公开(公告)日: | 2020-11-03 |
| 发明(设计)人: | 王宏志;赵志强;王刚 | 申请(专利权)人: | 哈工大大数据(哈尔滨)智能科技有限公司 |
| 主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F11/14 |
| 代理公司: | 北京格允知识产权代理有限公司 11609 | 代理人: | 周娇娇;谭辉 |
| 地址: | 150001 黑龙江省哈尔滨市松北区高新技术产业开发区哈工大*** | 国省代码: | 黑龙江;23 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 应用于 分布式 串行 事务 并发 控制 方法 | ||
1.一种应用于分布式串行长事务处理的并发控制方法,该方法包括:
步骤一:创建最大时间戳序列TR=t1,t2,t3,…,tn,其中元素ti代表事务执行过程中每一个线程i对应的最新的时间戳,由机器按照指令发生的时间顺序赋予;其中,时间戳与其所指向的数据版本分别存储;
步骤二:利用分布式哈希算法对最大时间戳序列中的时间戳ti进行分割,使时间戳数据均匀分布到各个节点上;
步骤三:将当前执行请求对应的时间戳与分布在各个节点上的最大时间戳序列TR进行比较,根据比较结果更新数据版本;
所述步骤二中,利用分布式哈希算法对最大时间戳序列中的时间戳ti进行分割,使时间戳数据均匀分布到各个节点上,具体包括:分布式系统中共有N台机器,每台机器的存储范围为M,利用哈希函数确定每一个哈希桶的ID,将最大时间戳数据依据对应的ID均匀分布到N台计算机中,其中使用的哈希函数为对i取余;
所述步骤三中,将当前执行请求对应的时间戳与分布在多台机器上的最大时间戳序列TR进行比较,根据比较结果更新数据版本,具体包括:旧的数据版本为Qold,当前的数据版本为Qcurrent,当前事务请求执行线程i的时间戳为ti(Qcurrent),当ti(Qcurrent)≤ti,(ti∈TR)时,则操作i回滚,数据版本保持Qold不变;当ti(Qcurrent)>ti,(ti∈TR)时,操作i继续执行,数据版本更新为Qcurrent,并且相应的,TR中的ti=ti(Qcurrent);具体地,在读取到当前事务请求执行线程i的时间戳ti(Qcurrent)后,首先依据哈希函数计算出ti(Qcurrent)对应的ID,再与分布式系统中每台机器的ID比较,接下来仅读取对应ID机器中存储的全部ti并与之比较。
2.根据权利要求1所述的方法,其特征在于:使用远程直接数据存取技术在各节点间发送与接收数据和/或指令。
3.一种处理器,其特征在于:用于执行权利要求1-2中任一项所述的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈工大大数据(哈尔滨)智能科技有限公司,未经哈工大大数据(哈尔滨)智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711085717.0/1.html,转载请声明来源钻瓜专利网。





