一种基于区块链的数据扁平化方法及系统技术方案

技术编号:24409675 阅读:35 留言:0更新日期:2020-06-06 08:38
本发明专利技术公开了一种基于区块链的数据扁平化方法及系统,其中方法包括以下步骤:建立数据扁平化节点;数据扁平化节点通过分布式方式获取账户数据,得到账户数据快照,构建本地数据,参与共识;定期清理不参与共识的数据,清理账户数据历史快照,达到区块链节点本地数据库数据扁平化。本发明专利技术的一种基于区块链的数据扁平化方法去除冗余和繁杂,达到数据扁平化,大幅降低硬件资源要求、降低区块链应用落地门槛;采用分布式同步账户数据的方式,充分利用区块链节点资源,大幅提高构建本地数据的速度,为轻型设备秒接入区块链成为区块链节点提供基础。

A data flattening method and system based on blockchain

【技术实现步骤摘要】
一种基于区块链的数据扁平化方法及系统
本专利技术涉及数据处理领域,尤其涉及一种基于区块链的数据扁平化方法及系统。
技术介绍
区块链技术是一种分布式数据处理技术,加密数据通过P2P网络通信技术发送给各个节点以达到全网节点共识,从而确保数据不可篡改和不可伪造。随着互联网技术的发展,区块链技术的去中心化、公开透明、不可篡改、可信任等优点,在智能合约、文件存储、供应链金融、身份验证、数字政务、电子商务、物联网、社交通讯等众多领域得到广泛应用。随着区块链技术发展,区块链数据沉淀越来越大,对于新加入的节点完全同步区块链数据面临巨大挑战,数据同步过程耗费大量时间,浪费硬件资源,增加运营成本,提高区块链应用落地的门槛,不利于区块链生态发展。在现有的区块链数据处理方案中,每个节点本地数据完全一致;缺失数据的节点都需要从所连接的节点同步数据,处理数据,本地保存数据,以达到区块链网络共识。节点收到区块数据后执行区块数据中的交易列表,本地保存区块数据、交易列表、执行交易的结果、账户数据;前三类数据均保存在本地数据库,而账户数据既保存在本地,又作为缓存存储在Merkle-PatriciaTree结构体对象中。
技术实现思路
有鉴于现有技术的上述缺陷,本专利技术所要解决的技术问题是现有区块链交易业务中,在交易过程中,数据冗余非常大、区块数据同步效率非常低以及对硬件设备要求较高等。为实现上述目的,本专利技术提供了一种基于区块链的数据扁平化方法,包括以下步骤:建立数据扁平化节点;数据扁平化节点通过分布式方式获取最新账户数据,得到账户数据快照,构建本地数据,参与共识;定期清理不参与共识的数据,清理账户数据历史快照,达到区块链节点本地数据库数据扁平化。进一步地,建立数据扁平化节点,具体包括:准备一个节点,以数据扁平化标志启动,作为数据扁平化节点;数据扁平化节点通过P2P连接多个区块链节点;数据扁平化节点收集所有与数据扁平化节点连接的区块链节点同一区块数据,对比区块数据中的RootHash,以备校验。进一步地,数据扁平化节点通过分布式方式获取账户数据,得到账户数据快照,具体包括:数据扁平化节点以分布式方式向多个区块链节点发送获取账户数据的命令,区块链节点群收到命令并行获取本地数据发送给数据扁平化节点,数据扁平化节点根据得到的本地数据构建本地账户数据,构建最新的账户数据快照对象。进一步地,区块链中参与共识的数据设置为最新的所有的账户数据快照,每次账户数据的改变都会生成新的一份账户数据快照。本专利技术另一较佳实施方式中提供了一种基于区块链的数据扁平化系统,包括:新建模块,用于建立数据扁平化节点;构建模块,用于数据扁平化节点通过分布式方式获取账户数据,得到账户数据快照,构建本地数据,参与共识;清理模块,用于定期清理不参与共识的数据,达到区块链节点本地数据库数据扁平化。进一步地,新建模块具体包括:准备单元,用于准备一个节点,以数据扁平化标志启动,作为数据扁平化节点;连接单元,用于数据扁平化节点通过P2P连接多个区块链节点;对比单元,用于数据扁平化节点收集所有与数据扁平化节点连接的区块链节点同一区块数据,对比区块数据中的RootHash,以备校验。进一步地,构建单元具体包括:数据扁平化节点以分布式方式向多个区块链节点发送获取账户数据的命令,区块链节点群收到命令并行获取本地数据发送给数据扁平化节点,数据扁平化节点根据得到的本地数据构建本地账户数据,构建最新的账户数据快照对象。进一步地,区块链中参与共识的数据设置为最新的所有的账户数据快照,每次账户数据的改变都会生成新的一份账户数据快照。本专利技术另一较佳实施方式中提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时,实现如上述中任一项的方法。本专利技术另一较佳实施方式中提供了一种存储有计算机程序的计算机可读存储介质,其特征在于,计算机程序使计算机执行时实现如上述中任一项的一种基于区块链的数据扁平化方法。技术效果本专利技术公开的一种基于区块链的数据扁平化方法针对现有技术中随着区块链的高度增加,本地沉淀数据日趋增加的问题,删除本地区块数据、交易数据、执行交易的结果数据、历史账户数据快照,最终节点本地数据最精简,去除冗余和繁杂,达到数据扁平化;如果区块链网络中没有新增账户,那么本方案数据扁平化启动的节点将不会有数据增加。本专利技术公开的一种基于区块链的数据扁平化方法针对现有方案中同步数据缓慢、高运算的问题,采用分布式同步账户数据的方式充分利用区块链节点资源,大幅提高构建本地数据的速度,数据扁平化节点可以以任意区块高度启动,无须像现有方案从区块高度0开始同步数据。现有方案同步数据是一种缓慢、高运算的任务,同步的过程就是计算的过程,完整地播放历史的过程;本方案完全丢弃此低效的同步过程,以给定区块数据的RootHash为依据,以分布式方式充分利用区块链节点资源,高效构建本地账户数据快照,以形成有效的区块链节点。本专利技术公开的一种基于区块链的数据扁平化方法去除了大量冗余的数据,大幅降低硬件资源要求、降低区块链应用落地门槛,如手机、平板等轻型移动设备均可成为区块链节点;采用分布式构建账户数据方式,在网络较好情况下,为轻型设备秒接入区块链成为区块链节点提供基础。以下将结合附图对本专利技术的构思、具体结构及产生的技术效果作进一步说明,以充分地了解本专利技术的目的、特征和效果。附图说明图1是本专利技术的一个较佳实施例的一种基于区块链的数据扁平化方法的数据扁平化启动流程示意图;图2是本专利技术的一个较佳实施例的一种基于区块链的数据扁平化方法的获取区块链账户列表流程示意图;图3是本专利技术的一个较佳实施例的一种基于区块链的数据扁平化方法的获取区块链账户数据流程示意图。具体实施方式为了使本专利技术所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。以下描述中,为了说明而不是为了限定,提出了诸如特定内部程序、技术之类的具体细节,以便透彻理解本专利技术实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本专利技术。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本专利技术的描述。实施例一在现有技术中,区块链交易业务中的数据处理方案具有以下几个缺陷:1)现有区块数据处理方案数据冗余非常大在现有区块链交易业务的数据处理方案中,节点在本地保存了大量数据,包括区块数据、交易数据、交易结果数据和账户数据等,造成数据冗余非常大,数据沉淀厚重且繁杂。2)现有区块链交易业务的数据处理方案区块数据同步效率非常低在现有区块链交易业务的数据处理本文档来自技高网...

