CN114443640A - 数据出块方法、装置、电子设备及计算机可读存储介质 - Google Patents
数据出块方法、装置、电子设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN114443640A CN114443640A CN202011205942.5A CN202011205942A CN114443640A CN 114443640 A CN114443640 A CN 114443640A CN 202011205942 A CN202011205942 A CN 202011205942A CN 114443640 A CN114443640 A CN 114443640A
- Authority
- CN
- China
- Prior art keywords
- block
- data
- sending
- node
- target
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供了一种数据出块方法、装置、电子设备及计算机可读存储介质,涉及区块链领域。该方法包括:接收至少一个节点发送的出块请求,所述出块请求包括至少一个区块编号;根据预设的出块索引表,将与所述区块编号对应的目标数据发送给与所述出块请求对应的目标节点,以使所述目标节点对所述目标数据进行上链处理,其中,所述出块索引表包括区块编号与数据的对应关系。本申请实施例实现了使数据快速的并发出块,进行数据上链,提高了数据的上链速度,解决了大量数据需要上链,以致上链速度慢的问题。
Description
技术领域
本申请涉及区块链技术领域,具体而言,本申请涉及一种数据出块方法、装置、电子设备及计算机可读存储介质。
背景技术
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链具有去中心化、不可篡改、全程留痕、可以追溯、集体维护、公开透明等特点。这些特点保证了区块链的“诚实”与“透明”,为区块链创造信任奠定基础。
区块链的发展,从区块链2.0到区块链3.0,人们关注的焦点往往是性能问题,解决性能问题是区块链3.0的使命,但当前的大多数区块链技术框架在性能问题上表现并不好,现有的出块方案为线性出块,出块效率低。
发明内容
本申请的目的旨在至少能解决上述的技术缺陷之一,特提出以下技术方案:
第一方面,提供了一种数据出块的方法,应用于终端,数据出块方法包括:
接收至少一个节点发送的出块请求,出块请求包括至少一个区块编号;
根据预设的出块索引表,将与区块编号对应的目标数据发送给与出块请求对应的目标节点,以使目标节点对目标数据进行上链处理,其中,出块索引表包括区块编号与数据的对应关系。
第二方面,提供了一种数据出块方法,应用于区块链系统的节点,数据出块方法包括:
发送出块请求给终端,出块请求包括至少一个区块编号,以使终端根据预设的出块索引表,将与至少一个区块编号分别一一对应的至少一个目标数据发送给与出块请求对应的目标节点,其中,出块索引表包括区块编号与数据的对应关系;
对接收的目标数据进行上链处理。
第三方面,提供了一种数据出块装置,应用于终端,数据出块装置包括:
请求接收模块,用于接收至少一个节点发送的出块请求,出块请求包括至少一个区块编号;
数据发送模块,用于根据预设的出块索引表,将与区块编号对应的目标数据发送给与出块请求对应的目标节点,以使目标节点对目标数据进行上链处理,其中,出块索引表包括区块编号与数据的对应关系。
第四方面,提供了一种数据出块装置,应用于区块链系统的节点,数据出块装置包括:
请求发送模块,用于发送出块请求给终端,出块请求包括至少一个区块编号,以使终端根据预设的出块索引表,将与区块编号对应的至少一个目标数据发送给与出块请求对应的目标节点,其中,出块索引表包括区块编号与数据的对应关系;
上链模块,用于对接收的目标数据进行上链处理。
第五方面,提供了一种电子设备,该电子设备包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中一个或多个应用程序被存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序配置用于:执行根据本申请第一方面或第二方面所示的数据出块方法。
第六方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本申请第一方面或第二方面所示的数据出块方法。
本申请提供的技术方案带来的有益效果是:终端可以接收至少一个节点发送的出块请求,出块请求包括至少一个区块编号,并根据预设的出块索引表,将与区块编号对应的目标数据发送给与出块请求对应的目标节点,以使目标节点对目标数据进行上链处理,从而能够使数据快速的并发出块,进行数据上链,提高了数据的上链速度,解决了大量数据需要上链,以致上链速度慢的问题。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1为本申请实施例提供的一种数据出块方法的流程示意图;
图2为本申请实施例提供的一种数据出块方法的还包括的流程示意图;
图3为图1中步骤S102的详细流程示意图;
图4为本申请实施例提供的另一种数据出块方法的流程示意图;
图5为图4中步骤S402的详细流程示意图;
图6为本申请实施例提供的一种数据出块装置的结构示意图;
图7为本申请实施例提供的另一种数据出块装置的结构示意图;
图8为本申请实施例提供的一种数据出块的电子设备的结构示意图。
具体实施方式
下面详细描述本申请的实施例,实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本申请提供的数据出块方法、装置、电子设备和计算机可读存储介质,旨在解决现有技术的如上技术问题。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
本申请提供的数据出块方法,可以应用于如图1所示的应用环境中。具体的,
本技术领域技术人员可以理解,这里所使用的“终端”可以是手机、平板电脑、PDA(Personal Digital Assistant,个人数字助理)、MID(Mobile Internet Device,移动互联网设备)等;“服务器”可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
请参阅图1,本申请实施例中提供了一种数据出块方法,数据出块方法可以应用于终端,该方法包括:
S101:接收至少一个节点发送的出块请求,出块请求包括至少一个区块编号。
在区块链系统中包括较多的节点,即区块节点,节点可作为共识节点或记账节点。其中所有的节点都和终端通信连接。节点可以将经过共识的数据存储在终端中。数据的具体类型不做限定,如数据可以为交易数据。
区块链系统的节点的所有数据可以存储在终端的内存数据库中。内存数据库的性能较好,具有高可用性与可扩展性。
本申请中,与终端通信连接的区块链系统可以包括多个,不同的区块链系统可以与同一个终端连接,不同的区块链系统的节点都可以将数据存储在终端的内存数据库中。不同区块链系统的数据,存储在不同的数据表中。
一个区块链系统,其中的节点在经过共识后,可以作为出块节点,给终端发送出块请求。同一时间,可以一个或多个节点给终端分别发送出块请求,同一时间发送出块请求的多个节点可以是同一个区块链系统的节点。不同的区块链系统的节点也可以在同一时间分别给终端发送出块请求。
出块请求可以包括一个或多个区块编号。同一个节点中可以包括多个出块线程,出块线程用于进行出块,同一个节点中包括的出块线程的数量和该节点的出块请求包括的区块编号的数量一致。
其中,区块编号用于查找对应区块编号的数据。
S102:根据预设的出块索引表,将与区块编号对应的目标数据发送给与出块请求对应的目标节点,以使目标节点对目标数据进行上链处理,其中,出块索引表包括区块编号与数据的对应关系。
出块索引表为预先设置的。出块索引表中包括区块编号与数据的对应关系,根据出块索引表,即可确定与区块编号对应的数据,也即目标数据。目标数据确定后,将目标数据发送给与出块请求对应的节点,也即目标节点,目标节点即可对目标数据进行上链处理。其中,不同的区块链系统对应不同的出块索引表,即每个区块链系统的数据对应一个出块索引表。
在一个出块请求包括多个区块编号时,则终端将与该多个区块编号分别对应的多个目标数据发送给与该出块请求对应的目标节点。具体地,如终端接收到目标节点B发送的一个出块请求A,出块请求A包括区块编号A1、区块编号A2和区块编号A3,则终端将与区块编号A1、区块编号A2和区块编号A3分别对应的目标数据发送给目标节点B。
本申请的实施例提供的数据出块方法,终端可以接收至少一个节点发送的出块请求,出块请求包括至少一个区块编号,并根据预设的出块索引表,将与区块编号对应的目标数据发送给与出块请求对应的目标节点,以使目标节点对目标数据进行上链处理,从而能够使数据快速的并发出块,进行数据上链,提高了数据的上链速度,解决了大量数据需要上链,以致上链速度慢的问题。
请参阅图2,本申请实施例还提供了一种可能的实现方式,接收至少一个节点发送的出块请求之前,数据出块方法还包括:
S201:将接收的区块链系统的节点的数据存储在内存数据库的数据表中,每一个数据都包括数据基本信息,其中,不同的区块链系统对应的数据存储在不同的数据表中。
内存数据库中包括多个数据表,数据表的数量和区块链系统的数量对应,每个数据表对应存储一个区块链系统的数据,不同的区块链系统对应的数据存储在不同的数据表中。
数据基本信息为数据的相关信息,数据基本信息可以包括交易编号、交易内容、交易大小、交易时间戳等。每个数据仅包括一个交易编号、交易时间戳。每个交易编号仅和一个数据对应。
S202:根据预设的出块方案和节点的数据,生成区块编号与数据基本信息的对应关系。
出块方案用于确定生成区块编号与数据基本信息的对应关系的时间。出块方案的具体方案不做限定,具体的,如未生成区块编号与数据基本信息的对应关系的大于预设的时间,未生成区块编号与数据基本信息的对应关系的数据的数据量大于预设数据量等。
数据基本信息与区块编号对应。在本申请中,数据基本信息的交易编号与区块编号对应,使得每个数据仅和一个区块编号对应,每个区块编号仅和一个数据对应。区块编号的具体编号可以按照预设的规则设定。本申请中,区块编号根据数值自增方式增加,如第一个区块编号为1,其后每增加一个区块编号,新的区块编号的数值都增加1,即第二个区块编号为2,第三个区块编号为3,第四个区块编号为4,按照该自增方式增加区块编号的编号值。
S203:将对应关系存储在出块索引表中。
生成区块编号与数据基本信息的对应关系后,即可将对应关系存储在出块索引表中,可供后续在接收到出块请求后,将出块请求的区块编号对应的数据发送给与出块请求对应的节点。
本申请实施例的技术方案,通过生成区块编号与数据基本信息的对应关系,将对应关系存储在出块索引表中,可以在接收到出块请求后,快速确定出块请求对应的数据,提高了数据出块后进行上链处理的效率。
本申请实施例还提供了一种可能的实现方式,根据预设的出块方案和节点的数据,生成区块编号与数据基本信息的对应关系,包括:
若未出块的数据的数量大于预设数量阈值、未出块的数据的大小大于预设存储阈值以及未接收出块请求的时间大于预设时间阈值中满足任一情形,根据节点的数据生成区块编号与数据基本信息的对应关系。
未出块的数据,即未被发送给节点进行上链处理的数据。未出块的数据的数量,即未被发送给节点进行上链处理的数据的数量。预设数量阈值不做限定,如预设数量阈值可以为10,20,35等。未出块的数据的大小,即未被发送给节点进行上链处理的数据的数据量的大小。预设存储阈值的大小不做限定,如预设存储阈值为10Mb,15Mb等。预设时间阈值不做限定,如可以为10min,1h等。未接收出块请求的时间大于预设时间阈值,则可能被存储的数据还未生成对应的区块编号,无法将没有对应区块编号的数据发送给节点,没有对应区块编号的数据无法进行上链处理。
请参阅图3,本申请实施例还提供了一种可能的实现方式,根据预设的出块索引表,将与区块编号对应的目标数据发送给与出块请求对应的目标节点,包括:
S301:根据区块编号和出块索引表获取数据基本信息。
出块请求中包括区块编号,出块索引表中包括区块编号与数据的数据基本信息的对应关系,即可根据对应关系确定与区块编号对应的数据基本信息。本实施例中,数据基本信息为数据的交易编号。可以理解,在区块编号包括多个,如一个出块请求中包括多个区块编号,需要获取每个区块编号对应的数据基本信息。
S302:根据数据基本信息确定目标数据。
在确定数据基本信息后,即可确定与数据基本信息对应的数据,即目标数据。如在确定交易编号后,即可确定与该交易编号对应的数据。可以理解,在获取到多个数据基本信息后,可以确定与每个数据基本信息对应的目标数据。
S303:将目标数据发送给与出块请求对应的目标节点。
如终端同时接收到目标节点B发送的一个出块请求A、目标节点D发送的一个出块请求C,出块请求A包括区块编号A1、区块编号A2和区块编号A3,出块请求C包括区块编号C1和区块编号C2,则终端将与区块编号A1、区块编号A2和区块编号A3分别对应的目标数据发送给目标节点B,终端将与区块编号C1和区块编号C2分别对应的目标数据发送给目标节点D。
本申请实施例的技术方案,可以快速确定与区块编号对应的目标数据,以将目标数据发送给对应的节点,且能够并发出块上链,提高了数据进行上链处理的效率。
请参阅图4,本申请实施例中提供了一种数据出块方法,数据出块方法可以应用于区块链系统的节点,该方法包括:
S401:发送出块请求给终端,出块请求包括至少一个区块编号,以使终端根据预设的出块索引表,将与至少一个区块编号分别一一对应的至少一个目标数据发送给与出块请求对应的目标节点,其中,出块索引表包括区块编号与数据的对应关系。
获得共识的节点才可以发送出块请求给终端。节点可以通过共识获取需要出块的数据对应的区块编号,节点经过共识,可以获取一个或多个区块编号,节点即可发送包括区块编号的出块请求给终端。终端获取区块编号后,即可发送与区块编号对应的数据给该节点。
S402:对接收的目标数据进行上链处理。
节点在接收到目标数据后,即可对目标数据进行上链处理。
本申请实施例的方法,终端可以接收至少一个节点发送的出块请求,出块请求包括至少一个区块编号,并根据预设的出块索引表,将与区块编号对应的目标数据发送给与出块请求对应的目标节点,以使目标节点对目标数据进行上链处理,从而能够使数据快速的并发出块,进行数据上链,提高了数据的上链速度,解决了大量数据需要上链,以致上链速度慢的问题。
请参阅图5,本申请实施例还提供了一种可能的实现方式,对接收的目标数据进行上链处理,包括:
S501:将接收的至少一个目标数据打包,以使每个目标数据分别形成一个区块数据,每个区块数据包括与该目标数据对应的区块编号。
若目标数据包括多个,可将每个目标数据分别按照区块编号的顺序进行打包,以使每个目标数据形成一个区块数据。区块数据包括与目标数据对应的区块编号,也即与该区块数据对应的区块编号。
S502:将区块数据发送给至少一个记账节点,以使每个记账节点分别对区块数据进行缓存,若区块数据的区块编号与已上链的最后一个区块数据的区块编号连续,记账节点将缓存的与已上链的最后一个区块数据的区块编号连续的区块数据进行上链存储。
记账节点用于对区块数据进行上链存储。记账节点可以包括一个或多个,节点将区块数据发送给记账节点时,可以根据P2P(peer-to-peer,点对点)通信协议进行发送。若确定了与多个目标数据分别对应的区块数据,可以同时将多个目标数据分别发送给对应的记账节点。
一个记账节点在接收到区块数据后,对区块数据进行缓存。只有在缓存的区块数据的区块编号与已上链的最后一个区块数据的区块编号连续,记账节点才会将该缓存的与已上链的最后一个区块数据的区块编号连续的区块数据进行上链存储。若区块数据的区块编号与已上链的最后一个区块数据的区块编号不连续,则记账节点等待接收其他区块数据。具体地,如已上链的最后一个区块数据的区块编号为5,已缓存的区块数据的区块编号为7,区块编号7和区块编号5不连续,则记账节点会继续等待,直到接收并缓存到区块编号为6的区块数据,才会将区块编号为6的区块数据进行上链存储,然后将区块编号为7的区块数据进行上链存储。
请参阅图6,本申请实施例提供了一种数据出块装置600,可以应用于终端,该数据出块装置600可以包括:
请求接收模块601,用于接收至少一个节点发送的出块请求,出块请求包括至少一个区块编号;
数据发送模块602,用于根据预设的出块索引表,将与区块编号对应的目标数据发送给与出块请求对应的目标节点,以使目标节点对目标数据进行上链处理,其中,出块索引表包括区块编号与数据的对应关系。
本申请的实施例提供的数据出块装置,终端可以接收至少一个节点发送的出块请求,出块请求包括至少一个区块编号,并根据预设的出块索引表,将与区块编号对应的目标数据发送给与出块请求对应的目标节点,以使目标节点对目标数据进行上链处理,从而能够使数据快速的并发出块,进行数据上链,提高了数据的上链速度,解决了大量数据需要上链,以致上链速度慢的问题。
本申请实施例还提供了一种可能的实现方式,数据出块装置600还可以包括:
数据表存储模块,用于将接收的区块链系统的节点的数据存储在内存数据库的数据表中,每一个数据都包括数据基本信息,其中,不同的区块链系统对应的数据存储在不同的数据表中;
关系生成模块,用于根据预设的出块方案和节点的数据,生成区块编号与数据基本信息的对应关系;
索引表存储模块,用于将对应关系存储在出块索引表中。
本申请实施例还提供了一种可能的实现方式,关系生成模块,具体可以用于:若未出块的数据的数量大于预设数量阈值、未出块的数据的大小大于预设存储阈值以及未接收出块请求的时间大于预设时间阈值中满足任一情形,根据节点的数据生成区块编号与数据基本信息的对应关系。
本申请实施例还提供了一种可能的实现方式,数据发送模块602,可以包括:
信息获取单元,用于根据区块编号和出块索引表获取数据基本信息;
数据确定单元,用于根据数据基本信息确定目标数据;
数据发送单元,用于将目标数据发送给与出块请求对应的目标节点。
请参阅图7,本申请实施例提供了一种数据出块装置700,可以应用于区块链系统的节点,该数据出块装置700可以包括:
请求发送模块701,用于发送出块请求给终端,出块请求包括至少一个区块编号,以使终端根据预设的出块索引表,将与区块编号对应的至少一个目标数据发送给与出块请求对应的目标节点,其中,出块索引表包括区块编号与数据的对应关系;
上链模块702,用于对接收的目标数据进行上链处理。
本申请实施例的装置,终端可以接收至少一个节点发送的出块请求,出块请求包括至少一个区块编号,并根据预设的出块索引表,将与区块编号对应的目标数据发送给与出块请求对应的目标节点,以使目标节点对目标数据进行上链处理,从而能够使数据快速的并发出块,进行数据上链,提高了数据的上链速度,解决了大量数据需要上链,以致上链速度慢的问题。
本申请实施例还提供了一种可能的实现方式,上链模块702,可以包括:
打包单元,用于将接收的至少一个目标数据打包,以使每个目标数据分别形成一个区块数据,每个区块数据包括与该目标数据对应的区块编号;
上链单元,用于将区块数据发送给至少一个记账节点,以使每个记账节点分别对区块数据进行缓存,若区块数据的区块编号与已上链的最后一个区块数据的区块编号连续,记账节点将缓存的与已上链的最后一个区块数据的区块编号连续的区块数据进行上链存储。
请参阅图8,在一个可选实施例中提供了一种电子设备,电子设备8000包括:处理器8001和存储器8003。其中,处理器8001和存储器8003相连,如通过总线8002相连。可选地,电子设备8000还可以包括收发器8004。需要说明的是,实际应用中收发器8004不限于一个,该电子设备8000的结构并不构成对本申请实施例的限定。
处理器8001可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器8001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线8002可包括一通路,在上述组件之间传送信息。总线8002可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线8002可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器8003可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscRead Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
存储器8003用于存储执行本申请方案的应用程序代码,并由处理器8001来控制执行。处理器8001用于执行存储器8003中存储的应用程序代码,以实现前述方法实施例所示的内容。
其中,电子设备包括但不限于:终端和服务器。
本申请实施例中提供了一种电子设备,该电子设备包括:存储器和处理器;至少一个程序,存储于存储器中,用于被处理器执行时,实现前述方法实施例中相应内容,与现有技术相比可实现:终端可以接收至少一个节点发送的出块请求,出块请求包括至少一个区块编号,并根据预设的出块索引表,将与区块编号对应的目标数据发送给与出块请求对应的目标节点,以使目标节点对目标数据进行上链处理,从而能够使数据快速的并发出块,进行数据上链,提高了数据的上链速度,解决了大量数据需要上链,以致上链速度慢的问题。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。与现有技术相比,终端可以接收至少一个节点发送的出块请求,出块请求包括至少一个区块编号,并根据预设的出块索引表,将与区块编号对应的目标数据发送给与出块请求对应的目标节点,以使目标节点对目标数据进行上链处理,从而能够使数据快速的并发出块,进行数据上链,提高了数据的上链速度,解决了大量数据需要上链,以致上链速度慢的问题。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (11)
1.一种数据出块方法,其特征在于,应用于终端,所述方法包括:
接收至少一个节点发送的出块请求,所述出块请求包括至少一个区块编号;
根据预设的出块索引表,将与所述区块编号对应的目标数据发送给与所述出块请求对应的目标节点,以使所述目标节点对所述目标数据进行上链处理,其中,所述出块索引表包括区块编号与数据的对应关系。
2.根据权利要求1所述的数据出块方法,其特征在于,所述接收至少一个节点发送的出块请求之前,所述方法还包括:
将接收的区块链系统的节点的数据存储在内存数据库的数据表中,每一个数据都包括数据基本信息,其中,不同的区块链系统对应的数据存储在不同的数据表中;
根据预设的出块方案和所述节点的数据,生成所述区块编号与所述数据基本信息的对应关系;
将所述对应关系存储在所述出块索引表中。
3.根据权利要求2所述的数据出块方法,其特征在于,所述根据预设的出块方案和所述节点的数据,生成所述区块编号与所述数据基本信息的对应关系,包括:
若未出块的数据的数量大于预设数量阈值、未出块的数据的大小大于预设存储阈值以及未接收所述出块请求的时间大于预设时间阈值中满足任一情形,根据所述节点的数据生成所述区块编号与所述数据基本信息的对应关系。
4.根据权利要求2所述的数据出块方法,其特征在于,所述根据预设的出块索引表,将与所述区块编号对应的目标数据发送给与所述出块请求对应的目标节点,包括:
根据所述区块编号和所述出块索引表获取所述数据基本信息;
根据所述数据基本信息确定目标数据;
将所述目标数据发送给与所述出块请求对应的目标节点。
5.根据权利要求1所述的数据出块方法,其特征在于,所述区块编号根据数值自增方式增加。
6.一种数据出块方法,其特征在于,应用于区块链系统的节点,所述方法包括:
发送出块请求给终端,所述出块请求包括至少一个区块编号,以使所述终端根据预设的出块索引表,将与至少一个所述区块编号分别一一对应的至少一个目标数据发送给与所述出块请求对应的目标节点,其中,所述出块索引表包括区块编号与数据的对应关系;
对接收的所述目标数据进行上链处理。
7.根据权利要求6所述的数据出块方法,其特征在于,所述对接收的所述目标数据进行上链处理,包括:
将接收的至少一个所述目标数据打包,以使每个目标数据分别形成一个区块数据,每个所述区块数据包括与该目标数据对应的区块编号;
将所述区块数据发送给至少一个记账节点,以使每个记账节点分别对所述区块数据进行缓存,若所述区块数据的区块编号与已上链的最后一个区块数据的区块编号连续,所述记账节点将缓存的与已上链的最后一个区块数据的区块编号连续的区块数据进行上链存储。
8.一种数据出块装置,应用于终端,其特征在于,所述装置包括:
请求接收模块,用于接收至少一个节点发送的出块请求,所述出块请求包括至少一个区块编号;
数据发送模块,用于根据预设的出块索引表,将与所述区块编号对应的目标数据发送给与所述出块请求对应的目标节点,以使所述目标节点对所述目标数据进行上链处理,其中,所述出块索引表包括区块编号与数据的对应关系。
9.一种数据出块装置,应用于区块链系统的节点,其特征在于,所述装置包括:
请求发送模块,用于发送出块请求给终端,所述出块请求包括至少一个区块编号,以使所述终端根据预设的出块索引表,将与所述区块编号对应的至少一个目标数据发送给与所述出块请求对应的目标节点,其中,所述出块索引表包括区块编号与数据的对应关系;
上链模块,用于对接收的所述目标数据进行上链处理。
10.一种电子设备,其特征在于,其包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于:执行根据权利要求1~8任一项所述的数据出块方法。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1~8任一项所述的数据出块方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011205942.5A CN114443640A (zh) | 2020-11-02 | 2020-11-02 | 数据出块方法、装置、电子设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011205942.5A CN114443640A (zh) | 2020-11-02 | 2020-11-02 | 数据出块方法、装置、电子设备及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114443640A true CN114443640A (zh) | 2022-05-06 |
Family
ID=81356728
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011205942.5A Pending CN114443640A (zh) | 2020-11-02 | 2020-11-02 | 数据出块方法、装置、电子设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114443640A (zh) |
-
2020
- 2020-11-02 CN CN202011205942.5A patent/CN114443640A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109145158B (zh) | 一种布隆过滤器中数据的处理方法以及布隆过滤器 | |
US8332952B2 (en) | Time window based canary solutions for browser security | |
CN111899097B (zh) | 一种受理区块链存证交易的方法及系统 | |
CN106685429B (zh) | 整数压缩方法及装置 | |
CN109145053B (zh) | 数据处理方法和装置、客户端、服务器 | |
CN111339057A (zh) | 减少回源请求的方法、装置及计算机可读存储介质 | |
CN111080510A (zh) | 数据处理装置、方法、芯片、处理器、设备及存储介质 | |
CN105359122A (zh) | 多cpu系统中的增强型数据传输 | |
CN110618883B (zh) | 一种用于共享内存链表的方法、装置、设备及存储介质 | |
US10581997B2 (en) | Techniques for storing or accessing a key-value item | |
US9639566B2 (en) | Method, apparatus and computer program product for improved storage of key-value pairs | |
CN111858586B (zh) | 一种数据处理的方法和装置 | |
CN114443640A (zh) | 数据出块方法、装置、电子设备及计算机可读存储介质 | |
Julián-Moreno et al. | On the feasibility of 40 gbps network data capture and retention with general purpose hardware | |
CN114785662B (zh) | 一种存储管理方法、装置、设备及机器可读存储介质 | |
CN110740138A (zh) | 数据传输方法和装置 | |
CN111639129B (zh) | 交易处理方法、装置、电子设备及计算机可读存储介质 | |
CN113032820B (zh) | 文件存储方法、访问方法、装置、设备及存储介质 | |
US9137276B2 (en) | Managing message distribution in a networked environment | |
CN109032804B (zh) | 数据处理方法和装置、服务器 | |
CN109831385B (zh) | 一种消息处理方法、装置及电子设备 | |
CN108664323B (zh) | 一种基于多处理器的数据传输方法和装置 | |
CN116360708B (zh) | 数据写入方法及装置、电子设备和存储介质 | |
US20230129107A1 (en) | Method and apparatus to aggregate objects to be stored in a memory to optimize the memory bandwidth | |
CN109408241B (zh) | 负载均衡方法、装置、设备和存储介质 |
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 |