区块处理方法、装置、区块链节点和计算机可读存储介质制造方法及图纸

技术编号:38717903 阅读:9 留言:0更新日期:2023-09-08 15:00
本申请实施例公开了一种区块处理方法、装置、区块链节点和计算机可读存储介质;在本申请实施例中,获取目标区块,所述目标区块为根据待打包交易数据生成的区块,所述待打包交易数据存储于对象存储的目标存储桶中;从所述目标存储桶中获取所述目标区块中目标账户的目标未花费输出数据;根据所述目标未花费输出数据对所述目标区块进行校验;若校验通过,则将所述目标区块存储至所述目标存储桶中。本申请实施例可以降低成本。实施例可以降低成本。实施例可以降低成本。

【技术实现步骤摘要】
区块处理方法、装置、区块链节点和计算机可读存储介质


[0001]本申请涉及区块链
,具体涉及一种区块处理方法、装置、区块链节点和计算机可读存储介质。

技术介绍

[0002]区块链是一个分布式的共享账本和数据库,具有去中心化、不可篡改、全程留痕、可以追溯、集体维护、公开透明等特点,所以越来越多的人喜欢通过区块链实现交易。
[0003]目前,将区块链中交易数据、区块和未花费输出(Unspent Transaction Output,UTXO)数据存储在内存池中。但内存池的大小是固定的,灵活性较低,成本较高。

技术实现思路

[0004]本申请实施例提供一种区块处理方法、装置、区块链节点和计算机可读存储介质,可以解决交易数据、区块和未花费输出存储在内存池,成本较高的技术问题。
[0005]一种区块处理方法,包括:
[0006]获取目标区块,上述目标区块为根据待打包交易数据生成的区块,上述待打包交易数据存储于对象存储的目标存储桶中;
[0007]从上述目标存储桶中获取上述目标区块中目标账户的目标未花费输出数据;
[0008]根据上述目标未花费输出数据对上述目标区块进行校验;
[0009]若校验通过,则将上述目标区块存储至上述目标存储桶中。
[0010]相应地,本申请实施例提供另一种区块处理方法,包括:
[0011]向对象存储的目标存储桶发送获取请求,上述获取请求包括待打包交易数据的起始量;
[0012]接收上述目标存储桶基于上述获取请求返回的上述待打包交易数据;
[0013]若上述待打包交易数据不满足预设条件,则更新上述获取请求中的起始量,并返回执行向对象存储的目标存储桶发送获取请求;
[0014]若上述待打包交易数据满足预设条件,则根据上述待打包交易数据生成目标区块,并将上述目标区块进行广播,以使第一区块链节点从上述目标存储桶中获取上述目标区块中目标账户的目标未花费输出数据,并根据上述目标未花费输出数据对上述目标区块进行校验,若校验通过,则将上述目标区块存储至上述目标存储桶中。
[0015]相应地,本申请实施例提供一种区块处理装置,包括:
[0016]第一获取模块,用于获取目标区块,上述目标区块为根据待打包交易数据生成的区块,上述待打包交易数据存储于对象存储的目标存储桶中;
[0017]第二获取模块,用于从上述目标存储桶中获取上述目标区块中目标账户的目标未花费输出数据;
[0018]区块交易模块,用于根据上述目标未花费输出数据对上述目标区块进行校验;
[0019]区块存储模块,用于若校验通过,则将上述目标区块存储至上述目标存储桶中。
[0020]可选地,第二获取模块具体用于执行:
[0021]从上述目标存储桶中获取上述目标区块中目标账户的初始未花费输出数据的初始标识;
[0022]根据上述初始标识和本地缓存标识,确定本地缓存的未有标识;
[0023]从上述目标存储桶中获取上述未有标识对应的存储未花费输出数据;
[0024]根据上述存储未花费输出数据和上述本地缓存标识对应的缓存未花费输出数据确定目标未花费输出数据。
[0025]可选地,区块处理装置还包括:
[0026]存储删除模块,用于:
[0027]若校验通过,则基于上述目标区块确定上述目标账户的新未花费输出数据和被消耗的目标未花费输出数据;
[0028]在上述目标存储桶中删除上述被消耗的目标未花费输出数据和存储上述新未花费输出数据。
[0029]可选地,上述目标存储桶包括标准存储桶和低频存储桶,上述待打包交易数据存储于上述标准存储桶中。
[0030]相应地,第二获取模块具体用于执行:
[0031]从上述标准存储桶中获取上述目标账户的目标未花费输出数据;
[0032]存储删除模块具体用于执行:
[0033]在上述标准存储桶中删除上述被消耗的目标未花费输出数据和存储上述新未花费输出数据。
[0034]可选地,区块处理装置还包括:
[0035]区块调度模块,用于:
[0036]获取预设边界值;
[0037]根据上述预设边界值和上述目标区块的标识确定先前区块,上述先前区块存储于上述标准存储桶;
[0038]从先前区块中获取至少一种初始属性信息;
[0039]根据初始属性信息,确定先前区块的冷热状态;
[0040]若上述先前区块的冷热状态为冷状态,则将上述先前区块存储至上述低频存储桶中,并在上述标准存储桶中删除上述先前区块。
[0041]可选地,上述初始属性信息为上述先前区块中初始账户。
[0042]相应地,区块调度模块具体用于执行:
[0043]若上述初始账户位于预设账户集合中,则将上述先前区块的冷热状态确定为热状态;
[0044]若上述初始账户不位于预设账户集合中,则将上述先前区块的冷热状态确定为冷状态。
[0045]可选地,上述初始属性信息为上述先前区块中初始交易的数量。
[0046]相应地,区块调度模块具体用于执行:
[0047]若上述初始交易的数量大于预设交易数量,则将上述先前区块的冷热状态确定为热状态;
[0048]若上述初始交易的数量小于或等于上述预设交易数量,则将上述先前区块的冷热状态确定为冷状态。
[0049]可选地,区块存储模块具体用于执行:
[0050]从上述目标区块中获取至少一种目标属性信息;
[0051]根据上述目标属性信息,确定上述目标区块的冷热状态;
[0052]若校验通过且上述目标区块的冷热状态为热状态,则将上述目标区块存储至上述标准存储桶中;
[0053]若校验通过且上述目标区块的冷热状态为冷状态,则将上述目标区块存储至上述低频存储桶中。
[0054]相应地,本申请实施例提供另一种区块处理装置,包括:
[0055]获取模块,用于向对象存储的目标存储桶发送获取请求,上述获取请求包括待打包交易数据的起始量;
[0056]接收模块,用于接收上述目标存储桶基于上述获取请求返回的上述待打包交易数据;
[0057]更新模块,用于若上述待打包交易数据不满足预设条件,则更新上述获取请求中的起始量,并返回执行向对象存储的目标存储桶发送获取请求;
[0058]生成模块,用于若上述待打包交易数据满足预设条件,则根据上述待打包交易数据生成目标区块,并将上述目标区块进行广播,以使第一区块链节点从上述目标存储桶中获取上述目标区块中目标账户的目标未花费输出数据,并根据上述目标未花费输出数据对上述目标区块进行校验,若校验通过,则将上述目标区块存储至上述目标存储桶中。
[0059]此外,本申请实施例还提供一种区块链节点,包括处理器和存储器,上述存储器存储有计算机程序,上述处理器用于运行上述存储器内的计算机程序实现本申请实施例提供的区块处理方法。
...

