一种基于分链技术的联盟链数据处理方法与流程

文档序号:35102706发布日期:2023-08-10 10:22阅读:42来源:国知局
一种基于分链技术的联盟链数据处理方法与流程

本发明涉及区块链领域,尤其涉及一种基于分链技术的联盟链数据处理方法。


背景技术:

1、区块链在不同场景下的应用,都因高冗余存储(每个节点存储一份完整的数据)增强了数据的公开性、透明性,提高了系统的可用性;但另一方面,每个节点都同步最新账本会给区块链带来性能问题和巨大的存储压力;从应用开发的方面来说,基于区块链的应用开发需要满足可扩展性要求和一致性要求,区块链的一致性是指存储在区块链不同节点中的数据副本的取值必须一致,它通过共识算法、数据的可靠传输、高冗余存储和加密技术来实现,但是高冗余存储会增加节点的存储压力,导致存储可扩展性问题。因此如何兼顾区块链特性的同时,解决因业务发展带来的高冗余存储成为关注和研究的重点。

2、针对现有技术中出现的区块链高冗余存储问题,有学者提出了链上存储和链下存储两种方式。链上存储是指节点不需存储完整账本数据,每个节点约定仅存储部分账本,只需要在整条链可查询完整账本即可,这种形式的存储方式存在较大的安全问题,如存储某部分数据的节点异常下线后,该区块链的这部分数据将不能通过其他节点找回。链下存储是将部分数据的存储转移到另一个外部存储系统中,从而缓解大部分区块链网络节点的存储压力,但是这种存储形式不支持历史数据的查询,导致整条区块链的信用崩盘。比如一个白酒溯源区块链,酒厂在2000年生产的酒,数据上链后,在20年后消费者想要查询真伪时,由于数据链下存储导致溯源系统返回查询为空,若因此消费者认为是假酒,那么对品牌商业信誉造成的影响是无可估量的。

3、当前链上存储数据在随着业务的增长,数据量不断的叠加其存储空间也不断增大,但是现有链上扩展存储还是链下扩展存储的方式,都会牺牲掉一部分区块链的信息公开透明、不可篡改、可追溯的特性以保证链上数据的高速访问和可用。

4、所以如何能够提供一种既能够解决高冗余存储又能够查找历史数据的数据链处理方法成为亟待解决的问题。


技术实现思路

1、本发明提供一种基于分链技术的联盟链数据处理方法,用以解决现有技术无法在解决高冗余问题的同时实现查找历史数据的问题。

2、为了实现上述目的,本发明技术方案提供了一种基于分链技术的联盟链数据处理方法,包括:根据维度将目标区块链拆分,得到由一条主干链和若干条历史支链组成的联盟链;根据维度中的有效标记设置所述主干链和各所述历史支链上的节点属性;其中,所述历史支链上仅有只读节点,所述主干链包括只读节点和共识节点;使用所述共识节点和前置索引节点进行链上交易,使用所述只读节点进行链上交易查询。

3、作为上述技术方案的优选,较佳的,根据维度将目标区块链拆分,得到由一条主干链和若干条历史支链组成的联盟链,包括:从所述目标区块链中提取符合维度要求的链,将其作为新的主干链,所述目标区块链中的各剩余链为历史支链;新的主干链的主干链服务器根据节点的个数创建新的相同数量的只读节点,构成一条新的主干链;当前主干链服务器上运行着两条主干链,运行节点包括原主干链共识节点和只读节点、新主干链只读节点;历史支链服务器上运行若干条历史支链,历史支链的运行节点为只读节点。

4、作为上述技术方案的优选,较佳的,根据所述时间维度中的有效标记设置所述主干链和各所述历史支链上的节点属性,包括:触发节点变更,新的主干链中的只读节点中除规定不变更的只读节点之外,剩余均转化为共识节点,原主干链上的各共识节点全部转化为只读节点;各历史支链上的运行节点维持原类型不变。

5、作为上述技术方案的优选,较佳的,历史支链服务器创建和原主干链上节点相同的若干个只读节点,并同步所述原主干链上的只读节点数据,从而构成一条新的历史支链。

6、作为上述技术方案的优选,较佳的,构成一条新的历史支链之后,包括:卸载原主干链上的所有只读节点,使得当前主干链服务器仅运行新的主干链。

