基于区块链的数据查询方法、装置、设备及存储介质制造方法及图纸

技术编号:21361154 阅读:35 留言:0更新日期:2019-06-15 09:17
本发明专利技术属于区块链技术领域,公开了一种基于区块链的数据查询方法、装置、设备及存储介质。该方法包括:接收用户触发的区块链数据查询请求,获取区块链数据查询请求对应的待查询问题;对待查询问题进行分析,确定区块筛选条件和目标数据筛选条件;根据区块筛选条件、目标数据筛选条件、预设的查询表达式模板和查询表达式支持的运算符,生成区块链数据查询表达式;利用预设的区块链数据查询引擎,从区块链上查询符合区块链数据查询表达式指定的数据。通过上述方式,不仅提升了从区块链中查询数据的效率,同时也降低了对用户的要求。

Block Chain-based Data Query Method, Device, Equipment and Storage Media

The invention belongs to the technical field of block chain, and discloses a data query method, device, equipment and storage medium based on block chain. The method includes: receiving block chain data query requests triggered by users, obtaining query questions corresponding to block chain data query requests; analyzing query questions, determining block filter conditions and target data filter conditions; generating regions according to block filter conditions, target data filter conditions, preset query expression template and operators supported by query expression. Block chain data query expression; using the default block chain data query engine, query data from block chain that conforms to the block chain data query expression specified. Through the above way, it not only improves the efficiency of querying data from block chains, but also reduces the requirements for users.

【技术实现步骤摘要】
基于区块链的数据查询方法、装置、设备及存储介质
本专利技术涉及区块链
,尤其涉及一种基于区块链的数据查询方法、装置、设备及存储介质。
技术介绍
随着计算机技术的不断发展,区块链技术(又称之为分布式账本技术)作为一种新的分布式数据存储技术,由于其具备不可篡改的特性,使得存储至区块链中的数据具备公正、公信力等特点,进而使得基于区块链的存储方式被广泛使用。然而,当前市场上对于存储于区块链中的数据的查询,大多集中在查询单个区块上,即用户想要查询自己需要的数据,在发起一次查询请求之后,只能在一个指定的区块中进行查询,如果需要对整个区块链上的区块进行查询,就需要发起多次查询请求,严重影响了数据的查询效率。此外,由于目前从区块链中查询数据的查询请求需要用户按照特定语言,编写针对不同区块的查询语句才可以实现对区块中数据的查询,这就导致不熟悉相关知识的用户根本无法从区块链中精准的查找到自己需要的数据。所以,亟需提供一种能够快速、准确,且方便用户从区块链中查询数据的方法。上述内容仅用于辅助理解本专利技术的技术方案,并不代表承认上述内容是现有技术。
技术实现思路
本专利技术的主要目的在于提供一种基于区块链的数据查询方法、装置、设备及存储介质,旨在解决现有技术中从区块链中查询数据的效率低,且对查询者要求高的技术问题。为实现上述目的,本专利技术提供了一种基于区块链的数据查询方法,所述方法包括以下步骤:接收用户触发的区块链数据查询请求,获取所述区块链数据查询请求对应的待查询问题;对所述待查询问题进行分析,确定区块筛选条件和目标数据筛选条件;根据所述区块筛选条件、所述目标数据筛选条件、预设的查询表达式模板和查询表达式支持的运算符,生成区块链数据查询表达式;利用预设的区块链数据查询引擎,从区块链上查询符合所述区块链数据查询表达式指定的数据。优选地,所述对所述待查询问题进行分析之前,所述方法还包括:基于关键词提取技术,从所述待查询问题中提取至少一个关键词;其中,所述对所述待查询问题进行分析,确定区块筛选条件和目标数据筛选条件,包括:对提取到的各关键词进行语义分析;根据各关键词的语义,确定所述区块筛选条件和所述目标数据筛选条件。优选地,所述基于关键词提取技术,从所述待查询问题中提取至少一个关键词之前,所述方法还包括:确定所述待查询问题的格式;若所述待查询问题为语音格式,则基于语音识别技术,将语音格式的待查询问题转换为文本格式的待查询问题;若所述待查询问题为图片格式,则基于图像识别文字技术,将图片格式的待查询问题转换为文本格式的待查询问题;其中,所述基于关键词提取技术,从所述待查询问题中提取至少一个关键词,包括:基于关键词提取技术,从文本格式的待查询问题中提取至少一个关键词。优选地,所述查询表达式模板中的查询表达式的语法结构为:select{*|field[,…]}fromblockchain[wheresearch_condition];其中,blockchain为要查询的区块链的名称,search_condition为所述区块筛选条件,field为所述目标数据筛选条件。优选地,所述利用预设的区块链数据查询引擎,从区块链上查询符合所述区块链数据查询表达式指定的数据之前,所述方法还包括:确定所述区块链的编程语言;将所述区块链数据查询表达式转换为所述区块链能够识别的编程语言。优选地,所述利用预设的区块链数据查询引擎,从区块链上查询符合所述区块链数据查询表达式指定的数据,包括:以所述区块筛选条件为第一查询目标,利用所述区块链数据查询引擎,采用所述区块链能够识别的编程语言,从所述区块链中查询出符合所述区块筛选条件的区块;以所述目标数据筛选条件为第二查询目标,利用所述区块链数据查询引擎,采用所述区块链能够识别的编程语言,对筛选出的各区块进行遍历,查询出符合所述目标数据筛选条件的数据。优选地,所述区块链数据查询引擎中设置有数据缓存区域;所述查询出符合所述目标数据筛选条件的数据之后,所述方法还包括:将查询出的所述数据存储到所述数据缓存区域。此外,为实现上述目的,本专利技术还提出一种基于区块链的数据查询装置,所述装置包括:获取模块,用于接收用户触发的区块链数据查询请求,获取所述区块链数据查询请求对应的待查询问题;确定模块,用于对所述待查询问题进行分析,确定区块筛选条件和目标数据筛选条件;生成模块,用于根据所述区块筛选条件、所述目标数据筛选条件、预设的查询表达式模板和查询表达式支持的运算符,生成区块链数据查询表达式;查询模块,用于利用预设的区块链数据查询引擎,从区块链上查询符合所述区块链数据查询表达式指定的数据。此外,为实现上述目的,本专利技术还提出一种基于区块链的数据查询设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于区块链的数据查询程序,所述基于区块链的数据查询程序配置为实现如上文所述的基于区块链的数据查询方法的步骤。此外,为实现上述目的,本专利技术还提出一种存储介质,所述存储介质上存储有基于区块链的数据查询程序,所述基于区块链的数据查询程序被处理器执行时实现如上文所述的基于区块链的数据查询方法的步骤。本专利技术通过对用户提供的待查询问题进行分析,进而确定与所述待查询问题相关的区块筛选条件和目标数据筛选条件,使得用户在对存储于区块链中的数据进行查询时,只需提供待查询问题,无需根据按照特定语言手动编写查询语句,大大降低了对用户的要求,方便了用户的使用。此外,本专利技术在采用根据所述区块筛选条件、所述目标数据筛选条件、预设的查询表达式模板和查询表达式支持的运算符生成的区块链数据查询表达式来进行数据查询操作的过程中,由于区块链数据查询表达式中同时设定了区块筛选条件和目标数据筛选条件,因而只需通过一次请求,便可以实现对整个区块链上符合区块筛选条件的区块的查询和符合目标数据筛选条件的数据查询,从而大大提高了数据的查询效率。附图说明图1是本专利技术实施例方案涉及的硬件运行环境的基于区块链的数据查询设备的结构示意图;图2为本专利技术基于区块链的数据查询方法第一实施例的流程示意图;图3为本专利技术基于区块链的数据查询方法第二实施例的流程示意图;图4为本专利技术基于区块链的数据查询装置第一实施例的结构框图。本专利技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式应当理解,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。参照图1,图1为本专利技术实施例方案涉及的硬件运行环境的基于区块链的数据查询设备结构示意图。如图1所示,该基于区块链的数据查询设备可以包括:处理器1001,例如中央处理器(CentralProcessingUnit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(WIreless-FIdelity,WI-FI)接口)。存储器1005可以是高速的随机存取存储器(RandomAccessMemory,RAM)存储器,也可以是稳定的非易失本文档来自技高网...

