[发明专利]基于区块链的分布式关系型数据库的管理方法及系统有效
申请号: | 202010543740.5 | 申请日: | 2020-06-15 |
公开(公告)号: | CN111680105B | 公开(公告)日: | 2023-09-22 |
发明(设计)人: | 张晨 | 申请(专利权)人: | 浙江创邻科技有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/28;G06F16/22;G06F16/23;G06F21/64 |
代理公司: | 北京酷爱智慧知识产权代理有限公司 11514 | 代理人: | 钟继莲 |
地址: | 310000 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 区块 分布式 关系 数据库 管理 方法 系统 | ||
1.一种基于区块链的分布式关系型数据库的管理方法,其特征在于,包括
建立关于块的元数据存储列表;
基于数据库发生变更时的SQL语句发起事务请求,发送到各分布式子节点,并由各个子节点参与执行和验证SQL语句查询的结果,以根据所述SQL语句执行当前节点的数据变更;其中,
所述基于数据库发生变更时的SQL语句发起事务请求,中
事务请求为发送节点的块签名信息,块签名是块版本、块索引、块nonce、上一个块哈希、miner公钥、块时间戳以及有效负载数据的SHA-256哈希;
数据库所述事务附加时间戳;
当一个节点接收到一个有效的块时,将其附加到一个队列中;当队列超出预设大小时,队列中最旧的块将保留在磁盘上;
当区块链链需要拼接并且拼接发生在队列内部时,如果拼接发生在早于队列中最旧块的块中,则将从块0到拼接点的完整事务集重放;
其中已执行排队的块事务,查询完成后,事务将自动回滚。
2.根据权利要求1所述的基于区块链的分布式关系型数据库的管理方法,其特征在于,所述建立关于块的元数据存储列表包括:
信息表:保存有关当前块哈希和索引的信息,包含最后处理的块的信息;
块表:保存链中所有块;
授权表:保存数据库权限信息;
数据库表:保存现有数据库列表。
3.根据权利要求1所述的基于区块链的分布式关系型数据库的管理方法,其特征在于,有效载荷数据构造跟当前块是否是第一个块有关,如果是第一个块,则用于块签名的有效负载数据是编码为UTF-8的种子字符串;如果是其他后续的块,则用于块签名的有效负载数据是事务签名的串联;事务签名是使用调用程序的私钥对数据库名称、事务计数器以及SQL语句的签名。
4.根据权利要求3所述的基于区块链的分布式关系型数据库的管理方法,其特征在于,所述事务签名包含数据库名称、事务计数器和SQL语句,该签名是基于数据库名称、事务计数器和SQL语句的序列化。
5.根据权利要求1所述的基于区块链的分布式关系型数据库的管理方法,其特征在于,所述并由各个子节点参与执行和验证SQL语句查询的结果,以根据所述SQL语句执行当前节点的数据变更,包括:
任一子节点接收到一个事务请求时,进行解密,还原事务的密文,首先对事务请求进行权限审核,确认对该数据库发生变更的权限;然后进行解析获得原始所述SQL语句,根据系统响应的执行策略执行SQL查询并返回结果;
通过子节点共识的事务请求,可以根据所述SQL语句执行当前节点的数据变更。
6.一种实施权利要求1-5任一项所述方法的管理系统,其特征在于,包括
接口模块:用于提供标准的通信接口,获取签名的事务请求以进行解密;
权限管理器:用于对事务请求中包含的节点信息进行权限验证;
SQL解析器:用于对事务请求进行分解获得源数据库变更的SQL语句;
执行策略管理器:用于根据预设的执行策略将所述SQL语句分配给任务管理器;
任务管理器:用于根据所述SQL语句执行查询并返回结果。
7.根据权利要求6所述的管理系统,其特征在于,还包括
包括事务管理器;用于负责保证数据一致性和事务生命周期管理;
数据溯源审计管理器,用于负责生成和展示不可篡改的数据溯源与操作log记录和展示;
资源管理器:用于根据数据库表管理所有参与分布式关系型数据库管理系统的节点信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江创邻科技有限公司,未经浙江创邻科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010543740.5/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种用于金属门生产的隔音棉粘贴涂胶装置
- 下一篇:一种炒芝麻的控制系统