7、作为上述技术方案的优选,较佳的,使用所述共识节点和前置索引节点进行链上交易,包括:前置索引节点根据接收到的上链交易请求生成时间戳,并结合交易请求发送至所述共识节点;共识节点确认所述交易请求后,向剩余共识节点广播交易;剩余共识节点收到广播消息,向发起广播的共识节点和所述只读节点广播交易上链结果;发起广播的共识节点收到2/3共识节点的相同广播消息后,确认交易上链成功并向前置节点返回交易请求上链结果;

8、所述前置节点将交易请求上链结果及上链时间戳返回业务系统。

9、作为上述技术方案的优选,较佳的,使用所述只读节点进行链上交易查询,包括:前置索引节点根据查询请求中的商品信息查询各个只读节点;若商品信息中的商品流转环节号大于零,则根据商品时间戳查询对应的主干链或历史支链;若当前当前链查询结果为空,则查询上一条支链,否则,记录查询结果并将其添加到输出总结果;若所述商品流转环节号小于或等于零,则返回总结果。

10、本发明技术方案提供了一种基于分链技术的联盟链数据处理方法,根据时间维度将目标区块链拆分,得到由一条主干链和若干条历史支链组成的联盟链;根据时间维度中的时间有效期设置所述主干链和各所述历史支链上的节点属性;使用共识节点和前置索引节点进行链上交易,使用只读节点进行链上交易查询。

11、本发明的优点是在应用系统访问链上数据之间增加索引节点,交易请求经由索引节点指向业务交易对应使用基于时间逻辑定义的私有链,提升联盟链数据的访问效率,缓解业务增长带来的海量数据存储压力;采用基于维度(例如时间)索引分链技术的联盟链数据处理模型,将一条区块链化整为零,形成一条主干链加多条历史支链的联盟链组合,既解决历史数据高冗余存储的压力,同时保留区块链信息公开透明、不可篡改、可追溯的特性。得到的联盟链主干链和历史支链的节点严格区分实现联盟链数据的读写分离,查询数据用只读节点,交易写入数据用共识节点,可大大缓解联盟链的压力,提高联盟链的性能。



技术特征:

1.一种基于分链技术的联盟链数据处理方法,其特征在于,所述方法包括:

2.根据权利要求1所述的数据处理方法,其特征在于,所述根据维度将目标区块链拆分,得到由一条主干链和若干条历史支链组成的联盟链,包括:

3.根据权利要求2所述的数据处理方法,其特征在于,所述根据所述维度中的有效标记设置所述主干链和各所述历史支链上的节点属性,包括:

4.根据权利要求3所述的数据处理方法,其特征在于,还包括,历史支链服务器创建和原主干链上节点相同的若干个只读节点,并同步所述原主干链上的只读节点数据,从而构成一条新的历史支链。

5.根据权利要求4所述的数据处理方法,其特征在于,还包括,所述构成一条新的历史支链之后,包括:

6.根据权利要求1所述的数据处理方法,其特征在于,所述使用所述共识节点和前置索引节点进行链上交易,包括:

7.根据权利要求1所述的数据处理方法,其特征在于,所述使用所述只读节点进行链上交易查询,包括:


技术总结
本发明提供一种基于分链技术的联盟链数据处理方法,通过将目标区块链拆分,得到由一条主干链和若干条历史支链组成的联盟链;根据维度中的有效标记设置所述主干链和各所述历史支链上的节点属性;使用共识节点和前置索引节点进行链上交易,使用只读节点进行链上交易查询。优点是,增加索引节点,交易请求经由索引节点指向业务交易对应使用定义的私有链,提升数据的访问效率,缓解业务存储压力;将一条区块链化整为零,构成联盟链组合,解决历史数据高冗余存储的压力,同时保留区块链的特性。联盟链主干链和历史支链的节点严格区分,从而实现数据的读写分离,查询数据用只读节点,交易写入数据用共识节点,缓解联盟链的压力,提高联盟链的性能。

技术研发人员:蒋作琛,尚可,杨波,孙茂增,张彦超,佟冬,马志鹏,王京,鲍帅
受保护的技术使用者:北京银联金卡科技有限公司
技术研发日:
技术公布日:2024/1/14
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1