CN111625196A - 区块链节点扩容方法、装置、计算机设备及存储介质 - Google Patents

区块链节点扩容方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN111625196A
CN111625196A CN202010455296.1A CN202010455296A CN111625196A CN 111625196 A CN111625196 A CN 111625196A CN 202010455296 A CN202010455296 A CN 202010455296A CN 111625196 A CN111625196 A CN 111625196A
Authority
CN
China
Prior art keywords
data
capacity
node
chain
data information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010455296.1A
Other languages
English (en)
Inventor
苟喜霞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
JD Digital Technology Holdings Co Ltd
Beijing Haiyi Tongzhan Information Technology Co Ltd
Original Assignee
JD Digital Technology Holdings Co Ltd
Beijing Haiyi Tongzhan Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by JD Digital Technology Holdings Co Ltd, Beijing Haiyi Tongzhan Information Technology Co Ltd filed Critical JD Digital Technology Holdings Co Ltd
Priority to CN202010455296.1A priority Critical patent/CN111625196A/zh
Publication of CN111625196A publication Critical patent/CN111625196A/zh
Priority to PCT/CN2021/088874 priority patent/WO2021238513A1/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0623Securing storage systems in relation to content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请提供一种区块链节点扩容方法、装置、计算机设备及存储介质,通过获取节点的当前链上数据信息,并通过数据预测得到预测链上数据信息,进而得到预测数据容量,从而可以在预测数据容量与节点的当前容量的差值小于预设阈值时,及时对节点进行扩容处理。本申请以节点的当前链上数据信息为基础,采用数据预测等手段进行节点扩容,可以实时、准确地对节点进行动态扩容,满足区块链节点上的数据存储需求。

Description

