一种基于区块链的数据处理方法及设备技术

技术编号:17007490 阅读:18 留言:0更新日期:2018-01-11 03:51
本申请公开了一种基于区块链的数据处理方法及设备,包括:基于区块链网络中各区块的区块标识和各所述区块中存储的各业务数据的数据标识;并针对各所述区块,分别建立该区块的区块标识与该区块中存储的各所述业务数据的数据标识之间的映射关系,并将所述映射关系存储至关系数据库中。

【技术实现步骤摘要】
一种基于区块链的数据处理方法及设备
本申请涉及互联网信息处理技术以及计算机
,尤其涉及一种基于区块链的数据处理方法及设备。
技术介绍
区块链技术也称为分布式账本技术,是一种分布式互联网数据库技术,其特点是去中心化、公开透明、不可篡改、可信任。数据存储作为区块链技术的一个重要功能。每一个区块的数据存储结构为:数据头和数据体。其中,数据头用于与其他区块之间建立链式关系,即实现不同区块之间的链式连接;而数据体用于存储业务数据。例如:在第n个区块的数据头中包含第n个区块的摘要信息、第n-1个区块的摘要信息,这样,通过第n-1个区块的摘要信息建立第n个区块与第n-1个区块之间的链式关系。而在每个区块的数据体中存储的业务数据,通常采用key-value的方式进行存储。例如:假设业务数据为“T时刻用户a向用户b转账100元”,那么若该业务数据被存储在区块上,那么在区块中存储的内容可以为:交易时间(T时刻)、交易源地址(用户a对应的地址)、交易目的地址(用户b对应的地址)和交易标的(100元)。这里的交易时间、交易源地址、交易目的地址和交易标的可以称之为key,而T时刻、用户a对应的地址、用户b对应的地址和100元可以称之为不同key对应的value(即属性值)。
技术实现思路
有鉴于此,本申请实施例提供了一种基于区块链的数据处理方法及设备,用于提高区块链网络的数据分析、数据计算等事务处理能力。本申请实施例采用下述技术方案:本申请实施例提供一种基于区块链的数据处理方法,包括:确定区块链网络中各区块的区块标识;确定各所述区块中存储的各业务数据的数据标识;针对各所述区块,分别建立该区块的区块标识与该区块中存储的各所述业务数据的数据标识之间的映射关系,并将所述映射关系存储至关系数据库中。本申请实施例还提供一种基于区块链的数据处理设备,包括:确定单元,确定区块链网络中各区块的区块标识;以及确定各所述区块中存储的各业务数据的数据标识;处理单元,针对各所述区块,分别建立该区块的区块标识与该区块中存储的各所述业务数据的数据标识之间的映射关系,并将所述映射关系存储至关系数据库中。本申请实施例还提供一种基于区块链的数据处理设备,包括:至少一个存储器和至少一个处理器,其中,所述存储器中存储有程序,并被配置成由所述至少一个处理器执行以下步骤:确定区块链网络中各区块的区块标识;确定各所述区块中存储的各业务数据的数据标识;针对各所述区块,分别建立该区块的区块标识与该区块中存储的各所述业务数据的数据标识之间的映射关系,并将所述映射关系存储至关系数据库中。本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:通过本申请实施例提供的方案,基于区块链网络中各区块的区块标识和各所述区块中存储的各业务数据的数据标识;并针对各所述区块,分别建立该区块的区块标识与该区块中存储的各所述业务数据的数据标识之间的映射关系,并将所述映射关系存储至关系数据库中。这样,通过将区块链网络中存储的业务数据由非关系性数据转换成为关系型数据,并存储至关系型数据库中,提升了区块链网络中数据存储的可靠性,借助关系型数据库,有助于提高区块链网络的数据分析、数据计算等事务处理能力,改善区块链网络的系统能力。附图说明此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:图1为本申请实施例提供的一种区块链的数据处理方法的流程示意图;图2为本申请实施例提供的区块数据表对应的表结构示意图;图3为本申请实施例提供的业务数据表对应的表结构示意图;图4为本申请实施例提供的关系数据库对应的表结构示意图;图5为本申请实施例提供的一种基于区块链的数据处理方法的场景示意图;图6为本申请实施例提供的一种基于区块链的数据处理设备的结构示意图。具体实施方式然而,在区块链网络中采用key-value的方式进行数据存储,虽然能够保证业务数据不被篡改,但是数据存储的可靠性比较低,也不利于后续对其存储的业务数据进行分析、计算等事务性处理。所谓数据库中的事务是指数据库运行中的逻辑单元,具有原子性、一致性、隔离性和持久性等特点。它能够有效保证对数据库中数据的处理能力,这里的处理能力包含分析能力、计算能力、查询能力等等。基于此,本申请实施例提供了一种基于区块链的数据处理方法及设备,用于提高区块链网络的数据分析、数据计算等事务处理能力。为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。以下结合附图,详细说明本申请各实施例提供的技术方案。图1为本申请实施例提供的一种区块链的数据处理方法的流程示意图。所述方法可以如下所示。本申请实施例的执行主体可以是区块链节点,也可以是关系数据库对应的服务器,这里不做具体限定。步骤101:确定区块链网络中各区块的区块标识。在本申请实施例中,区块链网络中的各区块可以是指新产生的区块,在确定这种区块的区块标识时,该种区块中可能还尚未存储业务数据,也可能已存储业务数据;也可以是指已产生的区块,这种区块中已存储业务数据,这里不做具体限定。具体地,针对区块链网络中各所述区块,分别执行:根据该区块的摘要信息,得到该区块的区块标识。需要说明的是,这里的该区块的摘要信息可以包含但不限于:难度值(与该区块相关数学题的难度目标)、随机数(Nonce,记录解密该区块相关数学题的答案的值)等等。在得到该区块的摘要信息后,可以利用设定算法,对该摘要信息进行计算,并将计算得到的结果确定为该区块链的区块标识。这里的设定算法可以是哈希算法,还可以是SHA256算法,这里不做具体限定。需要说明的是,本申请实施例中所记载的区块标识能够唯一标识该区块,即不同区块对应的区块标识不同。在本申请实施例中,除了确定各区块的区块标识之外,所述方法还包括:根据该区块中存储的各所述业务数据,得到该区块的状态state值。这里可以基于bucket-tree得到该区块的state值。具体地,首先,构建merkle树,该区块中存储的各业务数据作为该merkle树的叶子节点;其次,确定各叶子节点(即各业务数据)的哈希值;最后,由叶子节点向上计算得到merkle树的根节点的哈希值。将得到的merkle树的根节点的哈希值确定为该区块的state值。在本申请实施例中,所述方法还包括:在得到该区块的state值后,建立该区块的区块标识、所述之间的第一对应关系;将所述第一对应关系存储至区块数据表中。图2为本申请实施例提供的区块数据表对应的表结构示意图。从图2中可以看出,区块数据表中除了存储区块的区块标识、state值以及与该区块相邻的前一个区块的区块标识之外,还可以存储区块的版本号、区块的生成时间、区块的高度值(这里的高度值可以理解为该区块在整个区块链所处的高度,也就是说可以根据该高度值确定出该区块在整个区块链中的位置)等。这样,通过区块数据表可以快速获取区块链网络中各区块的属性信息。步骤103:确定各所述区块中本文档来自技高网...
一种基于区块链的数据处理方法及设备

