CN111506658B - 数据处理方法、装置、第一设备及存储介质 - Google Patents

数据处理方法、装置、第一设备及存储介质 Download PDF

Info

Publication number
CN111506658B
CN111506658B CN202010310574.4A CN202010310574A CN111506658B CN 111506658 B CN111506658 B CN 111506658B CN 202010310574 A CN202010310574 A CN 202010310574A CN 111506658 B CN111506658 B CN 111506658B
Authority
CN
China
Prior art keywords
hash
hash value
target
routing
value
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.)
Active
Application number
CN202010310574.4A
Other languages
English (en)
Other versions
CN111506658A (zh
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010310574.4A priority Critical patent/CN111506658B/zh
Publication of CN111506658A publication Critical patent/CN111506658A/zh
Application granted granted Critical
Publication of CN111506658B publication Critical patent/CN111506658B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2255Hash tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/02Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本发明实施例公开了一种数据处理方法、装置、第一设备及存储介质,其中方法包括:获取目标交易数据的目标哈希值,以及获取所述第一设备的存储哈希区间,所述存储哈希区间包括多个哈希值;若所述目标哈希值不属于所述存储哈希区间,则获取所述第一设备的哈希值及所述第一设备的路由信息,所述路由信息用于记录所述路由设备集中的各个路由设备的哈希值;根据所述目标哈希值、所述第一设备的哈希值和所述路由信息从所述路由设备集中确定出第二设备,并将所述目标交易数据发送到所述第二设备,可提升交易数据的存储效率。

Description

数据处理方法、装置、第一设备及存储介质
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据处理方法、装置、第一设备及存储介质。
背景技术
随着区块链技术的不断深入发展,越来越多的客户端依赖于区块链网络进行交易数据的存储,以保障交易数据的安全性,因此,区块链网络会接收到大量的待存储的交易数据,加大了节点设备对交易数据的处理压力。为了减轻节点设备对交易数据的处理压力,当前采用的是由区块链网络外的节点设备进行交易数据的接收,并基于交易数据的哈希值转发到区块链网络的不同节点设备中,可一定程度上减轻区块链网络中节点设备的数据接收和存储压力,但由同一节点设备进行交易数据的转发,对该节点设备的数据处理能力要求较高,而且,交易数据可能在该节点设备中长时间的等待而不能上链,由此可见,如何将交易数据快速存储到区块链网络中成为了当前的研究热点。
发明内容
本发明实施例提供了一种数据处理方法、装置、第一设备及存储介质,可提升交易数据的存储效率。
一方面,本发明实施例提供了一种数据处理方法,所述数据处理方法由区块链网络中的第一设备执行,所述区块链网络还包括所述第一设备的路由设备集,所述路由设备集中包括所述第一设备对应的至少一个路由设备,所述方法包括:
获取目标交易数据的目标哈希值,以及获取所述第一设备的存储哈希区间,所述存储哈希区间包括多个哈希值;
若所述目标哈希值不属于所述存储哈希区间,则获取所述第一设备的哈希值及所述第一设备的路由信息,所述路由信息用于记录所述路由设备集中的各个路由设备的哈希值;
根据所述目标哈希值、所述第一设备的哈希值和所述路由信息从所述路由设备集中确定出第二设备,并将所述目标交易数据发送到所述第二设备。
一方面,本发明实施例提供了一种数据处理装置其特征在于,所述数据处理装置内置于由区块链网络中的第一设备中,所述区块链网络还包括所述第一设备的路由设备集,所述路由设备集中包括所述第一设备对应的至少一个路由设备,所述装置包括:
获取单元,用于获取目标交易数据的目标哈希值,以及获取所述第一设备的存储哈希区间,所述存储哈希区间包括多个哈希值;
所述获取单元,还用于若所述目标哈希值不属于所述存储哈希区间,则获取所述第一设备的哈希值及所述第一设备的路由信息,所述路由信息用于记录所述路由设备集中的各个路由设备的哈希值;
确定单元,用于根据所述目标哈希值、所述第一设备的哈希值和所述路由信息从所述路由设备集中确定出第二设备,并将所述目标交易数据发送到所述第二设备。
在一个实施例中,所述路由信息包括多个哈希位置,所述路由设备集中的各个路由设备的哈希值分别与一个或多个哈希位置相关联;
所述哈希位置用于指示所述路由设备集中的对应路由设备的哈希值与所述第一设备的哈希值之间的哈希差值;
所述路由信息中的哈希位置的取值是根据所述区块链网络中的设备总数确定的。
在一个实施例中,所述区块链网络中的各个设备按照哈希值由小至大的顺序排列,所述哈希值是对所述各个设备的设备标识进行哈希计算得到的;
所述获取单元,具体用于:
获取所述第一设备的前任设备的哈希值,所述前任设备与所述第一设备相邻,且哈希值小于所述第一设备的哈希值;
将大于所述前任设备的哈希值且小于等于所述第一设备的哈希值之间的区间,确定为所述第一设备的存储哈希区间。
在一个实施例中,所述确定单元,具体用于:
计算所述目标哈希值和所述第一设备的哈希值之间的基准哈希差值;
从所述路由信息中确定出该基准哈希差值对应的目标哈希位置,并将该目标哈希位置关联的哈希值对应的路由设备确定为所述第二设备。
在一个实施例中,所述获取单元,还用于若从所述路由信息中确定出该基准哈希差值对应的目标哈希位置失败,则获取所述路由信息中的最远哈希位置,并确定所述最远哈希位置指示的哈希值;
所述确定单元,还用于将所述与所述最远哈希位置指示的哈希值对应的路由设备确定为所述第二设备。
在一个实施例中,所述装置还包括:执行单元。
所述获取单元,还用于获取所述区块链网络中的设备总数;
执行单元,用于若所述设备总数小于或等于数量阈值,则触发执行获取所述第一设备的路由信息的步骤。
在一个实施例中,所述装置还包括:转发单元。
转发单元,用于若所述设备总数大于所述数量阈值,则将所述目标交易数据转发到所述区块链网络中除所述第一设备之外的任一设备。
一方面,本发明实施例提供了一种第一设备,包括处理器、存储器和通信接口,所述处理器、所述存储器和所述通信接口相互连接,其中,所述存储器用于存储计算机程序指令,所述处理器被配置用于执行所述程序指令,执行如下步骤:
获取目标交易数据的目标哈希值,以及获取所述第一设备的存储哈希区间,所述存储哈希区间包括多个哈希值;
若所述目标哈希值不属于所述存储哈希区间,则获取所述第一设备的哈希值及所述第一设备的路由信息,所述路由信息用于记录所述路由设备集中的各个路由设备的哈希值;
根据所述目标哈希值、所述第一设备的哈希值和所述路由信息从所述路由设备集中确定出第二设备,并将所述目标交易数据发送到所述第二设备。
一方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述第一方面的方法。
在本发明实施例中,第一设备在获取到目标交易数据和对应的目标哈希值后,以及第一设备的存储哈希区间后,可判断该目标哈希值是否属于该存储哈希区间,若确定属于,则将目标交易数据存储到第一设备中,而如果该第一设备确定该目标哈希值不属于该存储哈希区间,则可进一步获取第一设备的哈希值,以及第一设备的路由信息,从而可根据该目标哈希值,该第一设备的哈希值,以及该路由信息,从该第一设备的路由设备中确定出第二设备,并将目标交易数据转发到第二设备,使得第一设备可快速确定出需要转发的设备,从而可有效减少对目标交易数据的转发次数,从而可提升对目标交易数据的存储效率。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种数据处理架构的示意图;
图2是本发明实施例提供的一种数据处理方法的示意流程图;
图3a是本发明实施例提供的一种设备的存储哈希区间的示意图;
图3b是本发明实施例提供的一种设备的路由信息的示意图;
图4是本发明另一实施例提供的一种数据处理方法的示意流程图;
图5是本发明实施例提供的一种数据处理装置的示意性框图;
图6是本发明实施例提供的一种第一设备的示意性框图。
具体实施方式
本发明实施例提出了一种数据处理方法,可应用于区块链网络中的第一设备,该第一设备为该区块链网络中的任一设备,在一个实施例中,客户端可将生成的目标交易数据发送到区块链网络的任一设备(如第一设备),其中,所述客户端可以是所述区块链网络之外的终端设备或者服务器,如图1所示,若所述区块链网络10包括多个设备,该设备的编号分别为101,102和103,客户端11为区块链网络外的设备,客户端11生成的目标交易数据可上传到区块链网络中进行存储,在具体实现中,客户端11可将生成的目标交易数据发送给设备101,或者设备102,或者设备103,以使得对应设备将目标交易数据存储到区块链网络中,由于客户端11可将交易数据随机发送给区块链网络中的任意设备,以存储该目标交易数据,相对比客户端11将交易数据发送给区块链网络中的特定设备,由该特定设备进行转发并存储该目标交易数据的方式而言,可有效提升对目标交易数据的存储效率。在一个实施例中,客户端11还可将目标交易数据同时发送给多个设备,如将该目标交易数据同时发送给设备101和设备102,或者将该目标交易数据同时发送给设备101,设备102,以及设备103,以实现对目标交易数据的快速存储。
在一个实施例中,区块链网络中接收客户端发送的目标交易数据的设备可以为第一设备,该第一设备在接收到目标交易数据后,为了确定是否存储该目标交易数据,可先对该目标交易数据进行哈希计算,以确定该目标交易数据对应的目标哈希值。其中,区块链网络中的各设备维护有一段对应的存储哈希区间,每个设备维护的存储哈希区间是预先设定的,在一个实施例中,区块链网络可基于该区块链网络支持的总的哈希空间和该区块链网络中设备的数量,对该哈希空间进行均分,以使每个设备维护一段对应的存储哈希区间,或者,也可为该区块链网络中的每个设备随机分配一段相应的存储哈希区间,或者,还可以根据该区块链网络中每个设备的哈希值确定每个设备对应的存储哈希区间,其中,在根据区块链网络中每个设备的哈希值确定对应的存储哈希区间时,每个设备是基于该设备的相邻哈希值确定的。其中,每个设备所维护的存储哈希区间互不重叠,该存储哈希区间用于指示该设备可存储的交易数据的哈希值所在的区间范围,举例来说,若设备A对应的存储哈希区间为<20~40>,若设备A接收到的交易数据对应的哈希值为38,则设备A可直接存储接收到的交易数据,而如果设备A接收到的交易数据对应的哈希值为52,则设备A不能存储该交易数据,因为该交易数据的哈希值52不属于该设备A对应的存储哈希区间。
在第一设备确定目标交易数据对应的目标哈希值后,可获取该第一设备的存储哈希区间,并判断该目标哈希值是否属于该第一设备的存储哈希区间,若确定属于,所述第一设备可直接存储该目标交易数据,若该第一设备确定该目标哈希值不属于该第一设备的存储哈希区间,则可将该目标交易数据,以及该目标交易数据对应的目标哈希值转发到第二设备,以使得第二设备可基于该目标哈希值存储该目标交易数据,或者,若所述第二设备基于所述目标哈希值确定不能存储该目标交易数据,则该第二设备可将该目标交易数据以及该目标哈希值继续转发到区块链网络中的其他设备中,直至该目标交易数据存储到区块链网络中。
在一个实施例中,所述区块链网还包括每个设备对应的路由设备集,该路由设备集中包括第一设备对应的至少一个路由设备,其中,路由设备是指获取到目标交易数据的当前设备(如上述的第一设备)可将该目标交易数据进行转发的设备,举例来说,若设备A对应的路由设备集包括区块链中的设备B和设备C,设备A在将交易数据进行转发时,只能转发到设备B或者设备C中,而不能转发到区块链网络的其他设备,如设备D中等。在一个实施例中,若该区块链网络中的每个设备存储有该设备对应的一个或多个路由设备的哈希值,以基于该路由设备的哈希值,确定出该对应的路由设备,所以,第一设备在获取目标哈希数据后,若确定该目标哈希数据对应的目标哈希值不属于第一设备的存储哈希区间,该第一设备在将该目标交易数据以及对应的目标哈希值进行转发时,可基于该第一设备的哈希值,该第一设备对应路由设备的哈希值,以及目标交易数据对应的目标哈希值,从该第一设备对应的路由设备集中确定出第二设备,并将该目标交易数据以及目标哈希值转发到第二设备中。
在具体实现中,第一设备在基于该第一设备的哈希值,该第一设备对应路由设备的哈希值,以及目标交易数据对应的目标哈希值,从该第一设备对应的路由设备集中确定出第二设备时,所述第一设备可先获取记录有该第一设备对应的一个或多个路由设备的哈希值的路由信息,以及该第一设备对应的第一哈希值,其中,该第一哈希值和该路由设备的哈希值是对该第一设备以及路由设备的设备标识分别进行哈希计算得到的,在具体实现中,可采用一致性哈希算法对设备标识进行哈希计算,得到对应的哈希值。在所述第一设备获取到第一设备的哈希值,以及该第一设备的路由设备集中各路由设备的哈希值后,进一步地,所述第一设备可先确定所述目标交易数据的目标哈希值与所述第一设备的哈希值之间的目标哈希差值,从而可基于该目标哈希差值从所述第一设备的各个路由设备中确定出第二设备。在一个实施例中,路由信息中还记录有各路由设备的哈希值与该第一设备的哈希值之间的哈希差值,因此,第一设备在基于目标哈希差值从该第一设备的多个路由设备中确定出第二设备时,可从该路由信息中查找该目标哈希差值,若从所述路由信息中找到该哈希差值,则确定将该路由信息中,与找到的哈希差值对应的路由设备作为该第二设备,并将目标交易数据发送到所述第二设备中,基于第一设备对应的路由设备集,使得所述各设备在接收到目标交易数据后,可快速查找到该目标交易数据对应的存储设备,可实现对目标交易数据的快速转发,从而可有效提升对目标交易数据的处理效率。
请参见图2,是本发明实施例提出的一种数据处理方法的示意流程图,该方法可由区块链网络中的第一设备执行,该第一设备是所述区块链网络中的任一设备,如图2所示,该方法可包括:
S201,获取目标交易数据的目标哈希值,以及获取所述第一设备的存储哈希区间,所述存储哈希区间包括多个哈希值。
在一个实施例中,客户端在生成目标交易数据后,可将该目标交易数据上传到区块链网络中进行存储,以保证目标交易数据的真实性,在具体实现中,客户端可将该目标交易数据发送到区块链网络中的任一设备,如第一设备中,该第一设备在接收到目标交易数据后,为了确定该第一设备是否能存储该目标交易数据,可先对该接收到的目标交易数据进行哈希计算,以确定出该目标交易数据对应的目标哈希值,同时,所述第一设备可获取所述第一设备的存储哈希区间,并将该目标哈希值和该第一设备的存储哈希区间进行对比,以确定该目标哈希值是否属于该存储哈希区间,并可基于该第一设备对该目标哈希值是否属于该存储哈希区间的判断,确定该第一设备是否可存储该目标交易数据。其中,该第一设备可采用循环一致性哈希算法对该目标交易数据进行哈希计算,并确定出对应的目标哈希值。
在一个实施例中,所述第一设备可在接收到客户端发送的目标交易数据后,立即对该目标交易进行哈希计算,并基于所述第一设备的存储哈希区间确定是否可在所述第一设备中存储该目标交易数据;或者,所述第一设备还可在接收到客户端发送的目标交易数据后,将该目标交易数据预存到第一设备的缓存区中,并在所述第一设备空闲时,再从缓存区中获取目标交易数据,并计算该目标交易数据的目标哈希值,该第一设备还可按照预设的时间间隔,从缓存中获取目标交易数据,以确定是否将该目标交易数据直接存储到第一设备中。
在一个实施例中,该第一设备的存储哈希区间可基于该第一设备的相邻设备的哈希值确定的,其中,设备的哈希值是对设备的设备标识进行哈希计算得到的,在一个实施例中,可采用一致性哈希算法对设备的设备标识进行哈希计算,以确定对应的哈希值,该一致性哈希算法可对一个在0~223的环形的哈希空间进行哈希计算,对于区块链网络中的设备,可通过对该设备的设备标识进行哈希计算,以将设备的设备标识哈希到这个哈希空间所对应的环上,在一个实施例中,在采用一致性哈希算法将区块链网络中的各个设备哈希到该哈希空间所对应的环上后,该各个设备在该哈希空间所对应的环上是按照哈希值由大到小的顺序进行排列的。如图3a所示,在将设备的设备标识哈希到环上之后,各设备在哈希到该哈希空间对应的环上后,按照哈希值从0~223-1的大小依次排列,且每个设备(如第一设备)可对应维护一段存储哈希区间,该存储哈希区间可基于该设备的上一个相邻设备,或者下一个相邻设备确定,在一个实施例中,上一个相邻设备即是哈希值小于该第一设备的哈希值的前任设备,而下一个相邻设备,即是哈希值大于该第一设备的继任设备。其中,设备的设备标识包括该设备的域名,存储地址等。
在一个实施例中,如图3a所示,该哈希环上包括设备A,设备B,设备C和设备D,若该第一设备为设备B,则设备B可基于该设备B的前任设备(即设备A)确定出设备B的存储哈希区间,其中,该第一设备的存储哈希区间是大于设备A的哈希值,且小于等于设备B的哈希值的区间。或者,该设备B也可基于继任设备(即设备C),确定出设备B的存储哈希区间,其中,该设备B的存储哈希区间则也可以:大于设备B的哈希值且小于等于设备C的哈希值的区间。
在一个实施例中,该第一设备的存储哈希区间中最小的哈希值为第一哈希阈值,最大的哈希值为第二哈希阈值,则该第一设备的存储区间为大于第一哈希阈值,且小于或等于第二哈希阈值的区间,若该第一设备的存储哈希区间是根据该第一设备的继任设备(如上述的设备B根据对应的继任设备C)的哈希值确定的,可以理解的是,第一设备的存储哈希区间中最小的哈希值(即第一哈希阈值为)该第一设备的哈希值,该存储区间中最大的哈希值(即第二哈希阈值)为第一设备的继任设备的哈希值;或者,如果该第一设备的存储哈希区间是根据该第一设备的前任设备(如上述的设备B基于前任设备A)的哈希值确定的,那么该第一设备对应的存储哈希区间中最小的哈希值(即第一哈希阈值)为该第一设备的前任设备的哈希值,该存储区间中最大的哈希值(即第二哈希阈值)为该第一设备的哈希值。
在第一设备判断目标交易数据的目标哈希值是否属于该存储哈希区间时,可将该目标哈希值和该存储哈希区间进行对比,以确定该目标哈希值是否属于该存储哈希区间,在具体实现中,该第一设备可将该目标哈希值分别和第一哈希阈值,以及第二哈希阈值进行对比。若第一设备确定该目标哈希值大于所述第一哈希阈值,且小于等于所述第二哈希阈值,可确定该目标哈希值属于该存储哈希区间,而如果该目标哈希值小于等于所述第一哈希阈值,则确定该目标哈希值不属于该存储哈希区间,或者,如果确定该目标哈希值大于所述第二哈希阈值,则确定该目标哈希值不属于该存储哈希区间。举例来说,若第一设备的存储哈希区间为<20~40>,接收到的目标交易数据的目标哈希值若为38,则确定该目标哈希值属于该第一设备的存储哈希区间,而如果该目标交易数据的目标哈希值为42,则确定该目标哈希值不属于该存储哈希区间。
在一个实施例中,若第一设备确定该目标哈希值属于该存储哈希区间,则将该目标交易数据存储在第一设备中;而如果第一设备确定该目标哈希值不属于该存储哈希区间,则将该目标交易数据转发到第二设备,使得第二设备继续判断是否将该目标交易数据存储在该第二设备中,即转而执行步骤S202。
S202,若所述目标哈希值不属于所述存储哈希区间,则获取所述第一设备的哈希值及所述第一设备的路由信息。
在一个实施例中,第一设备在确定目标交易数据的目标哈希值不属于所述第一设备的存储哈希区间时,为了将该目标交易数据存储到区块链网络中,可将该目标交易数据,以及对应的目标哈希值转发到区块链网络的其他设备(如第二设备)中,使得其他设备可基于该目标哈希值存储该目标交易数据,或者,其他设备也可将该目标交易数据以及对应的目标哈希值进行再次转发。在一个实施例中,所述第一设备可基于路由信息将目标交易数据以及目标交易数据的目标哈希值进行转发,在具体实现中,所述第一设备可先获取所述第一设备的哈希值,以及所述第一设备的路由信息,其中,所述路由信息用于记录所述路由设备集中的各个路由设备的哈希值。
在一个实施例中,所述第一设备获取到的路由信息可以是路由表,如图3b所示,若所述第一设备为图3b中80对应的设备,则该设备80对应的路由信息可以是图3b中由30标记的路由表,该路由表记录有该第一设备对应路由设备的哈希值,如图3b中由301标记多个哈希值,每个哈希值与第一设备对应的路由设备相对应,如图3b中的哈希值96,用于指示第一设备对应的哈希值为96的路由设备,此外,该路由信息还包括哈希位置,该哈希位置如图3b中由302标记的所示,和由301标记的路由设备的哈希值相对应,如图3b中由302标记的哈希位置中的0号哈希位置,与哈希值96对应的路由设备相对应,在一个实施例中,路由信息中的哈希位置的取值是根据区块链网络中的设备总数确定的,如图3b所示,由于该区块链网络中的设备数量为6,则该路由信息中哈希位置的取值则为0~6,或者,该区块链网络中的设备数量为6时,该路由信息中哈希位置的取值也可为0~5或者0~3等,可以理解的是,路由信息中哈希位置的对应的最大取值是小于或等于该区块链网络中的设备总数的。
在一个实施例中,该路由信息中哈希位置可由i表示,基于该路由信息中的哈希位置,以及第一设备的哈希值,可确定出每个哈希位置分别在哈希空间中所指示的哈希值,其中,可根据式2.1确定出每个哈希位置所指示的哈希值:
n+2i 式2.1
其中,i为路由信息指示的第i个哈希位置(或i号哈希位置),i为大于或等于0的整数;n为第一设备的哈希值,如为80,所以,如图3b中的表30所示的路由信息,该路由信息中的0号哈希位置所指示的哈希值为80+20,即指示的是哈希空间中为81的哈希值。可以理解的是,该哈希位置还可用于指示路由设备集中对应路由设备的哈希值与第一设备的哈希值之间的哈希差值,如0号哈希位置所指示的哈希值80+20与第一设备的哈希值80之间的哈希差值为20=1,1号哈希位置所指示的哈希值80+21与第一设备的哈希值80之间的哈希差值为21=2,可基于哈希位置快速确定出与第一设备之间的哈希差值。
在一个实施例中,在哈希位置所指示的哈希值超过哈希空间对应的最大哈希值时,为了保证将哈希值位置所指示的哈希值映射到该哈希空间对应的哈希环上,还可采用式2.2进行计算每个哈希位置指示的哈希值:
(n+2i)mod2m 式2.2
其中,i为路由信息中的第i个哈希位置,m为哈希空间的散列值的比特数,如在哈希空间为128位时,m取值则为7,也就是说,取值为0~27的哈希值可映射到该哈希环上,而超过27取值的哈希值则无法映射到该哈希环,为了将哈希位置指示的哈希值映射到该哈希环上,若基于式2.1计算出的该哈希位置所指示的哈希值超过了哈希空间(即该哈希位置指示的哈希值超过27),则可采用式2.2重新计算该哈希位置对应的哈希值,以将该哈希位置对应的哈希值映射到哈希环上。举例来说,如图3b中由302标记的哈希位置中的6号哈希位置,若采用式2.1计算得到的哈希值为80+26=144,由于哈希空间维护的哈希环对应的最大哈希值为128,则说明6号哈希位置指示的哈希值超过了该哈希空间,即不能在哈希空间对应的哈希环上找到6号哈希位置所指示的哈希值,那么则可采用式2.2计算该哈希位置对应哈希值,以将该6号哈希位置指示的哈希值映射到哈希环上,其中,在采用式2.2计算该6号哈希位置对应的哈希值则为:(80+26)mod27=20,所以,6号哈希位置对应在哈希环上的哈希值为16。
在一个实施例中,由于哈希空间对应的哈希环上仅有部分哈希值和区块链网络中的设备相对应,而其余的哈希值只用于指示一个哈希位置,而不存在与之对应的设备,如图3b所示,哈希环上仅有为80、96、112、20、32和45的哈希值和区块链网络中的设备相对应,而如1、10、35、88等哈希值是没有对应的设备的,但是由于区块链网络中的设备维护有一段对应的存储哈希区间,属于该存储区间的哈希值对应的交易数据由维护该存储哈希区间的设备进行存储,因此,与哈希位置所指示的哈希值相对应的路由设备的哈希值,是维护该哈希位置所指示的哈希值所在的存储哈希区间的路由设备的哈希值。举例来说,如图3b中的0号哈希位置对应的哈希值为80+20=81,则与0号哈希位置对应的哈希值81所对应的路由设备的哈希值为96,因为哈希值为96的路由设备所维护的存储哈希区间为80~96,而81属于该存储哈希区间,如图3b所示,路由信息中记录的0号哈希位置和哈希值为96的路由设备相对应。可以理解的是,由于区块链网络中的每个设备维护有一段存储哈希区间,所以,在路由信息中的每个路由设备的哈希值可和多个哈希位置相对应,如图3b中的哈希值96,与0号哈希位置,1号哈希位置,2号哈希位置,3号哈希位置,以及4号哈希位置相对应。
在第一设备确定目标交易数据的目标哈希值不属于该存储哈希区间,可获取该第一设备的哈希值和第一设备的路由信息,以基于目标交易数据的目标哈希值,该第一设备的哈希值和第一设备的路由信息,确定出第二设备,即转而执行步骤S203。
S203,根据所述目标哈希值、所述第一设备的哈希值和所述路由信息从所述路由设备集中确定出第二设备,并将所述目标交易数据发送到所述第二设备。
在一个实施例中,第一设备在确定出第一设备的哈希值,以及路由信息后,可基于目标交易数据的目标哈希值,第一设备的哈希值,以及该路由信息从第一设备的多个路由设备中确定出第二设备。在具体实现中,若所述第一设备获取到的目标哈希值为90,所述第一设备的哈希值为80,则所述第一设备可先确定出第一设备的哈希值和目标哈希值之间的基准哈希差值为10,而该路由信息中3号哈希位置与第一设备的哈希值之间的哈希值差值为23=8,4号哈希位置与第一设备的哈希值之间的哈希差值为24=16,而该基准哈希差值介于该3号哈希差值指示的与第一设备的哈希值之间的哈希差值8,与和4号哈希差值指示的与第一设备的哈希值之间的哈希差值16之间,所以所述第一设备从路由信息中确定出该目标哈希值对应的目标哈希位置为3号哈希位置或4号哈希位置,而由于与3号哈希位置和4号哈希位置所指示的哈希值相关联的路由设备的哈希值都为96,则将该哈希值为96的路由设备确定为第二设备。
在一个实施例中,若第一设备获取到的目标哈希值为100,由于第一设备的哈希值为80,则该第一设备对应的哈希值80和目标哈希值100之间的基准哈希差值为20,而该第一设备的路由信息中的4号哈希位置与第一设备的哈希值之间的哈希差值为24=16,5号哈希位置与第一设备的哈希值之间的哈希值差值为25=32,而基准哈希差值介于16和32之间,由于与4号哈希位置所指示的哈希值和与5号哈希位置所指示的哈希值不同,其中,4号哈希位置所指示的哈希值96,而5号哈希位置所指示的哈希值为112,所述第一设备在确定基准哈希差值对应的目标哈希位置时,可将较大哈希位置作为该基准哈希差值对应的目标哈希位置,即基准哈希差值20对应的目标哈希位置为5号哈希位置,那么对应的第二设备即为5号哈西位置对应哈希值关联的路由设备,即哈希值112对应的路由设备。
在一个实施例中,第一设备在确定出第二设备后,可将目标交易数据转发到第二设备,以在第二设备中存储该目标交易数据,或者,该第一设备还可同时将目标交易数据以及该目标交易数据对应的目标哈希值转发到第二设备中,以在第二设备中存储该目标交易数据。其中,若第二设备在接收到目标交易数据,并确定出目标交易数据对应的目标哈希值后,若确定该第二设备也不能存储该目标交易数据,则该第二设备则可基于该第二设备的路由信息将该目标交易数据继续转发,直至存储目标交易数据。
在本发明实施例中,第一设备在获取到目标交易数据和对应的目标哈希值后,以及第一设备的存储哈希区间后,可判断该目标哈希值是否属于该存储哈希区间,若确定属于,则将目标交易数据存储到第一设备中,而如果该第一设备确定该目标哈希值不属于该存储哈希区间,则可进一步获取第一设备的哈希值,以及第一设备的路由信息,从而可根据该目标哈希值,该第一设备的哈希值,以及该路由信息,从该第一设备的路由设备中确定出第二设备,并将目标交易数据转发到第二设备,使得第一设备可快速确定出需要转发的设备,从而可有效减少对目标交易数据的转发次数,从而可提升对目标交易数据的存储效率。
请参见图4,是本发明另一实施例提出的一种数据处理方法的示意流程图,该方法可由区块链网络中的第一设备执行,该第一设备是所述区块链网络中的任一设备,如图4所示,该方法可包括:
S401,获取目标交易数据的目标哈希值,以及获取所述第一设备的存储哈希区间,所述存储哈希区间包括多个哈希值。
在一个实施中,步骤S401的具体实施方式可参见上述实施例中步骤S201的具体实施方式,在此不再赘述。
S402,若所述目标哈希值不属于所述存储哈希区间,则获取所述区块链网络中的设备总数。
S403,若所述设备总数小于或等于数量阈值,则获取所述第一设备的哈希值及所述第一设备的路由信息。
在一个实施例中,在第一设备确定目标哈希值不属于该存储哈希区间时,可先获取区块链网络中的设备总数,并在该设备总数小于等于预设数量阈值时,获取第一设备的哈希值,由于在设备总数较小时,第一节点设备所维护的路由信息包括的哈希位置较少,以及记录的第一设备对应路由设备的哈希值也较少,所以,在设备数量较少的情况下,该第一设备所维护的路由信息的信息量较小。基于信息量较小的路由信息,该第一设备可快速查询路由信息以确定出转发待转发的第二设备,而在在区块链网络中的设备数较多时,由于第一设备需要维护的路由信息较大,所以在区块链网络中的设备较多时,第一设备在从路由信息中查找对应的第二设备所需要消耗的时间较长,且加大了第一设备对路由信息进行维护的压力,所以,第一设备可在区块链网络中设备总数大于数量阈值时,直接将所述目标交易数据转发到所述区块链网络中除所述第一设备之外的任一设备,在一个实施例中,所述数量阈值例如可以是10或者8等。
在一个实施例中,所述第一设备获取的路由信息包括多个哈希位置和该第一设备对应路由设备的哈希值,所述哈希位置可和该第一设备对应的一个路由设备的哈希值相对应,如图3b所示的0哈西位置和哈希值为96的路由设备相对应,而由于区块链网络中的每个设备都维护有一段存储哈希区间,所以,该路由信息中记录的一个路由设备的哈希值可和一个或多个哈希位置相对应,如图3b中哈希值为112的路由设备与5号哈希位置相对应,而哈希值为96的路由设备可分别和0号、1号、2号、3号和4号哈希位置相对应。可以理解的是,该哈希位置可指示路由设备集中对应路由设备的哈希值与第一设备的哈希值之间的哈希差值,如0号哈希位置指示的哈希值为96的路由设备和第一设备的哈希值之间的哈希差值为20=1。此外,该路由信息中的哈希位置的取值是根据区块链网络中的设备总数确定的,图3b所示的区块链网络中的设备总数为6时,哈希位置的取值范围为0~k,其中,k为大于0且小于或等于6的整数。
在一个实施例中,第一设备在获取到第一设备的路由信息后,则可基于目标哈希值,第一设备的哈希值和路由信息从路由设备集中确定出第二设备,即转而执行步骤S404。
S404,根据所述目标哈希值、所述第一设备的哈希值和所述路由信息从所述路由设备集中确定出第二设备,并将所述目标交易数据发送到所述第二设备。
在一个实施例中,第一设备在根据所述目标哈希值、所述第一设备的哈希值和所述路由信息从所述路由设备集中确定出第二设备时,可先计算所述目标哈希值和所述第一设备的哈希值之间的基准哈希差值;从而可从所述路由信息中确定出该基准哈希差值对应的目标哈希位置,并将该目标哈希位置关联的哈希值对应的路由设备确定为所述第二设备。或者,在所述第一设备从所述路由信息中确定出该基准哈希差值对应的目标哈希位置失败,即不能从路由信息中确定出基准哈希差值对应的目标哈希位置时,第一设备可获取所述路由信息中的最远哈希位置,并确定所述最远哈希指示的哈希值,可以理解的是,该最远哈希位置即是哈希位置i值中的最大值所标识的位置,如图3b中的路由信息,最远哈希位置即是6号哈希位置,该最远哈希位置所指示的哈希值为16,而该最远哈希位置所指示的哈希值所对应的路由设备为哈希值为20的路由设备,因此,第一设备确定出的第二设备为哈希值为20的设备。
在一个实施例中,在第一设备不能从路由信息中确定出基准哈希差值对应的目标哈希位置时,即是基准信息差值太大,超出该路由信息中最远哈希位置所指示的路由设备的哈希值与所述第一设备的哈希值之间的哈希差值的情况,如第一设备获取到的目标交易数据的目标哈希值为45时,若该第一设备的哈希值为80,哈希区间为128,则目标哈希值和第一设备的哈希值之间的基准哈希差值为45-80+128=93,而最远哈希位置(即6号哈希位置)和第一设备的哈希值之间的哈希差值为26=64,所以第一设备是不能在路由信息中确定出基于基准哈希差值对应的目标哈希位置的,所以,第一设备则可将最远哈希位置指示的哈希值对应的路由设备,即哈希值为20的路由设备作为第二设备,并将目标交易数据和目标哈希值转发给第二设备,该第二设备在接收到该目标交易数据和目标哈希值后,则可基于该第二设备的路由信息将该目标交易数据和目标哈希值进行转发。
在本发明实施例中,第一设备在获取到目标交易数据,并确定出目标交易数据的目标哈希值后,可基于第一设备的存储哈希区间判断该目标哈希值是否属于该存储哈希区间,从而确定出第一设备是否能存储该目标交易数据,若第一设备确定该目标哈希值属于该存储哈希区间,则说明该第一设备可直接存储目标交易数据,从而直接将目标交易进行存储,而如果确定该目标交易数据不属于该存储哈希区间,该第一设备则可在区块链网络中设备数量较少时,获取第一设备的路由信息以及该第一设备的哈希值,从而可基于第一设备的路由信息,目标哈希值,以及第一设备的哈希值,确定出第二设备,可降低目标交易数据在区块链网络的设备之间进行转发的次数,从而可有效提升目标交易数据上传到区块链网络的效率,也可提升对第一设备的处理资源利用率。
基于上述数据处理方法实施例的描述,本发明实施例还提出了一种数据处理装置,该数据处理装置可以是运行于上述区块链网络的第一设备中的一个计算机程序(包括程序代码)。该数据处理装置可用于执行如图2和图4所述的数据处理方法,请参见图5,该数据处理装置可包括:获取单元501,以及确定单元502。
获取单元501,用于获取目标交易数据的目标哈希值,以及获取所述第一设备的存储哈希区间,所述存储哈希区间包括多个哈希值;
所述获取单元501,还用于若所述目标哈希值不属于所述存储哈希区间,则获取所述第一设备的哈希值及所述第一设备的路由信息,所述路由信息用于记录所述路由设备集中的各个路由设备的哈希值;
确定单元502,用于根据所述目标哈希值、所述第一设备的哈希值和所述路由信息从所述路由设备集中确定出第二设备,并将所述目标交易数据发送到所述第二设备。
在一个实施例中,所述路由信息包括多个哈希位置,所述路由设备集中的各个路由设备的哈希值分别与一个或多个哈希位置相关联;
所述哈希位置用于指示所述路由设备集中的对应路由设备的哈希值与所述第一设备的哈希值之间的哈希差值;
所述路由信息中的哈希位置的取值是根据所述区块链网络中的设备总数确定的。
在一个实施例中,所述区块链网络中的各个设备按照哈希值由小至大的顺序排列,所述哈希值是对所述各个设备的设备标识进行哈希计算得到的;
所述获取单元501,具体用于:
获取所述第一设备的前任设备的哈希值,所述前任设备与所述第一设备相邻,且哈希值小于所述第一设备的哈希值;
将大于所述前任设备的哈希值且小于等于所述第一设备的哈希值之间的区间,确定为所述第一设备的存储哈希区间。
在一个实施例中,所述确定单元502,具体用于:
计算所述目标哈希值和所述第一设备的哈希值之间的基准哈希差值;
从所述路由信息中确定出该基准哈希差值对应的目标哈希位置,并将该目标哈希位置关联的哈希值对应的路由设备确定为所述第二设备。
在一个实施例中,所述获取单元501,还用于若从所述路由信息中确定出该基准哈希差值对应的目标哈希位置失败,则获取所述路由信息中的最远哈希位置,并确定所述最远哈希位置指示的哈希值;
所述确定单元502,还用于将所述与所述最远哈希位置指示的哈希值对应的路由设备确定为所述第二设备。
在一个实施例中,所述装置还包括:执行单元503。
所述获取单元501,还用于获取所述区块链网络中的设备总数;
执行单元503,用于若所述设备总数小于或等于数量阈值,则触发执行获取所述第一设备的路由信息的步骤。
在一个实施例中,所述装置还包括:转发单元504。
转发单元504,用于若所述设备总数大于所述数量阈值,则将所述目标交易数据转发到所述区块链网络中除所述第一设备之外的任一设备。
在本发明实施例中,获取单元501在获取到目标交易数据和对应的目标哈希值后,以及第一设备的存储哈希区间后,判断单元502可判断该目标哈希值是否属于该存储哈希区间,若确定单元502确定属于,则将目标交易数据存储到第一设备中,而如果该确定单元502确定该目标哈希值不属于该存储哈希区间,则获取单元501进一步获取第一设备的哈希值,以及第一设备的路由信息,从而确定单元502可根据该目标哈希值,该第以设备的哈希值,以及该路由信息,确定出第二设备,并将目标交易数据转发到第二设备,使得可快速确定出需要转发的设备,并从而可有效减少对目标交易数据转发次数,可提升对目标交易数据的存储效率。
请参见图6,是本发明实施例提供的一种第一设备的结构示意性框图。如图6所示的本实施例中的单元可包括:一个或多个处理器601;一个或多个输入单元602,一个或多个输出单元603和存储器604。上述处理器601、输入单元602、输出单元603和存储器604通过总线605连接。存储器604用于存储计算机程序,该计算机程序包括程序指令,处理器601用于执行该存储器604存储的程序指令。
该存储器604可以包括易失性存储器(volatile memory),如随机存取存储器(random-access memory,RAM);存储器604也可以包括非易失性存储器(non-volatilememory),如快闪存储器(flash memory),固态硬盘(solid-state drive,SSD)等;存储器604还可以包括上述种类的存储器的组合。
该处理器601可以是中央处理器(central processing unit,CPU)。该处理器601还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(application-specificintegrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)等。该PLD可以是现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)等。该处理器601也可以为上述结构的组合。
本发明实施例中,该存储器604用于存储计算机程序,该计算机程序包括程序指令,处理器601用于执行存储器604存储的程序指令,用来实现上述如图2和图3a中相应方法的步骤。
在一个实施例中,该处理器601被配置调用该程序指令,用于执行:
获取目标交易数据的目标哈希值,以及获取所述第一设备的存储哈希区间,所述存储哈希区间包括多个哈希值;
若所述目标哈希值不属于所述存储哈希区间,则获取所述第一设备的哈希值及所述第一设备的路由信息,所述路由信息用于记录所述路由设备集中的各个路由设备的哈希值;
根据所述目标哈希值、所述第一设备的哈希值和所述路由信息从所述路由设备集中确定出第二设备,并将所述目标交易数据发送到所述第二设备。
在一个实施例中,所述路由信息包括多个哈希位置,所述路由设备集中的各个路由设备的哈希值分别与一个或多个哈希位置相关联;
所述哈希位置用于指示所述路由设备集中的对应路由设备的哈希值与所述第一设备的哈希值之间的哈希差值;
所述路由信息中的哈希位置的取值是根据所述区块链网络中的设备总数确定的。
在一个实施例中,所述区块链网络中的各个设备按照哈希值由小至大的顺序排列,所述哈希值是对所述各个设备的设备标识进行哈希计算得到的;
在一个实施例中,该处理器601被配置调用该程序指令,用于执行:
获取所述第一设备的前任设备的哈希值,所述前任设备与所述第一设备相邻,且哈希值小于所述第一设备的哈希值;
将大于所述前任设备的哈希值且小于等于所述第一设备的哈希值之间的区间,确定为所述第一设备的存储哈希区间。
在一个实施例中,该处理器601被配置调用该程序指令,用于执行:
计算所述目标哈希值和所述第一设备的哈希值之间的基准哈希差值;
从所述路由信息中确定出该基准哈希差值对应的目标哈希位置,并将该目标哈希位置关联的哈希值对应的路由设备确定为所述第二设备。
在一个实施例中,该处理器601被配置调用该程序指令,用于执行:
若从所述路由信息中确定出该基准哈希差值对应的目标哈希位置失败,则获取所述路由信息中的最远哈希位置,并确定所述最远哈希位置指示的哈希值;
将所述最远哈希位置指示的哈希值对应的路由设备确定为所述第二设备。
在一个实施例中,该处理器601被配置调用该程序指令,用于执行:
获取所述区块链网络中的设备总数;
若所述设备总数小于或等于数量阈值,则触发执行获取所述第一设备的路由信息的步骤。
在一个实施例中,该处理器601被配置调用该程序指令,用于执行:
若所述设备总数大于所述数量阈值,则将所述目标交易数据转发到所述区块链网络中除所述第一设备之外的任一设备。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明的局部实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或局部流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。