【技术保护点】
1.一种基于区块链的数据扁平化方法,其特征在于,包括以下步骤:/n建立数据扁平化节点;/n所述数据扁平化节点通过分布式方式获取最新账户数据,得到账户数据快照,构建本地数据,参与共识;/n定期清理不参与共识的数据,清理账户数据历史快照,达到区块链节点本地数据库数据扁平化。/n

【技术特征摘要】
1.一种基于区块链的数据扁平化方法,其特征在于,包括以下步骤:
建立数据扁平化节点;
所述数据扁平化节点通过分布式方式获取最新账户数据,得到账户数据快照,构建本地数据,参与共识;
定期清理不参与共识的数据,清理账户数据历史快照,达到区块链节点本地数据库数据扁平化。


2.如权利要求1所述的一种基于区块链的数据扁平化方法,其特征在于,建立数据扁平化节点,具体包括:
准备一个节点,以数据扁平化标志启动,作为数据扁平化节点;
所述数据扁平化节点通过P2P连接多个区块链节点;
所述数据扁平化节点收集所有与所述数据扁平化节点连接的区块链节点同一区块数据,对比所述区块数据中的RootHash,以备校验。


3.如权利要求2所述的一种基于区块链的数据扁平化方法,其特征在于,所述数据扁平化节点通过分布式方式获取最新账户数据,得到账户数据快照,具体包括:
数据扁平化节点以分布式方式向多个区块链节点发送获取账户数据的命令,区块链节点群收到命令并行获取本地数据并发送给所述数据扁平化节点,所述数据扁平化节点根据得到的本地数据,构建本地账户数据,构建最新的账户数据快照对象。


4.如权利要求2所述的一种基于区块链的数据扁平化方法,其特征在于,区块链中参与共识的数据设置为最新的所有的账户数据快照,每次账户数据的改变都会生成新的一份账户数据快照。


5.一种基于区块链的数据扁平化系统,其特征在于,包括:
新建模块,用于建立数据扁平化节点;
构建模块,用于数据扁平化节点通过分布式方式获取最新账户数据,...

【专利技术属性】
技术研发人员:刘雄徐卿
申请(专利权)人:上海墨珩网络科技有限公司
类型:发明
国别省市:上海;31

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

1