【技术实现步骤摘要】
一种数据查询方法、装置、设备及存储介质
[0001]本公开涉及计算机
,尤其涉及一种数据查询方法
、
装置
、
设备及存储介质
。
技术介绍
[0002]区块链在使用过程中会产生大量交易数据,查询端若想要获取区块链上的交易数据,需要频繁向服务端发送查询指令,以获取服务端侧区块链新产生节点的数据信息
。
现有技术主要通过服务端提供的按块查询接口获取区块链上的交易数据,然而,按块查询接口不仅需要频繁地调用查询指令,而且还受每秒查询率
(QPS
,
Queries Per Second)
的限制,对于区块链上大量数据的查询很容易超过
QPS
的限制,查询效率较低,另外,按块查询的接口还具有查询内容的限制,如不能获取合约交易的发起方地址等信息,需要先查询到合约交易账号,然后根据合约交易账号对发起方地址等信息进行二次查询
。
技术实现思路
[0003]本公开提供了一种数据查询方法
、
装置
、
设备及存储介质,以至少解决现有技术中存在的以上技术问题
。
[0004]根据本公开的第一方面,提供了一种数据查询方法,该方法包括:获取第一区块高度和第二区块高度,所述第一区块高度为区块链上已扫描区块的区块高度,所述第二区块高度为区块链上最新块的区块高度;计算所述第一区块高度与第二区块高度的差值,得到区块链上的未扫描区块高度;根据被查询交易的交易频次和查询接口 ...
【技术保护点】
【技术特征摘要】
1.
一种数据查询方法,其特征在于,所述方法包括:获取第一区块高度和第二区块高度,所述第一区块高度为区块链上已扫描区块的区块高度,所述第二区块高度为区块链上最新块的区块高度;计算所述第一区块高度与第二区块高度的差值,得到区块链上的未扫描区块高度;根据被查询交易的交易频次和查询接口的截断数量,确定查询步长;根据所述未扫描区块高度和所述查询步长,确定查询范围;根据所述查询范围和所述被查询交易对应的筛选条件,生成查询请求,并将所述查询请求发送至服务端;接收所述服务端根据所述查询请求扫描得到的查询结果
。2.
根据权利要求1所述的方法,其特征在于,所述获取第一区块高度和第二区块高度,包括:基于扫描记录查询所述第一区块高度,所述扫描记录用于记录区块链上已扫描区块的区块高度;获取检测线程返回的所述第二区块高度,所述检测线程用于每隔目标时间向服务端发送高度查询指令,以获取区块链上最新块的区块高度
。3.
根据权利要求1所述的方法,其特征在于,所述根据被查询交易的交易频次和查询接口的截断数量,确定查询步长,包括:计算所述截断数量与所述交易频次的商,得到所述被查询交易的交易次数达到所述截断数量所需的时长;计算所述区块链上区块的生成速率与所述时长的乘积,得到步长最大值;基于所述步长最大值确定所述查询步长,所述查询步长小于或等于所述步长最大值
。4.
根据权利要求1所述的方法,其特征在于,所述根据所述未扫描区块高度和所述查询步长,确定查询范围,包括:所述未扫描区块高度大于或等于所述查询步长,则将从最后一个已扫描区块开始一个查询步长范围内的区块确定为所述查询范围;所述未扫描区块高度小于所述查询步长且大于1,则将从最后一个已扫描区块开始到所述最新块之间的范围确定为所述查询范围;所述未扫描区块高度小于所述查询步长且等于1,则将所述最新块确定为所述查询范围
。5.
根据权利要求4所述的方法,其特征在于,所述根据所述查询范围和所述被查询交易对应的筛选条件,生成查询请求,包括:所述查询范围对应的区块数大于1,则确定所述服务端对应的查询接口的查询范围参数;所述查询范围参数为高度参数,则根据所述查询范围对应的起止块高度和所述被查询交易对应的筛选条件,生成所述查询请求;所述查询范围参数为时间参数,则将所述查询范围对应的起止块高度转换为起止时间戳...
【专利技术属性】
技术研发人员:何川,
申请(专利权)人:长春吉大正元信息技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。