Claims (9)

1.一种数据处理方法,其特征在于,所述数据处理方法由区块链网络中的第一设备执行,所述区块链网络还包括所述第一设备的路由设备集,所述路由设备集中包括所述第一设备对应的至少一个路由设备,所述方法包括:
获取目标交易数据的目标哈希值,以及获取所述第一设备的存储哈希区间,所述存储哈希区间包括多个哈希值;
若所述目标哈希值不属于所述存储哈希区间,则获取所述第一设备的哈希值及所述第一设备的路由信息,所述路由信息用于记录所述路由设备集中的各个路由设备的哈希值和对应的哈希位置;
计算所述目标哈希值和所述第一设备的哈希值之间的基准哈希差值,并从多个哈希位置中确定出基准哈希位置对应的目标哈希位置,并将所述目标哈希位置关联的哈希值对应的路由设备确定为第二设备,并将所述目标交易数据发送到所述第二设备;
若确定所述目标哈希位置失败,则将所述路由信息中最远哈希位置指示的哈希值所对应的路由设备确定为所述第二设备,并将所述目标交易数据发送到所述第二设备。
2.根据权利要求1所述的方法,其特征在于,所述路由设备集中的各个路由设备的哈希值分别与一个或多个哈希位置相关联;
所述哈希位置用于指示所述路由设备集中的对应路由设备的哈希值与所述第一设备的哈希值之间的哈希差值;
所述路由信息中的哈希位置的取值是根据所述区块链网络中的设备总数确定的。
3.根据权利要求2所述的方法,其特征在于,所述区块链网络中的各个设备按照哈希值由小至大的顺序排列,所述哈希值是对所述各个设备的设备标识进行哈希计算得到的;
所述获取所述第一设备的存储哈希区间,包括:
获取所述第一设备的前任设备的哈希值,所述前任设备与所述第一设备相邻,且哈希值小于所述第一设备的哈希值;
将大于所述前任设备的哈希值且小于等于所述第一设备的哈希值之间的区间,确定为所述第一设备的存储哈希区间。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若从所述路由信息中确定出该基准哈希差值对应的目标哈希位置失败,则获取所述路由信息中的最远哈希位置,并确定所述最远哈希位置指示的哈希值;
将所述最远哈希位置指示的哈希值对应的路由设备确定为所述第二设备。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述区块链网络中的设备总数;
若所述设备总数小于或等于数量阈值,则触发执行获取所述第一设备的路由信息的步骤。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
若所述设备总数大于所述数量阈值,则将所述目标交易数据转发到所述区块链网络中除所述第一设备之外的任一设备。
7.一种数据处理装置,其特征在于,所述数据处理装置内置于由区块链网络中的第一设备中,所述区块链网络还包括所述第一设备的路由设备集,所述路由设备集中包括所述第一设备对应的至少一个路由设备,所述装置包括:
获取单元,用于获取目标交易数据的目标哈希值,以及获取所述第一设备的存储哈希区间,所述存储哈希区间包括多个哈希值;
所述获取单元,还用于若所述目标哈希值不属于所述存储哈希区间,则获取所述第一设备的哈希值及所述第一设备的路由信息,所述路由信息用于记录所述路由设备集中的各个路由设备的哈希值和对应的哈希位置;
确定单元,用于计算所述目标哈希值和所述第一设备的哈希值之间的基准哈希差值,并从多个哈希位置中确定出基准哈希位置对应的目标哈希位置,并将所述目标哈希位置关联的哈希值对应的路由设备确定为第二设备,并将所述目标交易数据发送到所述第二设备;
若确定所述目标哈希位置失败,则将所述路由信息中最远哈希位置指示的哈希值所对应的路由设备确定为所述第二设备,并将所述目标交易数据发送到所述第二设备。
8.一种第一设备,其特征在于,包括处理器、存储器和通信接口,所述处理器、所述存储器和所述通信接口相互连接,其中,所述存储器用于存储计算机程序指令,所述处理器被配置用于执行所述程序指令,实现如权利要求1-6任一项所述的方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-6任一项所述的方法。
CN202010310574.4A 2020-04-17 2020-04-17 数据处理方法、装置、第一设备及存储介质 Active CN111506658B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010310574.4A CN111506658B (zh) 2020-04-17 2020-04-17 数据处理方法、装置、第一设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010310574.4A CN111506658B (zh) 2020-04-17 2020-04-17 数据处理方法、装置、第一设备及存储介质

