区块数据的处理方法、装置、计算机可读介质及电子设备制造方法及图纸

技术编号:36152776 阅读:20 留言:0更新日期:2022-12-31 19:57
本申请的实施例提供了一种区块数据的处理方法、装置、计算机可读介质及电子设备。该区块数据的处理方法包括:对区块数据进行共识处理,所述区块数据中包含有多个交易信息;获取对所述区块数据进行共识处理所产生的交易执行结果数据;将所述区块数据和所述交易执行结果数据写入指定缓存中;若写入所述指定缓存中的数据所对应的区块数量达到设定阈值,则对所述指定缓存中的数据进行持久化处理。本申请实施例的技术方案可以通过批量持久化处理的方式来提高磁盘的写入性能,有利于提高区块链的交易吞吐量。交易吞吐量。交易吞吐量。

【技术实现步骤摘要】
区块数据的处理方法、装置、计算机可读介质及电子设备


[0001]本申请涉及计算机及通信
,具体而言,涉及一种区块数据的处理方法、装置、计算机可读介质及电子设备。

技术介绍

[0002]在区块链的相关技术中,当共识节点对区块达成共识之后,区块链账本通常采用同步写入持久化存储的方式,这种方式受到磁盘性能的影响,会降低持久化处理的效率,进而降低了区块链的交易吞吐量。

技术实现思路