区块链节点扩容方法、装置、计算机设备及存储介质
技术领域
本申请涉及区块链技术领域,尤其涉及一种区块链节点扩容方法、装置、计算机设备及存储介质。
背景技术
随着科技水平的发展,区块链技术的应用越来越广泛。区块链是一个分布式的共享账本和数据库,具有去中心化、不可篡改、全程留痕、可以追溯、集体维护、公开透明等特点。这些特点保证了区块链的“诚实”与“透明”,为区块链创造信任奠定基础。
区块链由多个分布的节点组成,每个节点都设置有相应的存储容量,以保存区块链中的交易数据。
然而,随着区块链上节点的交易数据的增多,交易数据的数据容量可能超过节点设置的存储容量,即出现节点存储容量不足的情况。
发明内容
本申请提供一种区块链节点扩容方法、装置、计算机设备及存储介质,用以解决现有技术存在的节点存储容量不足的问题。
一方面,本申请提供一种区块链节点扩容方法,包括:
获取区块链中节点的当前链上数据信息;
基于所述节点的当前链上数据信息进行数据预测,得到所述节点对应的预测链上数据信息;
根据所述预测链上数据信息确定预测数据容量;
在所述预测数据容量与所述节点的当前容量的差值小于预设阈值时,对所述节点进行扩容。
在一些实施例中,所述基于所述节点的当前链上数据信息进行数据预测,得到所述节点对应的预测链上数据信息,包括:
获取所述节点对应的数据预测模型和/或数据预测算法;
基于所述节点的当前链上数据信息,通过所述数据预测模型和/或所述数据预测算法进行数据预测,得到所述节点对应的预测链上数据信息。
在一些实施例中,所述获取所述节点对应的数据预测模型之前,还包括:
获取所述节点对应的历史链上数据信息;
通过所述历史链上数据信息进行模型训练,得到所述节点对应的数据预测模型。
在一些实施例中,所述根据所述预测链上数据信息确定预测数据容量,包括:
获取链上数据信息与数据容量之间的对应关系;
根据所述预测链上数据信息,通过所述对应关系确定所述预测数据容量。
在一些实施例中,所述获取链上数据信息与数据容量之间的对应关系之前,还包括:
获取所述节点对应的历史链上数据信息,以及所述历史链上数据信息对应的历史数据容量;
基于所述历史链上数据信息以及所述历史数据容量,得到链上数据信息与数据容量之间的对应关系。
在一些实施例中,所述链上数据信息包括区块数、交易数、交易大小中的至少一项。
在一些实施例中,所述在所述预测数据容量与所述节点的当前容量的差值小于预设阈值时,对所述节点进行扩容,包括:
在所述预测数据容量与所述节点的当前容量的差值小于预设阈值时,基于所述预测数据容量确定扩容容量;
根据所述扩容容量对所述节点进行扩容。
另一方面,本申请提供一种区块链节点扩容装置,包括:
信息获取模块,用于获取区块链中节点的当前链上数据信息;
数据预测模块,用于基于所述节点的当前链上数据信息进行数据预测,得到所述节点对应的预测链上数据信息;
容量确定模块,用于根据所述预测链上数据信息确定预测数据容量;
节点扩容模块,用于在所述预测数据容量与所述节点的当前容量的差值小于预设阈值时,对所述节点进行扩容。
另一方面,本申请提供一种计算机设备,包括:存储器,处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现上述的区块链节点扩容方法。
另一方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现上述的区块链节点扩容方法。
本申请提供一种区块链节点扩容方法、装置、计算机设备及存储介质,通过获取节点的当前链上数据信息,并通过数据预测得到预测链上数据信息,进而得到预测数据容量,从而可以在预测数据容量与节点的当前容量的差值小于预设阈值时,及时对节点进行扩容处理。本申请以节点的当前链上数据信息为基础,采用数据预测等手段进行节点扩容,可以实时、准确地对节点进行动态扩容,满足区块链节点上的数据存储需求。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1为区块链网络的示意图;
图2为本申请实施例中区块链节点扩容方法的示意图;
图3为本申请实施例中基于节点的当前链上数据信息进行数据预测,得到节点对应的预测链上数据信息的示意图;
图4为本申请实施例中根据预测链上数据信息确定预测数据容量的示意图;
图5为本申请实施例中在预测数据容量与节点的当前容量的差值小于预设阈值时,对节点进行扩容的示意图;
图6为本申请实施例中区块链节点扩容装置的示意图;
图7为本申请实施例中计算机设备的示意图。
通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本申请实施例中所使用的单数形式的“一种”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的商品或者系统中还存在另外的相同要素。
首先对本申请所涉及的名词进行解释:
1、区块链(Blockchain):是比特币的一个重要概念,本质上是一个去中心化的数据库,同时作为比特币的底层技术,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次比特币网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。
2、节点:分轻节点和全节点。全节点是拥有全网所有的交易数据的节点,轻节点是只拥有和自身相关的交易数据的节点。节点分布越多、越广泛,区块链网络就更加的去中心化,网络运行也就越安全稳定。
图1为区块链网络的示意图,如图1所示,区块链网络10中包括:多个节点11。这些节点11可以各种形式来实施,例如,可以包括诸如手机、智能电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、服务器、矿机(即可执行PoW(Proof Of Work,工作证明)共识竞争机制的设备)等。
在区块链网络中,每个节点都设置有相应的存储容量,以保存各个节点对应的交易数据。然而,随着区块链上节点的交易数据的增多,交易数据的数据容量可能超过节点设置的存储容量,即出现节点存储容量不足的情况。
本申请提供的区块链节点扩容方法,旨在解决现有技术的如上技术问题。本申请以节点的当前链上数据信息为基础,采用数据预测等手段进行节点扩容,可以实时、准确地对节点进行动态扩容,以满足区块链节点上的数据存储需求。
本申请提供的区块链节点扩容方法,可以适用于图1所示的区块链网络10中的各个节点11。具体的,各个节点11至少包括用于执行本申请区块链节点扩容方法的处理器。
图2为本申请实施例中区块链节点扩容方法的示意图,如图2所示,以将区块链节点扩容方法应用于图1节点中的处理器为例进行解释说明,该方法包括以下步骤:
S100、获取区块链中节点的当前链上数据信息。
在区块链中,节点进行数据存取的操作称为交易。通过进行交易,可以对节点的链上数据进行存储、读取等处理。随着交易的进行,区块(Block)的数量也随之增加。区块可以理解为记录某一个时间段内的交易的数据结构,多个区块按照顺序链接形成区块链。除第一个区块以外的其他区块链除了包含自身对应的交易数据外,还包含有前序区块的ID、数据哈希值等信息。
本实施例中,节点的当前链上数据信息具体包括当前链上数据的区块数、交易数、交易大小中的至少一项。其中,区块数为保存交易数据的区块的数量,交易数为进行交易的数量,交易大小为交易的数据大小。具体地,当前链上数据信息可以是仅包括区块数,或者交易数,或者交易大小;也可以是包括区块数、交易数、交易大小中的任意两项;还可以是同时包括区块数、交易数以及交易大小。
为了便于理解,本申请各实施例以链上数据信息同时包括区块数、交易数以及交易大小为例,对本申请的技术方案进行解释说明。
可选的,可以使用SDK(Software Development Kit,软件开发工具包)查询获取节点的当前链上数据信息,也可以是基于Prometheus组件进行区块链监控从而得到节点的当前链上数据信息。另外,如果是fabric作为底层网络,可以直接在Peer节点上对fabric提供的指标进行收集,从而得到节点的当前链上数据信息。
S200、基于节点的当前链上数据信息进行数据预测,得到节点对应的预测链上数据信息。
在获取节点的当前链上数据信息后,处理器基于当前链上数据信息进行数据预测,得到节点在一段时间后的预测链上数据信息。其中,一段时间具体可以是一个小时、一天、一周等,可以根据实际情况确定。
例如,在节点的当前链上数据信息为当前链上数据的区块数、交易数以及交易大小时,处理器可以基于当前时刻的区块数、交易数以及交易大小进行数据预测,得到节点在一天后的预测区块数、预测交易数以及预测交易大小。
S300、根据预测链上数据信息确定预测数据容量。
其中,数据容量是指链上数据占据的容量,预测数据容量即预测链上数据信息对应的数据容量。处理器在通过数据预测得到预测链上数据信息后,进一步确定该预测链上数据信息对应的预测数据容量。
S400、在预测数据容量与节点的当前容量的差值小于预设阈值时,对节点进行扩容。
处理器在根据预测链上数据信息确定预测数据容量后,基于预测数据容量以及节点对应的当前容量进行对比,得到预测数据容量与节点对应的当前容量的差值,然后基于预测数据容量与当前容量的差值确定是否需要进行扩容。
若预测数据容量与节点的当前容量的差值大于或者等于预设阈值,表示在一段时间后节点的链上数据容量不会超过节点的当前容量,从而,无需对节点进行扩容处理。
若预测数据容量与节点的当前容量的差值小于预设阈值,表示在一段时间后节点的链上数据容量将接近、达到甚至超过节点的当前容量,该节点的当前容量无法满足链上数据的存储容量需求,从而,需要对节点进行扩容处理。
可选地,对节点进行扩容可以是通过热扩容技术直接对区块链节点运行中的容器进行扩展,从而可以在不影响节点的正常工作的同时进行节点扩容处理。
可选的,在预测数据容量与节点的当前容量的差值小于预设阈值时,还包括输出相应的预警信息,从而,使得相关人员可以知晓当前节点在一段时间后存在容量不足的情况。
本申请提供一种区块链节点扩容方法,通过获取节点的当前链上数据信息,并通过数据预测得到预测链上数据信息,进而得到预测数据容量,从而可以在预测数据容量与节点的当前容量的差值小于预设阈值时,及时对节点进行扩容处理。本申请以节点的当前链上数据信息为基础,采用数据预测等手段进行节点扩容,可以实时、准确地对节点进行动态扩容,满足区块链节点上的数据存储需求。
在一个实施例中,对处理器基于节点的当前链上数据信息进行数据预测,得到节点对应的预测链上数据信息的处理流程进行解释说明。本实施例中,处理器在得到节点的当前链上数据信息后,可以采用预先训练的数据预测模型和/或预先设定的数据预测算法进行数据预测。
图3为基于节点的当前链上数据信息进行数据预测,得到节点对应的预测链上数据信息的示意图,如图3所示,该处理流程包括以下步骤:
S220、获取节点对应的数据预测模型和/或数据预测算法;
S240、基于节点的当前链上数据信息,通过数据预测模型和/或数据预测算法进行数据预测,得到节点对应的预测链上数据信息。
其中,数据预测算法具体可以是例如趋势外推预测、回归预测、卡尔曼滤波预测等,数据预测模型具体可以是例如BP神经网络预测模型、深度学习预测模型等。可以理解,也可以是采用其他类型的数据预测模型和/或数据预测算法。
具体的,在采用趋势外推预测方法进行数据预测时,可以根据链上数据信息的历史数据和现实数据,分析得到链上数据信息随时间推移而变化的规律,从而推测得到预测链上数据信息。
在采用回归预测方法进行数据预测时,可以根据自变量(例如节点数量等)和因变量(链上数据信息,例如区块数、交易数、交易大小等)之间的相关关系进行预测。其中,自变量的个数可以一个或多个,根据自变量的个数可以采用一元回归预测或者多元回归预测。同时根据自变量和因变量的相关关系,可以采用线性回归预测或者非线性回归预测。
在采用卡尔曼滤波预测方法进行数据预测时,可以以最小均方误差为估计的最佳准则,寻求一套递推估计的模型,基本思想是采用信号与噪声的状态空间模型,利用链上数据信息的前一时刻预测值和当现时刻实际值来更新对状态变量的估计,从而在当前时刻实际值的基础上,得到未来一段时间后链上数据信息的预测值。
BP神经网络(Back Propagation Network)又称反向传播神经网络,由输入层、隐层和输出层组成,隐层可以有一层或多层。BP神经网络预测模型通过样本数据(例如链上数据信息的样本数据)的训练,不断修正网络权值和阈值使误差函数沿负梯度方向下降,逼近期望输出。
深度学习预测模型是将深度学习算法应用于深度拓扑结构的一类神经网络,具有从少数样本集中学习数据集本质特征的能力,对复杂隐含函数的逼近有很好的效果。
可选的,在基于节点的当前链上数据容量进行数据预测时,可以采用以上任一种数据预测模型或者数据预测算法得到对应的预测链上数据信息。
可选的,在基于节点的当前链上数据容量进行数据预测时,也可以使用多种数据预测模型/数据预测算法实现,即进行组合预测,从而,可以综合利用各种算法/模型所提供的信息,尽可能地提高预测精度。
具体的,在进行组合预测时,可以采用等权组合,即不同算法/模型的预测结果按照相同的权重组合得到最终的预测结果;也可以采用不等权组合,即不同算法/模型的预测结果按照不同的权重组合得到最终的预测结果。
本实施例通过数据预测模型和/或数据预测算法进行数据预测,可以保证预测结果的准确度。
在一个实施例中,在通过数据预测模型进行数据预测之前,还包括进行模型训练以得到数据预测模型的处理步骤。
参考图3,进行模型训练以得到数据预测模型的处理流程包括以下步骤:
S212、获取节点对应的历史链上数据信息;
S214、通过历史链上数据信息进行模型训练,得到节点对应的数据预测模型。
具体的,历史链上数据信息是指过去某一时间段的链上数据信息。在通过历史链上数据信息进行模型训练时,可以按照时间点对所有历史链上数据信息进行划分,得到训练数据和样本数据。
例如,可以从过去的某一时间段内挑选一时间节点T0,将该时间段中在时间节点T0之前的第一子时间段、以及该第一子时间段对应的历史链上数据信息作为训练数据,将该时间段中在时间节点T0之后的第二子时间段、以及该第二子时间段对应的历史链上数据信息作为样本数据,通过训练数据和样本数据对初始的网络模型进行模型训练,从而得到训练好的数据预测模型。具体的模型训练方法可以采用现有的模型训练方法实现,在此不做限定。
可选的,划分样本数据和训练数据的时间节点T0在时间点构成的时间轴中处于中间位置,或者,在时间轴上,时间节点T0与第一子时间段起始点的距离大于时间节点T0与第二子时间段结束点的距离,从而,使得训练数据的总容量大于或等于样本数据的总容量,以保证模型的训练效果。
在一个实施例中,对处理器根据预测链上数据信息确定预测数据容量的处理流程进行解释说明。本实施例中,处理器在得到预测链上数据信息后,可以根据链上数据信息与数据容量的关系函数确定预测链上数据信息对应的预测数据容量。
图4为根据预测链上数据信息确定预测数据容量的示意图,如图4所示,该处理流程包括以下步骤:
S320、获取链上数据信息与数据容量之间的对应关系;
S340、根据预测链上数据信息,通过对应关系确定预测数据容量。
链上数据信息包括区块数、交易数、交易大小等,通常来说,区块数和交易数越多,交易大小越大,对应的数据容量越多,因此,区块数、交易数、交易大小与数据容量的关系可以认为是线性增长关系。
对应的,本实施例中,链上数据信息与数据容量之间的对应关系可以是采用关系函数表达,具体可以采用线性回归函数,线性回归函数是通过自变量的线性组合进行预测的函数。回归算法用于连续型分布预测,针对的是数值型的样本。使用回归,可以在给定输入的时候预测出一个数值,这是对分类方法的提升,因为这样可以预测连续型数据而不仅仅是离散的类别标签。在回归分析中,若只包括一个自变量和一个因变量,且二者的关系可用一条直线近似表示,这种回归分析称为一元线性回归分析。如果回归分析中包括两个或两个以上的自变量,且因变量和自变量之间是线性关系,则称为多元线性回归分析。
本实施例中,线性回归函数具体为多元线性回归函数。
例如,定义Y表示数据容量,X1表示区块数,X2表示交易数,X3表示交易大小,则线性回归函数的计算公式可以为:Y=a*X1+b*X2+c*X3+e,其中,a、b、c分别为区块数X1、交易数X2和交易大小X3对应的直线斜率,e为误差项。
预测链上数据信息具体包括预测区块数、预测交易数以及预测交易大小,在得到预测链上数据信息后,将预测区块数、预测交易数以及预测交易大小代入上述公式,从而可以得到对应的预测数据容量。
本实施例通过线性回归函数确定预测链上数据信息对应的预测数据容量,可以准确得到预测数据容量,便于进行后续扩容管理。
在一个实施例中,根据预测链上数据信息确定预测数据容量之前,还包括确定链上数据信息与数据容量之间的对应关系的处理步骤。
参考图4,确定链上数据信息与数据容量之间的对应关系的处理流程包括以下步骤:
S312、获取节点对应的历史链上数据信息,以及对应的历史数据容量;
S314、基于历史链上数据信息以及历史数据容量,确定链上数据信息与数据容量之间的对应关系。
具体的,以链上数据信息与数据容量之间的对应关系为线性回归函数为例进行解释说明。
首先将数据容量作为因变量,将区块数、交易数、交易大小等作为自变量,建立因变量与多个自变量之间的关系。
例如,定义Y表示数据容量,X1表示区块数,X2表示交易数,X3表示交易大小,则线性回归函数的表达式可以为:Y=a*X1+b*X2+c*X3+e,其中,a、b、c分别为区块数X1、交易数X2和交易大小X3对应的直线斜率,e为误差项。
然后,基于获取的历史链上数据信息以及对应的历史数据容量,将多个区块数、交易数、交易大小以及对应的数据容量带入以上表达式,即可求得a、b、c、e,从而确定线性回归函数。
可选的,在通过过去一段时间的历史链上数据信息以及对应的历史数据容量确定链上数据信息与数据容量的关系函数后,可以采用另外一段时间的历史数据对已得到的关系函数进行迭代修正优化,从而使得进一步提高关系函数的准确性。
在一个实施例中,对进行节点扩容管理的处理流程进行解释说明。
图5为在预测数据容量与节点的当前容量的差值小于预设阈值时,对节点进行扩容的示意图,如图5所示,该处理流程具体包括以下步骤:
S410、在预测数据容量与节点的当前容量的差值小于预设阈值时,基于预测数据容量确定扩容容量;
S430、根据扩容容量对节点进行扩容。
其中,扩容容量是指在节点的当前容量的基础上,需要额外扩充的容量,即扩容后的容量为当前容量与扩容容量的总和。具体的,可以基于预测数据容量与节点当前容量的差值确定扩容容量。
例如,定义P0表示节点的当前容量,P1表示预测数据容量,Q为容量常数,△P表示扩容容量,则扩容容量的计算公式为:△P=P0-P1+Q。
从而,在确定扩容容量后,基于扩容容量对节点进行扩容,从而保证节点的扩容后容量满足未来一段时间的数据存储容量需求。
可选的,参考图5,在基于预测数据容量确定扩容容量之后,还包括:
S421、基于扩容容量以及当前容量确定扩容后容量;
S422、判断扩容后容量是否大于节点所在硬盘的总容量;
S423、若扩容后容量小于或者等于硬盘总容量,则执行步骤S430;
S424、若扩容后容量大于硬盘总容量,则输出硬盘容量不足的提示信息。
具体的,在本申请中,在进行节点扩容时,并不是一次性给该待扩容节点分配全部的存储空间,因此,在每次得到扩容容量后,进一步确定节点所在硬盘的总容量与待扩容节点对应的扩容后容量的关系,若扩容后容量大于硬盘总容量,表示节点对应磁盘的硬件存储空间不足,此时,通过软件层面为节点划拨容量进行扩容无法解决节点容量不足的问题,需要输出相应的提示消息以通知相关人员对磁盘进行硬件扩容。
因此,本方案通过扩容空间的比较,区分是否需要进行人工介入,使得节点扩容更加灵活方便。
应该理解的是,虽然上述实施例中的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,提供一种区块链节点扩容装置。
图6为本申请实施例中区块链节点扩容装置的示意图,如图6所示,该装置包括:
信息获取模块100,用于获取区块链中节点的当前链上数据信息;
数据预测模块200,用于基于所述节点的当前链上数据信息进行数据预测,得到所述节点对应的预测链上数据信息;
容量确定模块300,用于根据所述预测链上数据信息确定预测数据容量;
节点扩容模块400,用于在所述预测数据容量与所述节点的当前容量的差值小于预设阈值时,对所述节点进行扩容。
关于区块链节点扩容装置的具体限定可以参见上文中对于区块链节点扩容方法的限定,在此不再赘述。上述区块链节点扩容装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
本申请提供一种区块链节点扩容装置,通过获取节点的当前链上数据信息,并通过数据预测得到预测链上数据信息,进而得到预测数据容量,从而可以在预测数据容量与节点的当前容量的差值小于预设阈值时,及时对节点进行扩容处理。本申请以节点的当前链上数据信息为基础,采用数据预测等手段进行节点扩容,可以实时、准确地对节点进行动态扩容,满足区块链节点上的数据存储需求。
在一个实施例中,提供一种计算机设备,包括:存储器,处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现本申请各方法实施例的步骤。
图7为本申请实施例中计算机设备的示意图,如图7所示,计算机设备包括通信模块21、存储器22以及处理器23等部件。在计算机设备中,处理器23分别与存储器22以及通信模块21连接,存储器22上存储有计算机程序,计算机程序同时被处理器23执行,计算机程序执行时实现本申请各方法实施例的步骤。
其中,通信模块21,可通过网络与外部通讯设备连接。通信模块21可以接收外部通讯设备发出的请求,还可以发送请求、指令及信息至外部通讯设备。
存储器22,可用于存储软件程序以及各种数据。存储器22可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如获取区块链节点的磁盘容量变化数据)等;存储数据区可包括数据库,存储数据区可存储根据计算机设备的使用所创建的数据或信息等。此外,存储器22可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器23,是计算机设备的控制中心,利用各种接口和线路连接整个计算机设备的各个部分,通过运行或执行存储在存储器22内的软件程序和/或模块,以及调用存储在存储器22内的数据,执行计算机设备的各种功能和处理数据,从而对计算机设备进行整体监控。处理器23可包括一个或多个处理单元;可选地,处理器23可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器23中。
尽管图7未示出,但上述计算机设备还可以包括电路控制模块,用于与电源连接,保证其他部件的正常工作。上述计算机设备还可以包括显示模块,用于提取存储器22中的数据,并显示出计算机设备的系统界面、与用户的交互界面以及区块链的磁盘容量变化情况。本领域技术人员可以理解,图7中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
在一个实施例中,提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现本申请各方法实施例的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
本领域技术人员在考虑说明书及实践这里公开的申请后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求书指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求书来限制。