【技术保护点】

【技术特征摘要】
1.一种区块处理方法,其特征在于,应用于第一区块链节点,包括:获取目标区块,所述目标区块为根据待打包交易数据生成的区块,所述待打包交易数据存储于对象存储的目标存储桶中;从所述目标存储桶中获取所述目标区块中目标账户的目标未花费输出数据;根据所述目标未花费输出数据对所述目标区块进行校验;若校验通过,则将所述目标区块存储至所述目标存储桶中。2.根据权利要求1所述的区块处理方法,其特征在于,在所述根据所述目标未花费输出数据对所述目标区块进行校验之后,还包括:若校验通过,则基于所述目标区块确定所述目标账户的新未花费输出数据和被消耗的目标未花费输出数据;在所述目标存储桶中删除所述被消耗的目标未花费输出数据和存储所述新未花费输出数据。3.根据权利要求1所述的区块处理方法,其特征在于,所述目标存储桶包括标准存储桶和低频存储桶,在所述获取目标区块之后,还包括:获取预设边界值;根据所述预设边界值和所述目标区块的标识确定先前区块,所述先前区块存储于所述标准存储桶;从所述先前区块中获取至少一种初始属性信息;根据所述初始属性信息,确定所述先前区块的冷热状态;若所述先前区块的冷热状态为冷状态,则将所述先前区块存储至所述低频存储桶中,并在所述标准存储桶中删除所述先前区块。4.根据权利要求3所述的区块处理方法,其特征在于,所述初始属性信息为所述先前区块中初始账户;所述根据所述初始属性信息,确定所述先前区块的冷热状态,包括:若所述初始账户位于预设账户集合中,则将所述先前区块的冷热状态确定为热状态;若所述初始账户不位于预设账户集合中,则将所述先前区块的冷热状态确定为冷状态。5.根据权利要求3所述的区块处理方法,其特征在于,所述初始属性信息为所述先前区块中初始交易的数量;所述根据所述初始属性信息,确定所述先前区块的冷热状态,包括:若所述初始交易的数量大于预设交易数量,则将所述先前区块的冷热状态确定为热状态;若所述初始交易的数量小于或等于所述预设...

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

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

1