数据操作方法、装置、存储介质和区块链系统制造方法及图纸

技术编号:34771614 阅读:35 留言:0更新日期:2022-08-31 19:34
本公开涉及一种数据操作方法、装置、存储介质和区块链系统,该方法应用于区块链网络中的区块链节点,包括:响应于对所述区块链节点对应的数据库发起的操作请求,校验所述操作请求的发起方是否具有相应的数据库操作权限;在权限校验通过的情况下,对所述数据库执行相应的数据库操作;在所述数据库操作完成后,将本次数据库操作的操作记录封装到交易中,并向所述区块链网络中的其他区块链节点广播所述交易,以使其他区块链节点在共识所述交易后将所述交易记录到区块链上。本公开结合区块链共识可信、去中心化和防篡改的特点,将对数据库的所有操作记录存储到区块链上,达到数据可追溯、不可篡改的目的。不可篡改的目的。不可篡改的目的。

【技术实现步骤摘要】
数据操作方法、装置、存储介质和区块链系统


[0001]本公开涉及数据处理
,具体地,涉及一种数据操作方法、装置、存储介质和区块链系统。

技术介绍

[0002]通过对数据中台的建设,能够对现有的各类信息资源进行有效整合,形成更加集中、有序以及共享的数据,打破信息孤岛,从而能够让行业和部门之间的信息进行有效共享,进而有效提升协作效率以及服务水平。在数据管理方面,数据中台能够将下属各部门的数据集中起来,并向上层应用统一地提供服务,但是,上层应用能够轻易读取、修改和操作数据中台所管理的数据,其数据安全性难以得到保证。

技术实现思路