Claims (10)

1.一种区块链节点扩容方法,其特征在于,包括:
获取区块链中节点的当前链上数据信息;
基于所述节点的当前链上数据信息进行数据预测,得到所述节点对应的预测链上数据信息;
根据所述预测链上数据信息确定预测数据容量;
在所述预测数据容量与所述节点的当前容量的差值小于预设阈值时,对所述节点进行扩容。
2.根据权利要求1所述的方法,其特征在于,所述基于所述节点的当前链上数据信息进行数据预测,得到所述节点对应的预测链上数据信息,包括:
获取所述节点对应的数据预测模型和/或数据预测算法;
基于所述节点的当前链上数据信息,通过所述数据预测模型和/或所述数据预测算法进行数据预测,得到所述节点对应的预测链上数据信息。
3.根据权利要求2所述的方法,其特征在于,所述获取所述节点对应的数据预测模型之前,还包括:
获取所述节点对应的历史链上数据信息;
通过所述历史链上数据信息进行模型训练,得到所述节点对应的数据预测模型。
4.根据权利要求1所述的方法,其特征在于,所述根据所述预测链上数据信息确定预测数据容量,包括:
获取链上数据信息与数据容量之间的对应关系;
根据所述预测链上数据信息,通过所述对应关系确定所述预测数据容量。
5.根据权利要求4所述的方法,其特征在于,所述获取链上数据信息与数据容量之间的对应关系之前,还包括:
获取所述节点对应的历史链上数据信息,以及所述历史链上数据信息对应的历史数据容量;
基于所述历史链上数据信息以及所述历史数据容量,得到链上数据信息与数据容量之间的对应关系。
6.根据权利要求4或5所述的方法,其特征在于,所述链上数据信息包括区块数、交易数或交易大小中的至少一项。
7.根据权利要求1所述的方法,其特征在于,所述在所述预测数据容量与所述节点的当前容量的差值小于预设阈值时,对所述节点进行扩容,包括:
在所述预测数据容量与所述节点的当前容量的差值小于预设阈值时,基于所述预测数据容量确定扩容容量;
根据所述扩容容量对所述节点进行扩容。
8.一种区块链节点扩容装置,其特征在于,包括:
信息获取模块,用于获取区块链中节点的当前链上数据信息;
数据预测模块,用于基于所述节点的当前链上数据信息进行数据预测,得到所述节点对应的预测链上数据信息;
容量确定模块,用于根据所述预测链上数据信息确定预测数据容量;
节点扩容模块,用于在所述预测数据容量与所述节点的当前容量的差值小于预设阈值时,对所述节点进行扩容。
9.一种计算机设备,其特征在于,包括:存储器,处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如上述权利要求1-7任一项所述的区块链节点扩容方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至7任一项所述的区块链节点扩容方法。
CN202010455296.1A 2020-05-26 2020-05-26 区块链节点扩容方法、装置、计算机设备及存储介质 Pending CN111625196A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202010455296.1A CN111625196A (zh) 2020-05-26 2020-05-26 区块链节点扩容方法、装置、计算机设备及存储介质
PCT/CN2021/088874 WO2021238513A1 (zh) 2020-05-26 2021-04-22 区块链节点扩容方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010455296.1A CN111625196A (zh) 2020-05-26 2020-05-26 区块链节点扩容方法、装置、计算机设备及存储介质

