CN112948438B - 数据查询方法、计算机设备和存储介质 - Google Patents

数据查询方法、计算机设备和存储介质 Download PDF

Info

Publication number
CN112948438B
CN112948438B CN202110245524.7A CN202110245524A CN112948438B CN 112948438 B CN112948438 B CN 112948438B CN 202110245524 A CN202110245524 A CN 202110245524A CN 112948438 B CN112948438 B CN 112948438B
Authority
CN
China
Prior art keywords
data
node
generating
bits
geographic
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
CN202110245524.7A
Other languages
English (en)
Other versions
CN112948438A (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.)
Hangzhou Fuzamei Technology Co Ltd
Original Assignee
Hangzhou Fuzamei 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 Hangzhou Fuzamei Technology Co Ltd filed Critical Hangzhou Fuzamei Technology Co Ltd
Priority to CN202110245524.7A priority Critical patent/CN112948438B/zh
Publication of CN112948438A publication Critical patent/CN112948438A/zh
Application granted granted Critical
Publication of CN112948438B publication Critical patent/CN112948438B/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/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2471Distributed queries
    • 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/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24552Database cache management
    • 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/29Geographical information databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Mathematical Physics (AREA)
  • Fuzzy Systems (AREA)
  • Remote Sensing (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种数据查询方法、计算机设备和存储介质,该方法包括:响应于查询第一区块数据,根据第一区块数据所属的第一归档数据生成第一数据;根据第一数据的前第一数量位生成第二数据;生成包括第一数据、第二数据的数据查询请求信息;根据第二数据、预配置的节点查找方法找到若干第一节点;向各第一节点发送数据查询请求信息;在接收到第一归档数据时,根据第一归档数据查询第一区块数据;在未接收到第一归档数据时,根据第一数据的前第二数量位重新生成第二数据,并返回生成包括第一数据、第二数据的数据查询请求信息。本申请使得各节点的负载更为均衡。

Description

数据查询方法、计算机设备和存储介质
技术领域
本申请涉及区块链技术领域,具体涉及一种数据查询方法、计算机设备和存储介质。
背景技术
在现有技术中,区块链网络与dht进行结合以实现分布式的区块数据存储。由于dht中逻辑距离接近的节点拥有相似的路由表,进而导致对于相同数据的查询,总是会命中相同的几个节点。比如有一份数据data1保存在node1~node10的10个节点上。由于kad原理,查询特定数据的时候,无论路由请求是从何处发起,最终总是会路由到这个data1路由空间的附近,而又由于逻辑距离相近的节点的路由表的相似性,该路由总是会优先命中同一个节点。
上述机制将导致总有一个节点的负载远高于其他节点。
发明内容
鉴于现有技术中的上述缺陷或不足,期望提供一种负载均衡的数据查询方法、计算机设备和存储介质。
第一方面,本发明提供一种数据查询方法,包括:
响应于查询第一区块数据,根据第一区块数据所属的第一归档数据生成第一数据;
根据第一数据的前第一数量位生成第二数据;
生成包括第一数据、第二数据的数据查询请求信息;
根据第二数据、预配置的节点查找方法找到若干第一节点;
向各第一节点发送数据查询请求信息,以供:
在本地查询是否存储有第一数据:
是,则返回第一归档数据;
在接收到第一归档数据时,根据第一归档数据查询第一区块数据;
在未接收到第一归档数据时,根据第一数据的前第二数量位重新生成第二数据,并返回生成包括第一数据、第二数据的数据查询请求信息;其中,第二数量大于第一数量。
第二方面,本发明还提供一种设备,包括一个或多个处理器和存储器,其中存储器包含可由该一个或多个处理器执行的指令以使得该一个或多个处理器执行根据本发明各实施例提供的数据查询方法。
第三方面,本发明还提供一种存储有计算机程序的存储介质,该计算机程序使计算机执行根据本发明各实施例提供的数据查询方法。
本发明诸多实施例提供的数据查询方法、计算机设备和存储介质通过响应于查询第一区块数据,根据第一区块数据所属的第一归档数据生成第一数据;根据第一数据的前第一数量位生成第二数据;生成包括第一数据、第二数据的数据查询请求信息;根据第二数据、预配置的节点查找方法找到若干第一节点;向各第一节点发送数据查询请求信息;在接收到第一归档数据时,根据第一归档数据查询第一区块数据;在未接收到第一归档数据时,根据第一数据的前第二数量位重新生成第二数据,并返回生成包括第一数据、第二数据的数据查询请求信息的方法,使得各节点的负载更为均衡。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1为本发明一实施例提供的一种数据查询方法的流程图。
图2为图1所示方法的一种优选实施方式中步骤S14的流程图。
图3为图1所示方法的另一种优选实施方式中步骤S14的流程图。
图4为图1所示方法的一种优选实施方式的流程图。
图5为图4所示方法的一种优选实施方式的流程图。
图6为本发明一实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
在现有技术中,通常区块链节点以连续1000个区块生成规定数据,即,根据block(1)~block(1000)生成归档数据(1~1000)、根据block(1001)~block(2000)生成归档数据(1001~2000),依次类推。
假设区块链网络中有区块链节点node1~node1000;以node100为例,node100根据block(1)~block(1000)生成归档数据(1~1000),该归档数据(1~1000)并非永久化存储,node100根据归档数据(1~1000)生成chunkhash1,并分别计算chunkhash1与各区块链节点的节点ID的异或值以找到异或值最小的区块链节点,假设为node1;node100则将归档数据(1~1000)发送给node1,node1存储归档数据(1~1000);node1又会根据kad的动态平衡方法找到将归档数据(1~1000)广播给异或值最小的9个节点,例如为node2~node10,node2~node10也存储归档数据(1~1000);一段时间后,所有区块链节点的都删除block(1)~block(1000)。此时区块链网络中只有node1~node10存储有归档数据(1~1000)。
其它区块链节点或链外设备如果需要获取归档数据(1~1000)中的一些区块数据,则可以向node1~node10请求。其它区块链节点或链外设备假设要请求属于归档数据(1~1000)的某一区块数据,则根据归档数据(1~1000)计算出chunkhash1,分别计算chunkhash1与各区块链节点的节点ID的异或值以找到异或值最小的10个区块链节点,以找到存有chunkhash1的节点;由于node1是异或值最小的节点,则无论路由请求是从何处发起,该路由总是会优先命中node1。
现有技术的机制将导致在查询归档数据(1~1000)中的一些区块数据时,node1的负载远高于node2~node10。
图1为本发明一实施例提供的一种数据查询方法的流程图。如图1所示,在本实施例中,本发明提供一种数据查询方法,包括:
S13:响应于查询第一区块数据,根据第一区块数据所属的第一归档数据生成第一数据;
S14:根据第一数据的前第一数量位生成第二数据;
S15:生成包括第一数据、第二数据的数据查询请求信息;
S16:根据第二数据、预配置的节点查找方法找到若干第一节点;
S17:向各第一节点发送数据查询请求信息,以供:
在本地查询是否存储有第一数据:
是,则返回第一归档数据;
S181:在接收到第一归档数据时,根据第一归档数据查询第一区块数据;
S182:在未接收到第一归档数据时,根据第一数据的前第二数量位重新生成第二数据,并返回生成包括第一数据、第二数据的数据查询请求信息;其中,第二数量大于第一数量。
具体地,以S14包括“在当前设备为区块链节点时,根据第一数据的前第一数量位、当前节点的节点ID的后第三数量位生成第二数据;其中,第三数量为第一数据的位数与第一数量之差”,S16包括“分别计算第二数据与各区块链节点的节点ID的异或值以找到异或值最小的10个区块链节点”,第二数量为第一数量加十,第一数量为240为例;假设第一区块数据所属的第一归档数据为归档数据(1~1000),node1~node10存储有归档数据(1~1000);
节点执行步骤S13,响应于查询第一区块数据,根据归档数据(1~1000)生成chunkhash1;
节点执行步骤S14,根据chunkhash1的前240位、当前节点的节点ID的后16位生成chunkhash2;
节点执行步骤S15,生成包括chunkhash1、chunkhash2的数据查询请求信息;
节点执行步骤S16,分别计算chunkhash2与各区块链节点的节点ID的异或值以找到异或值最小的10个区块链节点,假设所找到的区块链节点为node20~node30;
节点执行步骤S17,向node20~node30发送数据查询请求信息;本领域技术人员应当理解,node20~node30并无先后排序,此处可以是节点向node20发送数据查询请求信息,若返回归档数据(1~1000)则结束,若无反馈则向node21发送数据查询请求信息,依次类推;也可以是同时向node20~node30发送数据查询请求信息;
由于node20~node30的本地未存储有第一数据,则结束;
节点执行步骤S182,根据chunkhash1的前250位、当前节点的节点ID的后6位重新生成chunkhash2;
节点返回步骤S15,生成包括chunkhash1、chunkhash2的数据查询请求信息;
节点执行步骤S16,分别计算chunkhash2与各区块链节点的节点ID的异或值以找到异或值最小的10个区块链节点,假设所找到的区块链节点为node5~node15;
节点执行步骤S17,向node5~node15发送数据查询请求信息;本领域技术人员应当理解,node5~node15并无先后排序,此处可以是节点向node5发送数据查询请求信息,若返回归档数据(1~1000)则结束,若无反馈则向node6发送数据查询请求信息,依次类推;也可以是同时向node5~node15发送数据查询请求信息;
由于node5~node10存储有第一数据,则节点将接收到所返回的归档数据(1~1000);
节点执行步骤S181,根据归档数据(1~1000)查询第一区块数据。
在更多实施例中,S14还可以根据实际需求进行配置,例如配置为,根据第一数据的前第一数量位、随机生成的第三数量位数据生成第二数据;其中,第三数量为第一数据的位数与第一数量之差;或,配置为,找到10个节点ID的第一数量位与第二数据的第一数量位相同的区块链节点;可实现相同的技术效果。本领域技术人员应当理解,此时使用本方法的可以是区块链节点,也可以是链外设备。
在更多实施例中,第二数量可以根据实际需求进行配置,例如配置为第一数量加上任一数值,可实现相同的技术效果。为进一步保证接收到第一归档数据,则可以缓存第二数量,并保证重新生成的第二数量与所缓存的第二数量的数值不同。
在更多实施例中,第一数量还可以根据实际需求进行配置,例如配置为245,可实现相同的技术效果。
在更多实施例中,根据第一数据的前第二数量位重新生成第二数据还可以根据实际需求进行配置,例如配置为根据预配置的数量位计算方法确定前第二数量位,根据第一数据的该前第二数量位重新生成第二数据;其中,预配置的数量位计算方法可以根据实际需求进行配置,例如配置为,在第一次计算时,第二数量等于第一数量加上任一数值;在除去第一次计算时,第二数量等于原第二数量加上任一数值;或配置为,在第一次计算时,第二数量等于第一数据的位数与第一数量之差的对半与第一数量之和,即240+(256-240)/2;在除去第一次计算时,第二数量等于第一数据的位数与原第二数量之差的对半与原第二数量之和,以第二次计算为例,即248+(256-248)/2;可实现相同的技术效果。
在上述机制中,在查询归档数据(1~1000)中的一些区块数据时,node1~node10都有可能被命中,负载更为均衡。
图2为图1所示方法的一种优选实施方式中步骤S14的流程图。如图2所示,在一优选实施例中,步骤S14包括:
S141:根据第一数据的前第一数量位、随机生成的第三数量位数据生成第二数据;其中,第三数量为第一数据的位数与第一数量之差。
上述实施例的数据查询原理可参考图1所示的方法,此处不再赘述。
图3为图1所示方法的另一种优选实施方式中步骤S14的流程图。如图3所示,在一优选实施例中,步骤S14包括:
S142:在当前设备为区块链节点时,根据第一数据的前第一数量位、当前节点的节点ID的后第三数量位生成第二数据;其中,第三数量为第一数据的位数与第一数量之差。
上述实施例的数据查询原理可参考图1所示的方法,此处不再赘述。
图4为图1所示方法的一种优选实施方式的流程图。如图4所示,在一优选实施例中,步骤S13前,还包括:
S10:在当前节点启动区块链服务时,向第三方服务器请求当前节点的第一地理位置信息;
S11:在第一地理位置信息与各历史地理位置信息均不同时,根据预配置的经纬度编码规则、第一地理位置信息生成地理标识信息;
S12:根据地理标识信息、预配置的可解码的编码规则生成当前节点的节点ID;其中,节点ID用于供其它区块链节点确定当前节点的地理位置信息。
具体地,以预配置的经纬度编码规则为GeoHash编码规则,将“根据预配置的经纬度编码规则、第一地理位置信息生成地理标识信息”配置为“根据GeoHash编码规则和第一地理位置信息生成8位GeoHash地理信息码;对GeoHash地理信息码进行base32解码以生成40位二进制地理标识信息”,相应的,将“根据地理标识信息、预配置的可解码的编码规则生成当前节点的节点ID”配置为“随机生成216位第一二进制字符串;根据40位二进制地理标识信息和第一二进制字符串生成节点标识”;假设当前节点的第一地理位置信息为30.244901,120.145346;当前节点的历史地理位置信息为空;
节点执行步骤S10,在当前节点启动区块链服务时,向第三方服务器请求当前节点的地理位置信息;
第三方服务器返回30.244901,120.145346;
由于当前节点的历史地理位置信息为空,因此30.244901,120.145346与当前节点的各历史地理位置信息均不同,节点执行步骤S11,根据GeoHash编码规则、30.244901,120.145346生成8位GeoHash地理信息码wtmkjczj;对该GeoHash地理信息码进行base32解码以生成40位二进制地理标识信息11100 11001 10011 10010 10001 01011 1111110001;
节点执行步骤S12,随机生成216位二进制字符串(假设为00000...00000,...表示的每个位均为0);节点根据40位二进制地理标识信息、216位二进制字符串00000...00000在后的顺序生成M的节点标识,M的节点标识为11100 11001 10011 10010 10001 0101111111 1000 1 00000...00000;
其它区块链节点根据当前的节点标识的前40位(即11100 11001 10011 1001010001 01011 11111 10001)以确定当前节点的地理位置信息。
在更多实施例中,GeoHash地理信息码的长度还可以根据实际需求进行配置,例如配置为9位,GeoHash地理信息码的长度越长,GeoHash地理信息码对应的区域更为精确,相应的,第一二进制字符串的长度需要相应调整,当GeoHash地理信息码的长度为9位时(即生成45位二进制地理标识信息),第一二进制字符串的长度调整为211位,再根据45位二进制地理标识信息和211位的第一二进制字符串生成当前节点的节点标识,可实现相同的技术效果。
在更多实施例中,预配置的经纬度编码规则还可以根据实际需求配置为PlusCode编码规则,相应的,将“据预配置的经纬度编码规则、第一地理位置信息生成地理标识信息”配置为“根据PlusCode编码规则、第一地理位置信息生成10位PlusCode地理信息码;对PlusCode地理信息码进行base64解码以生成60位二进制地理标识信息”,将“根据地理标识信息、预配置的可解码的编码规则生成当前节点的节点标识”配置为“随机生成196位第二二进制字符串;根据60位二进制地理标识信息和第二二进制字符串生成节点ID”,可实现相同的技术效果。相同的,当预配置的经纬度编码规则为PlusCode时,二进制地理标识信息与第二二进制字符串的顺序还可以根据实际需求进行配置,例如配置为第二二进制字符串在前,二进制地理标识信息在后,可实现相同的技术效果。PlusCode地理信息码的长度还可以根据实际需求进行配置,相应的,第二二进制字符串的长度需要相应调整,可实现相同的技术效果。
在更多实施例中,触发“根据预配置的经纬度编码规则、第一地理位置信息生成地理标识信息”的条件还可以根据实际需求进行配置,例如配置为,在第一地理位置信息与最新版本的历史地理位置信息不同时触发,可实现相同的技术效果。
上述实施例将地理位置信息集成于节点标识中,减少地理位置信息数据存储,减少不同区块链节点间用于获取地理位置信息的请求交互,赋予了节点标识地理位置信息含义,在增加节点标识可读性的同时还便于网络节点分类和后续路由优化。
图5为图4所示方法的一种优选实施方式的流程图。如图5所示,在一优选实施例中,步骤S11包括:
S111:根据GeoHash编码规则和第一地理位置信息生成8位GeoHash地理信息码;
S112:对GeoHash地理信息码进行base32解码以生成40位二进制地理标识信息;
步骤S12包括:
S121:随机生成216位第一二进制字符串;
S122:根据40位二进制地理标识信息和第一二进制字符串生成节点ID。
上述实施例的数据查询原理可参考图4所示的方法,此处不再赘述。
图6为本发明一实施例提供的一种计算机设备的结构示意图。如图6所示,作为另一方面,本申请还提供了一种计算机设备,包括一个或多个中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM603中,还存储有计算机设备操作所需的各种程序和数据。CPU601、ROM602以及RAM603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
特别地,根据本公开的实施例,上述任一实施例描述的方法可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行上述任一方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。
作为又一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例的装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入计算机设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,该程序被一个或者一个以上的处理器用来执行描述于本申请提供的方法。
附图中的流程图和框图,图示了按照本发明各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这根据所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以通过执行规定的功能或操作的专用的基于硬件的***来实现,或者可以通过专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,例如,各所述单元可以是设置在计算机或移动智能设备中的软件程序,也可以是单独配置的硬件装置。其中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离本申请构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (6)

1.一种数据查询方法,其特征在于,包括:
响应于查询第一区块数据,根据所述第一区块数据所属的第一归档数据生成第一数据;
根据所述第一数据的前第一数量位生成第二数据;
生成包括所述第一数据、所述第二数据的数据查询请求信息;
根据所述第二数据、预配置的节点查找方法找到若干第一节点;
向各所述第一节点发送所述数据查询请求信息,以供:
在本地查询是否存储有所述第一数据:
是,则返回所述第一归档数据;
在接收到所述第一归档数据时,根据所述第一归档数据查询所述第一区块数据;
在未接收到所述第一归档数据时,根据所述第一数据的前第二数量位重新生成所述第二数据,并返回所述生成包括所述第一数据、所述第二数据的数据查询请求信息;其中,所述第二数量大于所述第一数量;
其中,第三数量为所述第一数据的位数与所述第一数量之差,所述根据所述第一数据的前第一数量位生成第二数据包括:
根据所述第一数据的前第一数量位、随机生成的所述第三数量位数据生成第二数据;
或,
在当前设备为区块链节点时,根据所述第一数据的前第一数量位、当前节点的节点ID的后所述第三数量位生成第二数据。
2.根据权利要求1所述的方法,其特征在于,所述响应于查询第一区块数据前,还包括:
在当前节点启动区块链服务时,向第三方服务器请求当前节点的第一地理位置信息;
在所述第一地理位置信息与各历史地理位置信息均不同时,根据预配置的经纬度编码规则、所述第一地理位置信息生成地理标识信息;
根据所述地理标识信息、预配置的可解码的编码规则生成当前节点的节点ID;其中,所述节点ID用于供其它区块链节点确定当前节点的地理位置信息。
3.根据权利要求2所述的方法,其特征在于,所述经纬度编码规则为GeoHash编码规则,所述根据预配置的经纬度编码规则、所述第一地理位置信息生成地理标识信息包括:
根据GeoHash编码规则和所述第一地理位置信息生成8位GeoHash地理信息码;
对所述GeoHash地理信息码进行base32解码以生成40位二进制地理标识信息;
所述根据所述地理标识信息、预配置的可解码的编码规则生成当前节点的节点ID包括:
随机生成216位第一二进制字符串;
根据40位二进制地理标识信息和所述第一二进制字符串生成所述节点ID。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述第一数量为240。
5.一种计算机设备,其特征在于,所述设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求1-4中任一项所述的方法。
6.一种存储有计算机程序的存储介质,其特征在于,该程序被处理器执行时实现如权利要求1-4中任一项所述的方法。
CN202110245524.7A 2021-03-05 2021-03-05 数据查询方法、计算机设备和存储介质 Active CN112948438B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110245524.7A CN112948438B (zh) 2021-03-05 2021-03-05 数据查询方法、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110245524.7A CN112948438B (zh) 2021-03-05 2021-03-05 数据查询方法、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN112948438A CN112948438A (zh) 2021-06-11
CN112948438B true CN112948438B (zh) 2022-06-24

Family

ID=76247832

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110245524.7A Active CN112948438B (zh) 2021-03-05 2021-03-05 数据查询方法、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN112948438B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107391557A (zh) * 2017-03-24 2017-11-24 北京瑞卓喜投科技发展有限公司 针对设置链外勘误表的区块链串行查询方法及***
CN111143371A (zh) * 2019-12-27 2020-05-12 ***股份有限公司 数据查询方法、装置、设备、***及介质
CN111382119A (zh) * 2018-12-29 2020-07-07 华为技术有限公司 区块数据归档方法及相关设备
CN111641734A (zh) * 2020-06-08 2020-09-08 杭州复杂美科技有限公司 节点标识生成方法、设备和存储介质
CN112182029A (zh) * 2020-09-30 2021-01-05 杭州复杂美科技有限公司 数据查询方法、设备和存储介质
CN112364209A (zh) * 2020-12-09 2021-02-12 杭州复杂美科技有限公司 分布式数据存储方法、数据查询方法、设备和存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10929473B2 (en) * 2018-09-27 2021-02-23 Palo Alto Research Center Incorporated Integrated index blocks and searching in blockchain systems

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107391557A (zh) * 2017-03-24 2017-11-24 北京瑞卓喜投科技发展有限公司 针对设置链外勘误表的区块链串行查询方法及***
CN111382119A (zh) * 2018-12-29 2020-07-07 华为技术有限公司 区块数据归档方法及相关设备
CN111143371A (zh) * 2019-12-27 2020-05-12 ***股份有限公司 数据查询方法、装置、设备、***及介质
CN111641734A (zh) * 2020-06-08 2020-09-08 杭州复杂美科技有限公司 节点标识生成方法、设备和存储介质
CN112182029A (zh) * 2020-09-30 2021-01-05 杭州复杂美科技有限公司 数据查询方法、设备和存储介质
CN112364209A (zh) * 2020-12-09 2021-02-12 杭州复杂美科技有限公司 分布式数据存储方法、数据查询方法、设备和存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
适应节点差异的区块链分片间负载均衡研究;李华威;《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》;20210115;第I138-681页 *

Also Published As

Publication number Publication date
CN112948438A (zh) 2021-06-11

Similar Documents

Publication Publication Date Title
CN109726202B (zh) 一种区块链数据存储方法及计算机存储介质
JP2016053951A (ja) 情報中心ネットワークにわたって分布及びフォールトトレラント状態を維持するシステム及び方法
US20140222873A1 (en) Information system, management apparatus, method for processing data, data structure, program, and recording medium
US20210158353A1 (en) Methods, systems, apparatuses, and devices for processing request in consortium blockchain
CN103227818A (zh) 终端、服务器、文件传输方法、文件存储管理***和方法
CN110619019B (zh) 数据的分布式存储方法及***
US20190273772A1 (en) Data processing method and apparatus in service-oriented architecture system, and the service-oriented architecture system
US20140244794A1 (en) Information System, Method and Program for Managing the Same, Method and Program for Processing Data, and Data Structure
CN111464630A (zh) 交易广播方法、设备和存储介质
WO2021248876A1 (zh) 分布式数据存储方法、设备和存储介质
CN111641734A (zh) 节点标识生成方法、设备和存储介质
WO2019095668A1 (zh) 数据定向传输方法、数据定向传输控制装置及计算机可读存储介质
EP2747336A1 (en) Content processing method, device and system
CN112948438B (zh) 数据查询方法、计算机设备和存储介质
CN104580428A (zh) 一种数据路由方法、数据管理装置和分布式存储***
US20140310321A1 (en) Information processing apparatus, data management method, and program
US9684668B1 (en) Systems and methods for performing lookups on distributed deduplicated data systems
US20240020006A1 (en) System and method for compaction of floating-point numbers within a dataset
CN112182029B (zh) 数据查询方法、设备和存储介质
CN112055077B (zh) 区块链接入方法、设备和存储介质
CN108241685B (zh) 数据查询的方法和查询客户端
WO2018000647A1 (zh) 文件下载方法、装置、终端及服务器
CN112148728A (zh) 用于信息处理的方法、设备和计算机程序产品
CN113992664B (zh) 一种集群通信的方法、相关装置及存储介质
CN109741180B (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
GR01 Patent grant
GR01 Patent grant