【技术保护点】
一种基于区块链的数据处理方法,包括:确定区块链网络中各区块的区块标识;确定各所述区块中存储的各业务数据的数据标识;针对各所述区块,分别建立该区块的区块标识与该区块中存储的各所述业务数据的数据标识之间的映射关系,并将所述映射关系存储至关系数据库中。

【技术特征摘要】
1.一种基于区块链的数据处理方法,包括:确定区块链网络中各区块的区块标识;确定各所述区块中存储的各业务数据的数据标识;针对各所述区块,分别建立该区块的区块标识与该区块中存储的各所述业务数据的数据标识之间的映射关系,并将所述映射关系存储至关系数据库中。2.根据权利要求1所述的数据处理方法,确定区块链网络中各区块的区块标识,包括;针对区块链网络中各所述区块,分别执行:根据该区块的摘要信息,得到该区块的区块标识。3.根据权利要求2所述的数据处理方法,所述方法还包括:根据该区块中存储的各所述业务数据,得到该区块的状态state值;建立该区块的区块标识与该区块中存储的各所述业务数据的数据标识之间的映射关系,包括:建立该区块的区块标识、所述state值与该区块中存储的各所述业务数据的数据标识之间的映射关系。4.根据权利要求3所述的数据处理方法,所述方法还包括:在得到该区块的state值后,建立该区块的区块标识、所述state值以及与该区块相邻的前一个区块的区块标识之间的第一对应关系;将所述第一对应关系存储至区块数据表中。5.根据权利要求2所述的数据处理方法,确定各所述区块中存储的各业务数据的数据标识,包括:针对各所述区块中存储的各业务数据,分别执行:根据该业务数据的哈希值,确定该业务数据的数据标识。6.根据权利要求5所述的数据处理方法,所述方法还包括:在得到该业务数据的数据标识后,建立该业务数据的数据标识与该业务数据所存储在的区块的区块标识之间的第二对应关系;将所述第二对应关系存储至业务数据表中。7.根据权利要求4和6所述的数据处理方法,建立该区块的区块标识与该区块中存储的各所述业务数据的数据标识之间的映射关系,包括:根据所述区块数据表中包含的所述第一对应关系和所述业务数据表中包含的所述第二对应关系,基于区块标识,建立该区块的区块标识与该区块中存储的各所述业务数据的数据标识之间的映射关系。8.根据权利要求1或4所述的数据处理方法,所述方法还包括:在新的区块产生时,确定新产生的区块的区块标识;根据新产生的所述区块的区块标识,同步更新所述区块数据表和/或所述关系数据库。9.根据权利要求1或4或6所述的数据处理方法,所述方法还包括:在新的业务数据产生时,确定新产生的业务数据的数据标识;在将新的业务数据存储至区块时或后,建立新产生的业务数据的数据标识与所存储区块的区块标识之间的映射关系;根据所述映射关系,同步更新所述业务数据表和/或所述关系数据库。10.一种基于区块链的数据处理设备,包括:确定单元,确定区块链网络中各区块的区块标识;以及确定各所述区块中存储的各业务数据的数据标识;处理单元,针对各所述区块,分别建立该区块的区块标识与该区块中存储的各所述业务数据的数据标识之间的映射关系,并将所述映射关系存储至关系数据库中。11.根据权利要求10所述的数据处理设备,所述确定单元确定区...

【专利技术属性】
技术研发人员:吴昊
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

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

1