Publications (1)

Publication Number Publication Date
CN111625196A true CN111625196A (zh) 2020-09-04

Family

ID=72259999

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010455296.1A Pending CN111625196A (zh) 2020-05-26 2020-05-26 区块链节点扩容方法、装置、计算机设备及存储介质

Country Status (2)

Country Link
CN (1) CN111625196A (zh)
WO (1) WO2021238513A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113364875A (zh) * 2021-06-10 2021-09-07 网易(杭州)网络有限公司 区块链节点存取数据的方法、设备和计算机可读存储介质
WO2021238513A1 (zh) * 2020-05-26 2021-12-02 京东数科海益信息科技有限公司 区块链节点扩容方法、装置、计算机设备及存储介质
CN117424813A (zh) * 2023-12-11 2024-01-19 北京云成金融信息服务有限公司 一种用于区块链的节点扩充方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103970641A (zh) * 2014-05-15 2014-08-06 浪潮电子信息产业股份有限公司 一种基于容量预测技术的设备扩容方法
CN104809333A (zh) * 2015-04-03 2015-07-29 百度在线网络技术(北京)有限公司 基于Kalman滤波器的容量预测方法和系统
CN108845881A (zh) * 2018-05-30 2018-11-20 有米科技股份有限公司 服务器容量动态调整的方法及装置
CN108920153A (zh) * 2018-05-29 2018-11-30 华南理工大学 一种基于负载预测的Docker容器动态调度方法
CN110321334A (zh) * 2019-05-24 2019-10-11 平安银行股份有限公司 数据库自动分区扩容的方法及装置
CN110377228A (zh) * 2019-06-19 2019-10-25 深圳壹账通智能科技有限公司 区块链节点的自动扩容方法、装置、运维终端及存储介质
CN110531924A (zh) * 2019-05-31 2019-12-03 杭州复杂美科技有限公司 用于扩展区块链存储容量的方法和设备、存储介质及系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8312194B2 (en) * 2005-09-30 2012-11-13 Hewlett-Packard Development Company, L.P. Method and apparatus for validation of continuous access to a data structure
CN111092925B (zh) * 2018-10-23 2022-08-05 中国移动通信有限公司研究院 一种区块链扩容处理方法、装置及设备
CN111625196A (zh) * 2020-05-26 2020-09-04 北京海益同展信息科技有限公司 区块链节点扩容方法、装置、计算机设备及存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103970641A (zh) * 2014-05-15 2014-08-06 浪潮电子信息产业股份有限公司 一种基于容量预测技术的设备扩容方法
CN104809333A (zh) * 2015-04-03 2015-07-29 百度在线网络技术(北京)有限公司 基于Kalman滤波器的容量预测方法和系统
CN108920153A (zh) * 2018-05-29 2018-11-30 华南理工大学 一种基于负载预测的Docker容器动态调度方法
CN108845881A (zh) * 2018-05-30 2018-11-20 有米科技股份有限公司 服务器容量动态调整的方法及装置
CN110321334A (zh) * 2019-05-24 2019-10-11 平安银行股份有限公司 数据库自动分区扩容的方法及装置
CN110531924A (zh) * 2019-05-31 2019-12-03 杭州复杂美科技有限公司 用于扩展区块链存储容量的方法和设备、存储介质及系统
CN110377228A (zh) * 2019-06-19 2019-10-25 深圳壹账通智能科技有限公司 区块链节点的自动扩容方法、装置、运维终端及存储介质

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021238513A1 (zh) * 2020-05-26 2021-12-02 京东数科海益信息科技有限公司 区块链节点扩容方法、装置、计算机设备及存储介质
CN113364875A (zh) * 2021-06-10 2021-09-07 网易(杭州)网络有限公司 区块链节点存取数据的方法、设备和计算机可读存储介质
CN113364875B (zh) * 2021-06-10 2022-07-22 网易(杭州)网络有限公司 区块链节点存取数据的方法、设备和计算机可读存储介质
CN117424813A (zh) * 2023-12-11 2024-01-19 北京云成金融信息服务有限公司 一种用于区块链的节点扩充方法
CN117424813B (zh) * 2023-12-11 2024-03-22 北京云成金融信息服务有限公司 一种用于区块链的节点扩充方法