[0003]本申请的实施例提供了一种区块数据的处理方法、装置、计算机可读介质及电子设备,进而至少在一定程度上可以通过批量持久化处理的方式来提高磁盘的写入性能,有利于提高区块链的交易吞吐量。
[0004]根据本申请实施例的一个方面,提供了一种区块数据的处理方法,包括:对区块数据进行共识处理,所述区块数据中包含有多个交易信息;获取对所述区块数据进行共识处理所产生的交易执行结果数据;将所述区块数据和所述交易执行结果数据写入指定缓存中;若写入所述指定缓存中的数据所对应的区块数量达到设定阈值,则对所述指定缓存中的数据进行持久化处理。
[0005]根据本申请实施例的一个方面,提供了一种区块数据的处理装置,包括:共识单元,配置为对区块数据进行共识处理,所述区块数据中包含有多个交易信息;获取单元,配置为获取对所述区块数据进行共识处理所产生的交易执行结果数据;写入单元,配置为将所述区块数据和所述交易执行结果数据写入指定缓存中;持久化单元,配置为若写入所述指定缓存中的数据所对应的区块数量达到设定阈值,则对所述指定缓存中的数据进行持久化处理。
[0006]在本申请的一些实施例中,基于前述方案,所述写入单元配置为:将所述区块数据写入日志缓存中;将所述区块数据在日志中的索引数据,以及所述交易执行结果数据写入区块链账本缓存中。
[0007]在本申请的一些实施例中,基于前述方案,所述持久化单元配置为:若写入所述日志缓存中的区块数据所对应的区块数量达到第一阈值,则对所述日志缓存中的区块数据进行持久化处理。
[0008]在本申请的一些实施例中,基于前述方案,所述持久化单元配置为:若写入所述区块链账本缓存中的索引数据和交易执行结果数据所对应的区块数量达到第二阈值,则对所述区块链账本缓存中的索引数据和交易执行结果数据进行持久化处理。
[0009]在本申请的一些实施例中,基于前述方案,所述区块数据的处理装置还包括:第一读取单元,配置为在对所述指定缓存中的数据进行持久化处理之后,若需要获取指定区块数据,则从区块链账本中读取所述指定区块数据在日志中的索引数据;根据所述指定区块
数据在日志中的索引数据,从所述日志中读取所述指定区块数据。
[0010]在本申请的一些实施例中,基于前述方案,所述区块数据的处理装置还包括:第二读取单元,配置为在对所述指定缓存中的数据进行持久化处理之后,通过交易哈希从区块链账本中获取指定交易信息的交易执行结果。
[0011]在本申请的一些实施例中,基于前述方案,所述写入单元配置为:调用日志提交接口将所述区块数据写入所述日志缓存中;调用区块链账本层提交接口将所述区块数据在日志中的索引数据,以及所述交易执行结果数据写入区块链账本缓存。
[0012]在本申请的一些实施例中,基于前述方案,所述区块数据的处理装置还包括:生成单元,配置为收集交易信息;若收集到的交易信息的数量达到设定数量,或者收集交易信息的时长达到设定时长,则根据收集到的交易信息生成所述区块数据。
[0013]在本申请的一些实施例中,基于前述方案,所述区块数据的处理装置还包括:广播单元,配置为在根据收集到的交易信息生成所述区块数据之后,将所述区块数据广播给其它节点,以启动对所述区块数据的共识处理过程。
[0014]在本申请的一些实施例中,基于前述方案,所述持久化单元还配置为:在对所述指定缓存中的数据进行持久化处理之后,从所述指定缓存中删除所缓存的数据。
[0015]在本申请的一些实施例中,基于前述方案,所述共识单元配置为:通过Raft共识算法对所述区块数据进行共识处理;所述写入单元配置为:将所述区块数据写入Raft日志中。
[0016]在本申请的一些实施例中,基于前述方案,所述交易执行结果数据包括所述区块数据对应的写集合和交易执行结果集。
[0017]根据本申请实施例的一个方面,提供了一种计算机可读介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述实施例中所述的区块数据的处理方法。
[0018]根据本申请实施例的一个方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述实施例中所述的区块数据的处理方法。
[0019]根据本申请实施例的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实施例中提供的区块数据的处理方法。
[0020]在本申请的一些实施例所提供的技术方案中,通过将区块数据和交易执行结果数据写入指定缓存中,并在写入该指定缓存中的数据所对应的区块数量达到设定阈值时,对该指定缓存中的数据进行持久化处理,使得可以通过批量持久化处理的方式来提高磁盘的写入性能,避免了采用同步持久化的方式导致磁盘性能较低的问题,有利于提高区块链的交易吞吐量,进而有效提升了区块链网络的处理性能。
[0021]应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
[0022]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请
的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
[0023]图1示出了区块链网络的结构示意图;
[0024]图2示出了区块链中各区块的连接关系示意图;
[0025]图3示出了可以应用本申请实施例的技术方案的示例性系统架构的示意图;
[0026]图4至图6示出了Raft系统中的选举过程示意图;
[0027]图7示出了根据本申请的一个实施例的区块数据的处理方法的流程图;
[0028]图8示出了根据本申请的一个实施例的区块数据的处理装置的框图;
[0029]图9示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
[0030]现在参考附图以更全面的方式描述示例实施方式。然而,示例的实施方式能够以各种形式实施,且不应被理解为仅限于这些范例;相反,提供这些实施方式的目的是使得本申请更加全面和完整,并将示例实施方式的构思全面地传达给本领域本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种区块数据的处理方法,其特征在于,所述区块数据中包含有多个交易信息,所述区块数据的处理方法包括:对所述区块数据进行共识处理,获取对所述区块数据进行共识处理所产生的交易执行结果数据;将所述区块数据和所述交易执行结果数据写入指定缓存中;若写入所述指定缓存中的数据所对应的区块数量达到设定阈值,则对所述指定缓存中的数据进行持久化处理。2.根据权利要求1所述的区块数据的处理方法,其特征在于,将所述区块数据和所述交易执行结果数据写入指定缓存中,包括:将所述区块数据写入日志缓存中;将所述区块数据在日志中的索引数据,以及所述交易执行结果数据写入区块链账本缓存中。3.根据权利要求2所述的区块数据的处理方法,其特征在于,若写入所述指定缓存中的数据所对应的区块数量达到设定阈值,则对所述指定缓存中的数据进行持久化处理,包括:若写入所述日志缓存中的区块数据所对应的区块数量达到第一阈值,则对所述日志缓存中的区块数据进行持久化处理。4.根据权利要求2所述的区块数据的处理方法,其特征在于,若写入所述指定缓存中的数据所对应的区块数量达到设定阈值,则对所述指定缓存中的数据进行持久化处理,包括:若写入所述区块链账本缓存中的索引数据和交易执行结果数据所对应的区块数量达到第二阈值,则对所述区块链账本缓存中的索引数据和交易执行结果数据进行持久化处理。5.根据权利要求2所述的区块数据的处理方法,其特征在于,所述区块数据的处理方法还包括:在对所述指定缓存中的数据进行持久化处理之后,若需要获取指定区块数据,则从区块链账本中读取所述指定区块数据在日志中的索引数据;根据所述指定区块数据在日志中的索引数据,从所述日志中读取所述指定区块数据。6.根据权利要求2所述的区块数据的处理方法,其特征在于,所述区块数据的处理方法还包括:在对所述指定缓存中的数据进行持久化处理之后,通过交易哈希从区块链账本中获取指定交易信息的交易执行结果。7.根据权利要求2所述的区块数据的处理方法,其特征在于,将所述区块数据写入日志缓存中,包括:调用日志提交接口将所述区块数据写入所述日志缓存中;将所述区块数据在日志中的索引数据,以及所述交易执行结果数据写入区块链账本缓存中,包括:调...

【专利技术属性】
技术研发人员:刘攀
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

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

1