【技术保护点】
1.一种基于区块链的数据查询方法,其特征在于,所述方法包括以下步骤:接收用户触发的区块链数据查询请求,获取所述区块链数据查询请求对应的待查询问题;对所述待查询问题进行分析,确定区块筛选条件和目标数据筛选条件;根据所述区块筛选条件、所述目标数据筛选条件、预设的查询表达式模板和查询表达式支持的运算符,生成区块链数据查询表达式;利用预设的区块链数据查询引擎,从区块链上查询符合所述区块链数据查询表达式指定的数据。

【技术特征摘要】
1.一种基于区块链的数据查询方法,其特征在于,所述方法包括以下步骤:接收用户触发的区块链数据查询请求,获取所述区块链数据查询请求对应的待查询问题;对所述待查询问题进行分析,确定区块筛选条件和目标数据筛选条件;根据所述区块筛选条件、所述目标数据筛选条件、预设的查询表达式模板和查询表达式支持的运算符,生成区块链数据查询表达式;利用预设的区块链数据查询引擎,从区块链上查询符合所述区块链数据查询表达式指定的数据。2.如权利要求1所述的方法,其特征在于,所述对所述待查询问题进行分析之前,所述方法还包括:基于关键词提取技术,从所述待查询问题中提取至少一个关键词;其中,所述对所述待查询问题进行分析,确定区块筛选条件和目标数据筛选条件,包括:对提取到的各关键词进行语义分析;根据各关键词的语义,确定所述区块筛选条件和所述目标数据筛选条件。3.如权利要求2所述的方法,其特征在于,所述基于关键词提取技术,从所述待查询问题中提取至少一个关键词之前,所述方法还包括:确定所述待查询问题的格式;若所述待查询问题为语音格式,则基于语音识别技术,将语音格式的待查询问题转换为文本格式的待查询问题;若所述待查询问题为图片格式,则基于图像识别文字技术,将图片格式的待查询问题转换为文本格式的待查询问题;其中,所述基于关键词提取技术,从所述待查询问题中提取至少一个关键词,包括:基于关键词提取技术,从文本格式的待查询问题中提取至少一个关键词。4.如权利要求1至3任一项所述的方法,其特征在于,所述查询表达式模板中的查询表达式的语法结构为:select{*|field[,…]}fromblockchain[wheresearch_condition];其中,blockchain为要查询的区块链的名称,search_condition为所述区块筛选条件,field为所述目标数据筛选条件。5.如权利要求1至3任一项所述的方法,其特征在于,所述利用预设的区块链数据查询引擎,从区块链上查询...

【专利技术属性】
技术研发人员:王志锋
申请(专利权)人:平安城市建设科技深圳有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1