本技术涉及区块链,尤其涉及基于多区块链的数据处理方法、相关设备、介质及产品。
背景技术:
1、在一些多区块链的应用场景中,如基于三链结构的区块链电子发票系统,该三链中的票据链上的业务数据量较多,且时效性很强,在这样的特性下,票据链的区块高度和数据存储量会迅速增长,从而占据大量的存储资源和计算资源。基于此,发明人认为如何在不影响这三链原本业务处理逻辑的基础上,实现对链上数据的归档是一个亟待解决的问题。
技术实现思路
1、本技术实施例提供了一种基于多区块链的数据处理方法、相关设备、介质及产品,通过对区块链的状态的进行切换,可以实现对区块链上的数据的有效归档。
2、本技术实施例一方面提供了一种基于多区块链的数据处理方法,方法由目标主链所对应的目标网络中的目标共识节点执行,方法包括:
3、在获取到目标对象通过调度客户端提交的第一状态切换交易时,调用目标主链上的链状态管理合约将第一主链的链状态由主链状态变更为第一子链状态,且将目标子链的链状态配置为主链状态;
4、将处于第一子链状态的第一主链确定为第一子链,且将处于主链状态的目标子链作为用于替换第一主链的第二主链;
5、通过链状态管理合约向与第一子链相关联的第一共识节点发送第一跨链调用信息,且向与第二主链相关联的第二共识节点发送第二跨链调用信息;第一跨链调用信息用于指示第一共识节点在将与第一子链上的第一资源合约相关联的链状态由主链状态变更为第一子链状态时,生成第一跨链调用响应信息;第二跨链调用信息用于指示第二共识节点在将与第二主链上的第二资源合约相关联的链状态配置为主链状态时,生成第二跨链调用响应信息;
6、在获取到第一共识节点返回的第一跨链调用响应信息以及第二共识节点返回的第二跨链调用响应信息时,对业务访问入口处的主链访问参数和子链访问参数进行更新处理;更新后的主链访问参数用于访问第二主链,更新后的子链访问参数用于访问第一子链。
7、其中,方法还包括:
8、在将处于第一子链状态的第一主链确定为第一子链时,调用目标主链上的链状态管理合约对第一主链对应的第一网络中的共识节点进行删减处理,基于删减处理后的第一网络中的共识节点构建第一子链对应的第一子网络;第一子网络的网络等级低于第一网络的网络等级。
9、其中,所述方法还包括:
10、在通过目标主链上的子链创建管理合约创建目标子链时,配置目标子链对应的目标子网络中的共识节点;
11、在将处于主链状态的目标子链作为用于替换第一主链的第二主链时,基于目标子网络中的共识节点构建第二主链对应的第二网络;第二网络的网络等级与第一网络的网络等级保持一致。
12、其中,第一子链对应的共识网络为第一子网络,第一子网络中的共识节点包含第一共识节点,第一共识节点存储有第一子链对应的账本数据和第一主链对应的账本数据;第一子网络为对第一主链对应的第一网络中的共识节点进行删减处理后得到的;
13、方法还包括:
14、在通过链状态管理合约检测到第一共识节点的节点资源达到资源消耗阈值时,通知第一共识节点对第一主链对应的账本数据进行清除。
15、其中,第一共识节点中包含业务合约,方法还包括:
16、在将处于第一子链状态的第一主链确定为第一子链时,为第一子链配置第一业务分类字段,第一业务分类字段用于对业务访问入口处的与第一子链相关的子链访问参数进行更新;
17、通知第一共识节点对第一子链上的业务合约进行锁定;锁定的业务合约不具备执行业务处理的权限;
18、在将处于主链状态的目标子链作为第二主链时,为第二主链配置第二业务分类字段,第二业务分类字段用于对业务访问入口处的与第二子链相关的子链访问参数进行更新。
19、其中,方法还包括:
20、在获取到目标对象通过调度客户端提交的第二状态切换交易时,调用第目标主链上的链状态管理合约将第一子链的链状态由第一子链状态变更为第二子链状态;
21、将处于第二子链状态的第一子链确定为第二子链;
22、通过链状态管理合约向与第二子链相关联的第三共识节点发送第三跨链调用信息;第三跨链调用信息用于指示第三共识节点在将与第二子链上的第三资源合约相关联的链状态由第一子链状态变更为第二子链状态时,生成第三跨链调用响应信息;
23、在获取到第三共识节点返回的第三跨链调用响应信息时,对业务访问入口处的子链访问参数进行更新处理;更新后的子链访问参数用于访问第二子链。
24、其中,方法还包括:
25、在将处于第二子链状态的第一子链确定为第二子链时,调用目标主链上的链状态管理合约对第一子链对应的第一子网络中的共识节点进行删减处理,基于删减处理后的第一子网络中的共识节点构建第二子链对应的第二子网络;第二子网络的网络等级低于第一子网络的网络等级。
26、其中,第二子链对应的共识网络为第二子网络,第二子网络中的共识节点包含第三共识节点,第三共识节点存储有第一子链对应的账本数据和第二子链对应的账本数据;第二子网络为对第一子链对应的第一子网络中的共识节点进行删减处理后得到的;方法还包括:
27、在通过链状态管理合约检测到第三共识节点的节点资源达到资源消耗阈值时,通知第三共识节点对第一子链对应的账本数据进行清除。
28、其中,方法还包括:
29、在将处于第二子链状态的第一子链确定为第二子链时,为第二子链配置第三业务分类字段,第三业务分类字段用于对业务访问入口处的与第二子链相关的子链访问参数进行更新;
30、通知第三共识节点对第二子链上的第三资源合约进行锁定;锁定的第三资源合约不具备执行跨链转移资源的权限。
31、其中,第一主链的业务合约中包括与第一主链相关联的票据业务的票据业务处理状态信息;方法还包括:
32、在第一主链被确定为第一子链,且目标子链被确定为第二主链时,通过链状态管理合约通知第二主链所对应的第二共识节点基于票据业务处理状态信息对第二主链上的用于执行票据业务的业务合约的合约数据进行更新处理。
33、一方面,本技术实施例公开了一种基于多区块链的数据处理方法,方法由用于提供业务访问入口的业务访问设备执行,方法包括:
34、接收与目标主链相关联的目标共识节点发送的访问参数更新请求;参数更新请求是目标共识节点在获取到与第一子链相关联的第一共识节点返回的第一跨链调用响应信息以及与第二主链相关联的第二共识节点返回的第二跨链调用响应信息时所生成的;第一跨链调用响应信息为第一共识节点在根据目标共识节点发送的第一跨链调用信息将与第一子链上的第一资源合约相关联的链状态由主链状态变更为第一子链状态时生成;第二跨链调用响应信息为第二共识节点在根据目标共识节点发送的第二跨链调用信息将与第二主链上的第二资源合约相关联的链状态配置为主链状态时生成;
35、基于访问参数更新请求对对业务访问入口处的主链访问参数和子链访问参数进行更新处理,更新后的主链访问参数用于访问第二主链,更新后的子链访问参数用于访问第一子链。
36、其中,业务访问入口处所存储的业务分类字段中包含第一业务分类字段和第二业务分类字段;第一业务分类字段为更新后的子链访问参数中包含用于索引第一子链的业务分类字段,且第二业务分类字段为更新后的主链访问参数中包含用于索引第二主链的业务分类字段;
37、在通过业务访问入口接收到业务对象通过业务终端提交的业务交易时,根据业务交易中携带的链索引字段,在业务访问入口所存储的业务分类字段中对链索引字段进行字段查找,得到字段查找结果;
38、若字段索引结果指示在业务访问入口处查找到与链索引字段相匹配的业务分类字段为第一业务分类字段,则确定业务对象所访问的区块链为第一子链,获取与第一子链相关联的第一共识节点的路由信息,基于第一共识节点的路由信息将交易业务作为第一业务交易转发给第一共识节点;
39、若字段索引结果指示在业务访问入口处查找到与链索引字段相匹配的业务分类字段为第二业务分类字段,则确定业务对象所需访问的区块链为第二主链,获取与第二主链相关联的第二共识节点的路由信息,基于第二共识节点的路由信息将交易业务作为第二业务交易转发给第二共识节点。
40、本技术实施例一方面提供了一种基于多区块链的数据处理方法,方法由与第一子链相关联的第一共识节点执行,方法包括:
41、接收目标共识节点发送的第一跨链调用信息;
42、基于第一跨链调用信息将与第一子链上的第一资源合约相关联的链状态由主链状态变更为第一子链状态,并生成第一跨链调用响应信息;
43、向目标共识节点返回第一跨链调用响应信息,以使得目标共识节点在获取到第一跨链调用响应信息以及第二共识节点返回的第二跨链调用响应信息时,对业务访问入口处的主链访问参数和子链访问参数进行更新处理;更新后的主链访问参数用于访问第二主链,更新后的子链访问参数用于访问第一子链;第二跨链调用响应信息为第二共识节点在根据目标共识节点发送的第二跨链调用信息将与第二主链上的第二资源合约相关联的链状态配置为主链状态时生成。
44、本技术实施例一方面提供了一种基于多区块链的数据处理方法,方法由第二主链相关联的第二共识节点执行,方法包括:
45、接收目标共识节点发送的第二跨链调用信息;
46、基于第二跨链调用信息将与第二主链上的第二资源合约相关联的链状态配置为主链状态时,并生成第二跨链调用响应信息;
47、向目标共识节点返回第二跨链调用响应信息,以使得目标共识节点在获取到第一共识节点的第一跨链调用响应信息以及第二跨链调用响应信息时,对业务访问入口处的主链访问参数和子链访问参数进行更新处理;更新后的主链访问参数用于访问第二主链,更新后的子链访问参数用于访问第一子链;第一跨链调用响应信息为第一共识节点在根据目标共识节点发送的第一跨链调用信息将与第一子链上的第一资源合约相关联的链状态由主链状态变更为第一子链状态时生成。
48、本技术实施例一方面提供了一种基于多区块链的数据处理装置,装置运行在目标主链所对应的目标网络中的目标共识节点上,装置包括:
49、获取单元,用于在获取到目标对象通过调度客户端提交的第一状态切换交易时,调用目标主链上的链状态管理合约将第一主链的链状态由主链状态变更为第一子链状态,且将目标子链的链状态配置为主链状态;
50、处理单元,用于将处于第一子链状态的第一主链确定为第一子链,且将处于主链状态的目标子链作为用于替换第一主链的第二主链;
51、信息发送单元,用于通过链状态管理合约向与第一子链相关联的第一共识节点发送第一跨链调用信息,且向与第二主链相关联的第二共识节点发送第二跨链调用信息;第一跨链调用信息用于指示第一共识节点在将与第一子链上的第一资源合约相关联的链状态由主链状态变更为第一子链状态时,生成第一跨链调用响应信息;第二跨链调用信息用于指示第二共识节点在将与第二主链上的第二资源合约相关联的链状态配置为主链状态时,生成第二跨链调用响应信息;
52、信息接收单元,用于在获取到第一共识节点返回的第一跨链调用响应信息以及第二共识节点返回的第二跨链调用响应信息时,对业务访问入口处的主链访问参数和子链访问参数进行更新处理;更新后的主链访问参数用于访问第二主链,更新后的子链访问参数用于访问第一子链。
53、本技术实施例一方面提供了一种基于多区块链的数据处理装置,运行在用于提供业务访问入口的业务访问设备上,装置包括:
54、接收单元,用于接收与目标主链相关联的目标共识节点发送的访问参数更新请求;参数更新请求是目标共识节点在获取到与第一子链相关联的第一共识节点返回的第一跨链调用响应信息以及与第二主链相关联的第二共识节点返回的第二跨链调用响应信息时所生成的;第一跨链调用响应信息为第一共识节点在根据目标共识节点发送的第一跨链调用信息将与第一子链上的第一资源合约相关联的链状态由主链状态变更为第一子链状态时生成;第二跨链调用响应信息为第二共识节点在根据目标共识节点发送的第二跨链调用信息将与第二主链上的第二资源合约相关联的链状态配置为主链状态时生成;
55、更新单元,用于基于访问参数更新请求对对业务访问入口处的主链访问参数和子链访问参数进行更新处理,更新后的主链访问参数用于访问第二主链,更新后的子链访问参数用于访问第一子链。
56、本技术实施例一方面提供了一种基于多区块链的数据处理装置,装置运行在与第一子链相关联的第一共识节点上,装置包括:
57、接收单元,用于接收目标共识节点发送的第一跨链调用信息;
58、信息生成单元,用于基于第一跨链调用信息将与第一子链上的第一资源合约相关联的链状态由主链状态变更为第一子链状态,并生成第一跨链调用响应信息;
59、信息发送单元,用于向目标共识节点返回第一跨链调用响应信息,以使得目标共识节点在获取到第一跨链调用响应信息以及第二共识节点返回的第二跨链调用响应信息时,对业务访问入口处的主链访问参数和子链访问参数进行更新处理;更新后的主链访问参数用于访问第二主链,更新后的子链访问参数用于访问第一子链;第二跨链调用响应信息为第二共识节点在根据目标共识节点发送的第二跨链调用信息将与第二主链上的第二资源合约相关联的链状态配置为主链状态时生成。
60、本技术实施例一方面提供了一种基于多区块链的数据处理装置,装置运行在第二主链相关联的第二共识节点上,装置包括:
61、接收单元,用于接收目标共识节点发送的第二跨链调用信息;
62、信息生成单元,用于基于第二跨链调用信息将与第二主链上的第二资源合约相关联的链状态配置为主链状态时,并生成第二跨链调用响应信息;
63、信息发送单元,用于向目标共识节点返回第二跨链调用响应信息,以使得目标共识节点在获取到第一共识节点的第一跨链调用响应信息以及第二跨链调用响应信息时,对业务访问入口处的主链访问参数和子链访问参数进行更新处理;更新后的主链访问参数用于访问第二主链,更新后的子链访问参数用于访问第一子链;第一跨链调用响应信息为第一共识节点在根据目标共识节点发送的第一跨链调用信息将与第一子链上的第一资源合约相关联的链状态由主链状态变更为第一子链状态时生成。
64、本技术实施例一方面提供了一种基于多区块链的数据处理系统,系统包括:目标主链相关联的目标共识节点,第一子链相关联的第一共识节点,第二主链相关联的第二共识节点,用于提供业务访问入口的业务访问设备;跨链服务终端用于隔离多区块链中的源数据链和业务处理子链;第一子链以及第二主链具有同一业务访问入口,第一子链是在多区块链中的第一主链的链状态由主链状态变更为第一子链状态时所确定的,第二主链是由多区块链中的目标子链的链状态配置为主链状态时所确定的,且第二主链用于替换第一主链;
65、目标共识节点,用于在获取到目标对象通过调度客户端提交的第一状态切换交易时,调用目标主链上的链状态管理合约将第一主链的链状态由主链状态变更为第一子链状态,且将目标子链的链状态配置为主链状态;将处于第一子链状态的第一主链确定为第一子链,且将处于主链状态的目标子链作为用于替换第一主链的第二主链;通过链状态管理合约向与第一子链相关联的第一共识节点发送第一跨链调用信息,且向与第二主链相关联的第二共识节点发送第二跨链调用信息;
66、第一共识节点,用于接收目标共识节点发送的第一跨链调用信息;基于第一跨链调用信息将与第一子链上的第一资源合约相关联的链状态由主链状态变更为第一子链状态,并生成第一跨链调用响应信息;向目标共识节点返回第一跨链调用响应信息;
67、第二共识节点,用于接收目标共识节点发送的第二跨链调用信息;基于第二跨链调用信息将与第二主链上的第二资源合约相关联的链状态配置为主链状态时,并生成第二跨链调用响应信息;向目标共识节点返回第二跨链调用响应信息;
68、业务访问设备,用于接收与目标主链相关联的目标共识节点发送的访问参数更新请求;基于访问参数更新请求对对业务访问入口处的主链访问参数和子链访问参数进行更新处理。
69、本技术实施例一方面提供了一种计算机设备,包括存储器和处理器,存储器与处理器相连,存储器用于存储计算机程序,处理器用于调用计算机程序,以使得该计算机设备执行本技术实施例中上述一方面提供的方法。
70、本技术实施例一方面提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序适于由处理器加载并执行,以使得具有处理器的计算机设备执行本技术实施例中上述一方面提供的方法。
71、根据本技术的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述一方面提供的方法。
72、在本技术实施例中,多区块链包含管理链(也称目标主链),第一主链(即处于主链状态的票据链)以及与第一主链具有同一业务访问入口的目标子链。该数据处理方案可以由目标主链所对应的目标网络中的目标共识节点执行,通过对区块链(如票据链)的状态的进行切换,实现对区块链上的数据的有效归档。也就是,目标共识节点可以在获取到目标对象通过调度客户端提交的第一状态切换交易时,调用目标主链上的链状态管理合约将第一主链的链状态由主链状态变更为第一子链状态,且将目标子链的链状态配置为主链状态,然后将处于第一子链状态的第一主链确定为第一子链,且将处于主链状态的目标子链作为用于替换第一主链的第二主链,进而可以通知第一子链的共识节点将第一子链上的第一资源合约关联的链状态进行调整,以及通知第二主链的共识节点将第二主链上的第二资源合约关联的链状态进行调整,还可以对业务访问入口处的访问参数(主链访问参数和子链访问参数)进行更新处理。由此可以在需要对链上数据进行归档时,通过将原本的主链(如第一主链)调整为子链(如第一子链),并利用创建的一个新的子链(目标子链)替换原本的主链进行业务处理,以将原本的主链轮替下来,避免了由于数据量的增长对原本的主链对应的存储资源和计算资源造成的大量占用,实现对区块链上的数据的有效归档,并且,通过部署的多区块链来分别进行数据存储,可以降低各区块链上数据存储的混杂度。