[0003]本公开的目的是提供一种数据操作方法、装置、存储介质和区块链系统,以解决上述技术问题。
[0004]为了实现上述目的,第一方面,本公开提供一种数据操作方法,应用于区块链网络中的区块链节点,所述方法包括:
[0005]响应于对所述区块链节点对应的数据库发起的操作请求,校验所述操作请求的发起方是否具有相应的数据库操作权限;
[0006]在权限校验通过的情况下,对所述数据库执行相应的数据库操作;
[0007]在所述数据库操作完成后,将本次数据库操作的操作记录封装到交易中,并向所述区块链网络中的其他区块链节点广播所述交易,以使其他区块链节点在共识所述交易后将所述交易记录到区块链上。
[0008]可选地,所述方法还包括:在所述交易共识失败的情况下,回滚对所述数据库执行的所述数据库操作。
[0009]可选地,所述对所述数据库执行相应的数据库操作,包括:
[0010]确定预设的冲突检测规则库,所述冲突检测规则库中包括多个禁止规则,所述禁止规则用于指示所述数据库中的数据表对应的被禁止操作;
[0011]将所述数据库操作分解为对所述数据库中的数据表的多个原子级操作;
[0012]根据所述冲突检测规则库对所述多个原子级操作进行冲突检测;
[0013]根据所述多个原子级操作中未与所述冲突检测规则库中的禁止规则发生冲突的原子级操作,生成线性操作流;
[0014]对所述区块链节点对应的数据库依次执行所述线性操作流中的每个原子级操作。
[0015]可选地,所述方法还包括:
[0016]确定预设的操作转移规则库,所述操作转移规则库中包括多个转移规则,每个所述转移规则用于指示当对应操作执行失败时的处理策略;
[0017]所述对所述区块链节点对应的数据库依次执行所述线性操作流中的每个原子级
操作,包括:
[0018]在执行所述线性操作流中的所述原子级操作失败的情况下,确定所述操作转移规则库中与所述原子级操作对应的目标转移规则;
[0019]响应所述目标转移规则中的所述处理策略。
[0020]可选地,所述方法还包括:
[0021]确定数据聚合计划,所述数据聚合计划用于指示数据聚合操作的触发条件、所述数据聚合操作对应的至少一个源数据表以及所述数据聚合操作对应的目标关系模式;
[0022]当确定所述触发条件满足时,从区块链上提取出对应所述源数据表的操作记录,并根据所述操作记录还原出对应的所述源数据表;
[0023]将还原出的所述至少一个源数据表聚合到所述目标关系模式下,得到聚合表;
[0024]向所述区块链网络中的其他区块链节点广播所述聚合表,以使其他区块链节点在共识所述聚合表后将所述聚合表记录到区块链上。
[0025]可选地,所述将还原出的所述至少一个源数据表聚合到所述目标关系模式下,得到聚合表,包括:
[0026]构建具有所述目标关系模式的聚合表,所述目标关系模式包括表结构和表字段,所述表字段包括主键和非主键属性;
[0027]建立每个源数据表的非主键属性与所述聚合表的非主键属性的映射关系;
[0028]确定主键调解表,所述主键调解表用于将每个源数据表的主键分别映射到所述主键调解表的主键;
[0029]针对每个源数据表,将所述源数据表与所述主键调解表进行自然连接,得到对应的中间数据表;
[0030]根据设置的第一投影条件和所述中间数据表,对所述源数据表进行对应的投影运算,并根据所述源数据表与所述聚合表之间的所述映射关系,将投影运算的结果映射为所述聚合表的表项,获得目标数据;
[0031]将每个源数据表对应的目标数据进行并操作,将并操作的结果写入到所述聚合表中。
[0032]可选地,所述方法还包括:
[0033]构建与所述聚合表具有相同关系模式的历史表;
[0034]根据设置的第二投影条件对所述聚合表进行对应的投影运算,获得待迁移数据;
[0035]将所述待迁移数据迁移到所述历史表中;
[0036]向所述区块链网络中的其他区块链节点广播所述历史表,以使其他区块链节点在共识所述历史表后将所述历史表记录到区块链上。
[0037]第二方面,本公开提供一种数据操作装置,配置于区块链网络中的区块链节点,所述装置包括:
[0038]权限校验模块,用于响应于对所述区块链节点对应的数据库发起的操作请求,校验所述操作请求的发起方是否具有相应的数据库操作权限;
[0039]数据库操作模块,用于在权限校验通过的情况下,对所述数据库执行相应的数据库操作;
[0040]记录上链模块,用于在所述数据库操作完成后,将本次数据库操作的操作记录封
装到交易中,并向所述区块链网络中的其他区块链节点广播所述交易,以使其他区块链节点在共识所述交易后将所述交易记录到区块链上。
[0041]第三方面,本公开提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面所述的方法。
[0042]第四方面,本公开提供一种区块链系统,包括由多个区块链节点组成的区块链网络,每个所述区块链节点上设有数据中台业务模块,所述数据中台业务模块中部署有智能合约,所述区块链节点用于执行所述数据中台业务模块中的所述智能合约,以实现第一方面所述的方法。
[0043]通过上述技术方案,由于对操作请求的发起方的相应数据库操作权限进行了权限校验,实现了数据访问的控制,且将对数据库执行的所有操作均记录到区块链上,使得上层应用无法轻易对数据库中的数据进行篡改,具有数据中台的数据可追溯、不可篡改的效果。而且,传统数据库存在灾备能力差的缺点,而上述方案中,由于对数据库的所有操作均存储在区块链上,因此所有区块链节点都可以从区块链上查询到对各个数据库中的所有数据表的操作记录,根据操作记录可得到所有入库的数据表,这样每个区块链节点都能获得全局一致的入库的数据表,从而提升数据库的容灾能力,且这种方式能够有效兼容异构的数据库。
[0044]此外,考虑到区块链网络对交易进行共识的效率较低,因此本方案采用的是先入库再共识的方式,优先保障区块链节点具有数据库级别的性能,让数据库操作能够及时完成,在此基础之上,再将操作记录进行共识上链,从而确保不会影响与数据库进行交互的其他外本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据操作方法,其特征在于,应用于区块链网络中的区块链节点,所述方法包括:响应于对所述区块链节点对应的数据库发起的操作请求,校验所述操作请求的发起方是否具有相应的数据库操作权限;在权限校验通过的情况下,对所述数据库执行相应的数据库操作;在所述数据库操作完成后,将本次数据库操作的操作记录封装到交易中,并向所述区块链网络中的其他区块链节点广播所述交易,以使其他区块链节点在共识所述交易后将所述交易记录到区块链上。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:在所述交易共识失败的情况下,回滚对所述数据库执行的所述数据库操作。3.根据权利要求1所述的方法,其特征在于,所述对所述数据库执行相应的数据库操作,包括:确定预设的冲突检测规则库,所述冲突检测规则库中包括多个禁止规则,所述禁止规则用于指示所述数据库中的数据表对应的被禁止操作;将所述数据库操作分解为对所述数据库中的数据表的多个原子级操作;根据所述冲突检测规则库对所述多个原子级操作进行冲突检测;根据所述多个原子级操作中未与所述冲突检测规则库中的禁止规则发生冲突的原子级操作,生成线性操作流;对所述区块链节点对应的数据库依次执行所述线性操作流中的每个原子级操作。4.根据权利要求3所述的方法,其特征在于,所述方法还包括:确定预设的操作转移规则库,所述操作转移规则库中包括多个转移规则,每个所述转移规则用于指示当对应操作执行失败时的处理策略;所述对所述区块链节点对应的数据库依次执行所述线性操作流中的每个原子级操作,包括:在执行所述线性操作流中的所述原子级操作失败的情况下,确定所述操作转移规则库中与所述原子级操作对应的目标转移规则;响应所述目标转移规则中的所述处理策略。5.根据权利要求1所述的方法,其特征在于,所述方法还包括:确定数据聚合计划,所述数据聚合计划用于指示数据聚合操作的触发条件、所述数据聚合操作对应的至少一个源数据表以及所述数据聚合操作对应的目标关系模式;当确定所述触发条件满足时,从区块链上提取出对应所述源数据表的操作记录,并根据所述操作记录还原出对应的所述源数据表;将还原出的所述至少一个源数据表聚合到所述目标关系模式下,得到聚合表;向所述区块链网络中的其他区块链节点广播所述聚合表,以使其他区块链节点在共识所述聚合表后将所述聚合表记录到区块链上。6.根据...

【专利技术属性】
技术研发人员:刘思瀚徐石成何光宇
申请(专利权)人:东软集团股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1