[发明专利]分布式数据库中的事务处理方法及系统在审
申请号: | 202010268665.6 | 申请日: | 2020-04-08 |
公开(公告)号: | CN113495872A | 公开(公告)日: | 2021-10-12 |
发明(设计)人: | 娄帅;林韶宾 | 申请(专利权)人: | 北京万里开源软件有限公司 |
主分类号: | G06F16/11 | 分类号: | G06F16/11;G06F16/242;G06F16/27 |
代理公司: | 北京永新同创知识产权代理有限公司 11376 | 代理人: | 张文锦;刘茹 |
地址: | 100022 北京市朝阳区建外大街*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式 数据库 中的 事务处理 方法 系统 | ||
本发明涉及一种分布式数据库中的事务处理方法及系统。所述方法包括:从各个事务参与者接收分布式事务请求,向全局事务模块发送所述分布式事务请求,从所述全局事务模块接收经全局序列化的事务请求,在事务参与者本地根据经全局序列化的事务请求生成全局事务状态信息,以及根据所述全局事务状态信息,执行SQL语句。
技术领域
本申请涉及分布式数据库领域,尤其涉及一种分布式数据库中的分布式事务处理方法及系统。
背景技术
随着移动互联网的推广,各种数据呈指数级增长,传统的单机数据库已经无法满足当今日益增长的数据量的存储需求,分布式数据库系统慢慢开始替代单机系统。
现有的分布式数据库解决分布式事务数据一致性的方法包括Percolator、Spanner等模型。Percolator模型是由谷歌公司(Google)发明,应用于其内部的BigTable系统,提供跨行分布式事务的一种解决方案。Percolator模型对每行用户数据加入了两个新的列,lock(锁定)列和write(写入)列,其中锁定列用于在写入数据之前进行上锁,写入列用于表示事务提交,写入的值(value)记录了本次写入的时间戳。由于Percolator模型需要将锁信息写入到用户数据中,同时在提交的时候,需要从单点时间戳服务器获取提交时间戳,然后更新写入的数据,从而导致数据更新的成本非常大,要反复写多次用户数据,这不适合对事务响应延迟要求较高的场景。Spanner模型是由Google发明,基于True Time API之上的分布式事务解决方案,其提出了外部一致性的概念。真实时间(True Time)基于原子钟和GPS,在全球范围内提供误差在1-7毫秒的时间戳服务,用于给分布式事务提供提交时间戳。由于Spanner模型高度依赖高精度低误差的时间戳服务,导致其适用范围非常局限。另外由于仍然存在时钟精度的误差,事务的提交需要等待时钟误差的结束,同时读写之间也存在等待的情况,导致分布式事务无法做到低延迟,这不适合对事务响应延迟要求较高的场景。
发明内容
提供本发明内容以便介绍一组概念,这组概念将在以下的具体实施方式中做进一步描述。本发明内容并非旨在标识所保护主题的关键特征或必要特征,也不旨在用于限制所保护主题的范围。
为了达到上述目的,本说明书提供一种分布式事务的处理方法及系统。本申请公开了一种用于处理分布式事务的方法,该方法包括:从各个事务参与者接收分布式事务请求;向全局事务模块发送所述分布式事务请求;从所述全局事务模块接收经全局序列化的事务请求;在事务参与者本地根据经全局序列化的事务请求生成全局事务状态信息;以及根据所述全局事务状态信息,执行SQL语句。
在一些例子中,所述分布式事务请求包括以下中的一个或多个:事务开启请求、事务提交请求、事务回滚请求、事务快照请求,以及其中,所述全局事务状态信息包括以下中的一个或多个:当前最大全局事务标识、当前处于活跃状态的事务标识集。
此外,在各个事务参与者提交所述分布式事务请求前,该方法还包括:根据不同的事务请求类型,生成对应的全局事务请求。
在一些例子中,生成所述对应的全局事务请求进一步包括:
如果所述事务请求类型为事务开启请求,则全局事务请求包含事务参与者全局标识、事务参与者独自生成的本地事务标识;
如果所述事务请求类型为事务提交请求,则全局事务请求包含事务参与者全局标识、以及获得的全局事务标识;
如果所述事务请求类型为事务回滚请求,则全局事务请求包含事务参与者全局标识、以及获得的全局事务标识;以及
如果所述事务请求类型为事务快照请求,则不需要转换成全局事务请求,而直接在本地进行请求响应以获取全局事务状态信息。
在一些例子中,所述经全局序列化的事务请求进一步包括:通过对所述分布式事务请求添加全局递增的连续的ID获得的事务请求。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京万里开源软件有限公司,未经北京万里开源软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010268665.6/2.html,转载请声明来源钻瓜专利网。