Also Published As

Publication number Publication date
WO2021238513A1 (zh) 2021-12-02

Similar Documents

Publication Publication Date Title
CN111709533B (zh) 机器学习模型的分布式训练方法、装置以及计算机设备
CN111625196A (zh) 区块链节点扩容方法、装置、计算机设备及存储介质
EP3771179A1 (en) Graph data processing method, method and device for publishing graph data computational tasks, storage medium, and computer apparatus
CN111950738B (zh) 机器学习模型优化效果评估方法、装置、终端及存储介质
CN112000459A (zh) 一种用于服务的扩缩容的方法及相关设备
CN108959934A (zh) 安全风险评估方法、装置、计算机设备和存储介质
CN110824587B (zh) 图像预测方法、装置、计算机设备和存储介质
CN111258767A (zh) 复杂系统仿真应用的云计算资源智能分配方法与装置
CN113868010B (zh) 应用于业务系统的异常数据处理方法及系统
WO2019148715A1 (zh) 信息处理方法、装置、计算机设备和存储介质
CN111310784B (zh) 资源数据的处理方法及装置
EP3239905A1 (en) Methods and apparatus for use in predicting non-stationary time-series data
Pereira et al. A metamodel for estimating error bounds in real-time traffic prediction systems
CN110544130A (zh) 流量异动监测方法、装置、计算机设备和存储介质
CN112102011A (zh) 基于人工智能的用户等级预测方法、装置、终端及介质
CN111489196B (zh) 基于深度学习网络的预测方法、装置、电子设备及介质
CN113157757A (zh) 一种数据推荐方法、装置、电子设备及存储介质
CN113436006A (zh) 基于区块链的贷款风险预测方法及装置
CN115329871A (zh) 模型训练及模型测试方法、装置、设备及存储介质
CN114664458A (zh) 患者分类装置、计算机设备及存储介质
CN111354449B (zh) 长期护理策略分配方法、装置、计算机设备和存储介质
CN111783487A (zh) 一种读卡器设备的故障预警方法及装置
CN111783486A (zh) 一种读卡器设备的维护预警方法及装置
CN111125918A (zh) 基于相似寿命模型和相似寿命的复杂产品可靠性评定方法
JP7036271B1 (ja) モデル管理装置及びモデル管理方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 601, 6 / F, building 2, No. 18, Kechuang 11th Street, Daxing District, Beijing, 100176

Applicant after: Jingdong Technology Information Technology Co.,Ltd.

Applicant after: Jingdong Technology Holding Co.,Ltd.

Address before: 601, 6 / F, building 2, No. 18, Kechuang 11th Street, Daxing District, Beijing, 100176

Applicant before: Jingdong Shuke Haiyi Information Technology Co.,Ltd.

Applicant before: Jingdong Digital Technology Holding Co.,Ltd.

Address after: 601, 6 / F, building 2, No. 18, Kechuang 11th Street, Daxing District, Beijing, 100176

Applicant after: Jingdong Shuke Haiyi Information Technology Co.,Ltd.

Applicant after: Jingdong Digital Technology Holding Co.,Ltd.

Address before: 601, 6 / F, building 2, No. 18, Kechuang 11th Street, Beijing Economic and Technological Development Zone, Beijing 100176

Applicant before: BEIJING HAIYI TONGZHAN INFORMATION TECHNOLOGY Co.,Ltd.

Applicant before: JINGDONG DIGITAL TECHNOLOGY HOLDINGS Co.,Ltd.

CB02 Change of applicant information