首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明公布】一种无协调确定性的分布式事务原子性保证方法_东北大学_202410397118.6 

申请/专利权人:东北大学

申请日:2024-04-03

公开(公告)日:2024-06-21

公开(公告)号:CN118227274A

主分类号:G06F9/46

分类号:G06F9/46;G06F16/27;G06F9/50

优先权:

专利状态码:在审-公开

法律状态:2024.06.21#公开

摘要:本发明公开一种无协调确定性的分布式事务原子性保证方法,涉及分布式数据库的事务处理领域。本发明针对于分布式数据分片数据库环境下的,以按照时间片划分的事务批处理,设计了一种无协调分布式事务原子性维护方法,因为无需额外的协调者,也就不存在单点瓶颈,每个节点身份对等,整个过程将会确定性地执行,每个批次结束后,系统会根据预定义的规则和广播的方式及时最终中止掉原子性被破坏的事务,仅写入可以提交的事务,对于基于事务批处理的数据分片架构的分布式数据库系统,解决了其跨分片节点的分布式事务的原子性保证问题,区别于传统以单个事务为粒度的2PC,可以在不引入协调者的要求下,通过确定性合并的方案来保证分布式事务的原子性。

主权项:1.一种无协调确定性的分布式事务原子性保证方法,其特征在于,包括如下步骤:步骤1:根据工作负载设定epoch的大小;步骤2:按照设定epoch的大小从客户端接收事务,将事务划分为若干子事务并确定对每个子事务负责的分片节点;步骤3:将步骤2得到的子事务依据其负责的分片节点分类为不同的子事务集合,并打包成消息发送至负责的分片节点,若存在某个分片节点没有将要在其上执行的子事务,则发送一条空消息;步骤4:所有分片节点接收到消息后遍历消息中的子事务,为每个子事务添加事务的开始epoch号;步骤5:将每个添加事务的开始epoch号后的子事务交由本地执行线程,以乐观并发控制的方式执行,在执行完成后,为每个子事务添加事务的提交epoch号和事务的提交序列号;步骤6:对添加事务提交epoch号和事务提交序列号后的子事务进行合并;步骤7:各个分片节点扫描所有本地的子事务集合,对子事务进行验证,将验证通过的子事务放入本地的子事务提交集合,将验证失败的子事务作为中止的子事务,将中止的子事务的事务ID打包为中止事务集合消息并广播至所有其余分片节点;步骤8:每个分片节点等待接收所有其余分片节点发送过来的中止事务集合消息,当中止消息收集完成后,将所有这些消息中包含的需要中止的子事务ID整理为中止事务集合,每个分片节点遍历其本地的子事务提交集合,依次检查每个事务ID是否被包含在中止事务集合中,若包含则在写操作缓冲区中删除该子事务的所有写集,并将子事务状态标记为中止,否则将当前子事务状态标记为提交;步骤9:判断上一个epoch的实际写入是否完成,若未完成则进行等待直至上一个epoch的实际写入完成,若完成则分片节点扫描写操作缓冲区,对当前epoch中事务状态标记为提交的子事务中的每个数据项调用底层存储接口来实际写入,结束本次epoch。

全文数据:

权利要求:

百度查询: 东北大学 一种无协调确定性的分布式事务原子性保证方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。