Publications (2)

Publication Number Publication Date
CN111506658A CN111506658A (zh) 2020-08-07
CN111506658B true CN111506658B (zh) 2021-09-28

Family

ID=71869406

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010310574.4A Active CN111506658B (zh) 2020-04-17 2020-04-17 数据处理方法、装置、第一设备及存储介质

Country Status (1)

Country Link
CN (1) CN111506658B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106407795A (zh) * 2016-09-05 2017-02-15 北京众享比特科技有限公司 数据存在认证系统、认证方法及验证方法
CN110190968A (zh) * 2019-06-03 2019-08-30 魏靖 区块链大数据安全处理系统及方法
CN110599346A (zh) * 2019-09-20 2019-12-20 腾讯科技(深圳)有限公司 一种区块链信息获取方法及相关设备
CN110737668A (zh) * 2019-12-17 2020-01-31 腾讯科技(深圳)有限公司 数据存储方法、数据读取方法、相关设备及介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109905351B (zh) * 2017-12-08 2021-02-26 北京京东尚科信息技术有限公司 存储数据的方法、装置、服务器和计算机可读存储介质
US10911240B2 (en) * 2018-07-23 2021-02-02 Hitachi, Ltd. Off-chain blockchain storage with validation
CN110235162B (zh) * 2019-04-30 2023-10-31 厦门特华荣商贸有限公司 区块链系统数据处理方法和区块的生成方法
CN110602239B (zh) * 2019-09-20 2023-09-19 腾讯科技(深圳)有限公司 一种区块链信息存储方法及相关设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106407795A (zh) * 2016-09-05 2017-02-15 北京众享比特科技有限公司 数据存在认证系统、认证方法及验证方法
CN110190968A (zh) * 2019-06-03 2019-08-30 魏靖 区块链大数据安全处理系统及方法
CN110599346A (zh) * 2019-09-20 2019-12-20 腾讯科技(深圳)有限公司 一种区块链信息获取方法及相关设备
CN110737668A (zh) * 2019-12-17 2020-01-31 腾讯科技(深圳)有限公司 数据存储方法、数据读取方法、相关设备及介质

