[发明专利]分布式数据库系统及数据处理方法在审
申请号: | 202010721315.0 | 申请日: | 2020-07-24 |
公开(公告)号: | CN113297320A | 公开(公告)日: | 2021-08-24 |
发明(设计)人: | 孙梦石;楼江航;傅宇;吴学强 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F9/46 |
代理公司: | 北京智信禾专利代理有限公司 11637 | 代理人: | 吴肖肖 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式 数据库 系统 数据处理 方法 | ||
本说明书提供一种分布式数据库系统及数据处理方法,其中所述系统包括:计算模块和存储模块;所述计算模块,被配置为接收事务开启请求;根据所述事务开启请求,确定目标事务及所述目标事务对应的目标存储模块;向所述目标存储模块发送执行指令;所述目标存储模块返回目标事务执行成功的消息的情况下,向所述目标存储模块发送提交指令,所述提交指令携带有待提交目标事务和所述目标事务的提交时间戳;所述目标存储模块,被配置为接收所述执行指令,根据所述执行指令执行所述目标事务;接收所述提交指令,根据所述提交指令对所述目标事务进行提交,并根据所述目标事务的提交时间戳生成二进制日志。
技术领域
本说明书涉及分布式数据库技术领域,特别涉及一种分布式数据库系统。本说明书同时涉及一种数据处理方法,一种计算设备,以及一种计算机可读存储介质。
背景技术
随着计算机技术的日益发展,为了满足用户日益增长的需求,分布式数据库应运而生。分布式数据库由多个存储节点组成,在每个存储节点中,每一次DML(DataManipulation Language,数据操纵语言)写入操作都会独立生成一个二进制日志(binlog),这些二进制日志在所在的存储节点内保持有序。然而,在分布式数据库中,时间上前后的两次操作可能会发生在两个不同的存储节点上,直接订阅两个存储节点的二进制日志,有可能导致这两次操作的顺序发生错乱,最终的数据出现不一致。
发明内容
有鉴于此,本说明书实施例提供了一种分布式数据库系统。本说明书同时涉及一种数据处理方法,一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的技术缺陷。
根据本说明书实施例的第一方面,提供了一种分布式数据库系统,包括:计算模块和存储模块;
所述计算模块,被配置为接收事务开启请求;根据所述事务开启请求,确定目标事务及所述目标事务对应的目标存储模块;向所述目标存储模块发送执行指令,所述执行指令中携带有待执行目标事务;所述目标存储模块返回目标事务执行成功的消息的情况下,向所述目标存储模块发送提交指令,所述提交指令携带有待提交目标事务和所述目标事务的提交时间戳;
所述目标存储模块,被配置为接收所述执行指令,根据所述执行指令执行所述目标事务;所述目标事务执行成功的情况下,向所述计算模块返回目标事务执行成功的消息;接收所述提交指令,根据所述提交指令对所述目标事务进行提交,并根据所述目标事务的提交时间戳生成二进制日志。
可选的,所述系统还包括:多个执行模块和一个排序模块,所述多个执行模块中每一个执行模块均对应有存储模块;
所述执行模块,被配置为读取自身对应的存储模块的二进制日志,并根据所述二进制日志生成内存序列;
所述排序模块,被配置为读取每一个所述执行模块的内存序列,获取所述内存序列中每一个二进制日志中目标事务的提交时间戳;按照所述目标事务的提交时间戳,对所述内存序列中的二进制日志进行排序;将排序后的二进制日志写入消息队列中。
可选的,所述计算模块进一步被配置为:
若检测到表格处理事件,则确定所述表格处理事件的执行逻辑;
根据所述执行逻辑,生成所述表格处理事件的时间戳;
根据所述时间戳,生成所述表格处理事件的二进制日志。
可选的,所述计算模块进一步被配置为:
确定所述表格处理事件的操作类型;
根据所述操作类型,确定所述表格处理事件对应的兼容类型;
根据所述兼容类型,确定所述表格处理事件的执行逻辑。
可选的,所述计算模块进一步被配置为:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010721315.0/2.html,转载请声明来源钻瓜专利网。