[发明专利]用于利用区块链技术扩充数据库应用的系统和方法在审
申请号: | 201980090660.4 | 申请日: | 2019-11-28 |
公开(公告)号: | CN113396407A | 公开(公告)日: | 2021-09-14 |
发明(设计)人: | 钱玉明 | 申请(专利权)人: | 泽乌科技公司 |
主分类号: | G06F16/23 | 分类号: | G06F16/23;G06F16/27 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 王萍;唐明英 |
地址: | 加拿大*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 利用 区块 技术 扩充 数据库 应用 系统 方法 | ||
1.一种在数据库和区块链中同时处理事务的方法,包括:
a)根据所述事务修改所述数据库的第一表;
b)合成对应于所述事务的数据操作记录并且将所述数据操作记录插入所述区块链中,以用于共识投票;
c)在所述共识投票成功时,通过修改所述数据库中与所述事务对应的第二表来同意所述事务;并且否则,回滚所述事务,从而保持所述第二表不改变。
2.根据权利要求1所述的方法,其中,所述修改所述第一表包括将状态列设置为预定值组中之一。
3.根据权利要求2所述的方法,其中,所述预定值组包括“已确认”、“插入未决”、“更新未决”和“删除未决”。
4.根据权利要求2所述的方法,其中,所述修改所述第一表包括下述中之一:插入、更新或删除所述第一表中的第一记录,并且其中,所述修改所述第二表包括下述中之一:分别插入、更新或删除所述第二表中的第二记录。
5.根据权利要求4所述的方法,其中,所述第一记录的字段包括所述第二记录的所有字段,并且所述第一记录还包括与所述状态列对应的状态字段。
6.根据权利要求1所述的方法,还包括:在所述修改之后,从所述数据库的日志中识别所述数据库中的改变,其中,所述改变要求由所述区块链进行的共识投票。
7.根据权利要求1所述的方法,其中,所述修改所述第一表是由与所述数据库交换数据的应用发起的。
8.根据权利要求7所述的方法,还包括:
在同意所述事务时,通知所述应用事务成功;以及
否则,在回滚所述事务时,通知所述应用事务失败。
9.一种使数据库事务中的事务与区块链中的事务同步的方法,所述方法包括:
a)接收写入命令;
b)响应于接收所述写入命令:
i)写入临时工作表;并且
ii)向所述区块链提交对应的写入请求以用于共识投票;以及
c)在接收到所述共识投票的结果时,根据所述写入命令修改所述查询表;并且否则,保持所述查询表不改变。
10.根据权利要求9所述的方法,还包括:在所述接收所述写入命令之前,在所述数据库中选择需要与所述区块链同步的第一表并且创建对应于所述第一表的所述临时工作表。
11.根据权利要求10所述的方法,还包括在所述接收所述写入命令之前将来自所述第一表的历史数据导入至所述查询表中。
12.一种用于使数据库和区块链同步的系统,所述系统包括处理器,所述处理器执行存储在存储器中的指令,以使得在接收到从应用接收的包括要写入所述数据库的数据的写入请求时,所述处理器执行下述步骤:
a)将所述数据写入所述数据库中的工作表;
b)向所述区块链提交数据操作记录以用于共识投票;以及
c)在接收到针对所述共识投票成功的指示时,将所述数据写入所述数据库中的查询表,并且否则,保持所述查询表不改变。
13.根据权利要求12所述的系统,其中,将所述数据写入所述工作表包括将所述工作表中的状态字段设置为预定值组中之一。
14.根据权利要求13所述的系统,其中,所述预定值组包括“已确认”、“插入未决”、“更新未决”和“删除未决”。
15.根据权利要求12所述的系统,其中,所述指令还包括数据库代理,所述数据库代理使所述处理器进行下述操作:
a)拦截来自所述应用的针对所述查询表的所述写入请求;
b)解析所述写入请求以合成所述数据操作记录和用于修改所述数据库的对应的语句;以及
c)使用所述语句修改所述工作表。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于泽乌科技公司,未经泽乌科技公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201980090660.4/1.html,转载请声明来源钻瓜专利网。