Also Published As

Publication number Publication date
CN111506658A (zh) 2020-08-07

Similar Documents

Publication Publication Date Title
CN110737668B (zh) 数据存储方法、数据读取方法、相关设备及介质
CN109117275B (zh) 基于数据分片的对账方法、装置、计算机设备及存储介质
CN108259328B (zh) 报文转发方法及装置
EP3780438B1 (en) Data transmission method and related device
CN104572727A (zh) 一种数据查询方法及装置
CN109032803B (zh) 数据处理方法和装置、客户端
CN111723073B (zh) 数据存储处理方法、装置、处理系统以及存储介质
CN113438172B (zh) 基于多级节点网络的数据传输方法和装置
US20100325213A1 (en) Multi-tier, multi-state lookup
WO2020024446A1 (zh) 数据的存储方法及装置、存储介质、计算机设备
CN111158892B (zh) 一种任务队列生成方法、装置及设备
CN112948313A (zh) 一种会话数据的管理方法和装置
US20160203149A1 (en) File scanning method and apparatus related application
CN114969061A (zh) 一种工业时序数据分布式存储方法、装置
CN113491092A (zh) 对用于云报告的客户端mac地址进行匿名化的方法
CN111507695B (zh) 数据处理方法、装置、节点设备及存储介质
CN112165505B (zh) 去中心化的数据处理方法、电子装置和存储介质
CN111506658B (zh) 数据处理方法、装置、第一设备及存储介质
JP6233846B2 (ja) 可変長ノンスの生成
WO2019241926A1 (zh) 访问控制列表的管理方法及装置
CN107870925B (zh) 一种字符串过滤方法和相关装置
CN107800738B (zh) 数据更新的方法与装置
CN110046040B (zh) 分布式任务处理方法及系统和存储介质
WO2021072574A1 (en) Load balancing
CN109408241B (zh) 负载均衡方法、装置、设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40027379

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant