一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据查询方法和装置与流程

2022-04-13 19:40:40 来源:中国专利 TAG:


1.本技术涉及计算机领域,具体而言,涉及一种数据查询方法和装置。


背景技术:

2.大数据接口平台在接收到数据查询请求时,查询的效率低下,查询的响应速度比较慢。


技术实现要素:

3.本技术的主要目的在于提供一种数据查询方法和装置,以解决上述问题。
4.为了实现上述目的,根据本技术的一个方面,提供了一种数据查询方法,包括:
5.接收到查询请求后,从缓存中获取预先配置的查询模板;
6.在所述查询模板中接收输入的查询参数得到带参模板;
7.根据所述带参模板从所述缓存中进行查询得到查询结果。
8.在一种实施方式中,所述查询模板的配置,包括以下的一种或多种:设置查询模板中的查询参数、设置防注级别、设置模板状态、模板名称、缓存时长;防注级别包括:基础防护、中级防护和高级防护;数据源的选择确定。
9.在一种实施方式中,在所述查询模板中输入查询参数得到带参模板之前,所述方法还包括:对所述查询模板进行解析,生成查询链接;所述查询链接中包括模板号。
10.在一种实施方式中,查询结束后,所述方法还包括:生成日志文件;所述日志文件中记录的内容包括:查询过程中发生的错误信息、查询的结果。
11.在一种实施方式中,接收到查询语句后,判断所述查询语句与预先设定的时间段内的历史查询语句是否相同;如果相同,则从缓存中获取所述历史查询语句的查询结果。
12.在一种实施方式中,判断是否有查询模板之前,启动查询系统,对提供查询的数据源进行连接池初始化,生成初始空闲连接;进行查询时,使用所述初始空闲连接进行查询。
13.在一种实施方式中,对于任意的一项查询内容,统计所述查询内容的多个查询语句中每个查询语句的响应时间;按照响应时间从大到小的顺序对查询语句进行排序;确定响应时间最短的查询语句。
14.为了实现上述目的,根据本技术的另一方面,提供了一种数据查询装置,包括:
15.获取模块,用于接收到查询请求后,从缓存中获取预先配置的查询模板;
16.接收模块,用于在所述查询模板中接收输入的查询参数得到带参模板;
17.查询模块,用于根据所述带参模板从所述缓存中进行查询得到查询结果。
18.在一种实施方式中,所述查询模板的配置,包括以下的一种或多种:设置查询模板中的查询参数、设置防注级别、设置模板状态、模板名称、缓存时长;防注级别包括:基础防护、中级防护和高级防护;数据源的选择确定。
19.在一种实施方式中,查询链接模块,用于在所述查询模板中输入查询参数得到带参模板之前,对所述查询模板进行解析,生成查询链接;所述查询链接中包括模板号。
20.在一种实施方式中,日志模块,用于查询结束后,生成日志文件;所述日志文件中记录的内容包括:查询过程中发生的错误信息、查询的结果。
21.在一种实施方式中,判断模块,用于接收到查询语句后,判断所述查询语句与预先设定的时间段内的历史查询语句是否相同;如果相同,则从缓存中获取所述历史查询语句的查询结果。
22.在一种实施方式中,还包括连接模块,用于判断是否有查询模板之前,启动查询系统,对提供查询的数据源进行连接池初始化,生成初始空闲连接;进行查询时,使用所述初始空闲连接进行查询。
23.在一种实施方式中,还包括排序模块,用于对于任意的一项查询内容,统计所述查询内容的多个查询语句中每个查询语句的响应时间;按照响应时间从大到小的顺序对查询语句进行排序;确定响应时间最短的查询语句。
24.为了实现上述目的,根据本技术的第三方面,提供了一种电子设备;包括至少一个处理器和至少一个存储器;所述存储器用于存储一个或多个程序指令;所述处理器,用于运行一个或多个程序指令,用以执行上述任一项所述的步骤。
25.根据本技术的第四方面,提供了一种计算机可读存储介质,计算机可读存储介质中包含一个或多个程序指令,所述一个或多个程序指令用于执行上述任意一项所述的步骤。
26.在本技术实施例中,接收到查询请求后,从缓存中获取预先配置的查询模板;在所述查询模板中接收输入的查询参数得到带参模板;根据所述带参模板从所述缓存中进行查询得到查询结果。本发明,利用了本地缓存,在本地缓存中存储了查询模块,查询结果,重复利用了本地缓存,就可以极大提高数据查询的效率和速度。
附图说明
27.构成本技术的一部分的附图用来提供对本技术的进一步理解,使得本技术的其它特征、目的和优点变得更明显。本技术的示意性实施例附图及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
28.图1是根据本技术实施例的一种数据查询方法的流程图;
29.图2是根据本技术实施例的一种查询模板界面示意图;
30.图3是根据本技术实施例的一种数据查询装置的结构示意图;
31.图4是根据本技术实施例的一种电子设备的结构示意图。
具体实施方式
32.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。
33.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用
的数据在适当情况下可以互换,以便这里描述的本技术的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
34.并且,上述部分术语除了可以用于表示方位或位置关系以外,还可能用于表示其他含义,例如术语“上”在某些情况下也可能用于表示某种依附关系或连接关系。对于本领域普通技术人员而言,可以根据具体情况理解这些术语在本实用新型中的具体含义。
35.此外,术语“安装”、“设置”、“设有”、“连接”、“相连”、“套接”应做广义理解。例如,可以是固定连接,可拆卸连接,或整体式构造;可以是机械连接,或电连接;可以是直接相连,或者是通过中间媒介间接相连,又或者是两个装置、元件或组成部分之间内部的连通。对于本领域普通技术人员而言,可以根据具体情况理解上述术语在本实用新型中的具体含义。
36.需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本技术。
37.如图1所示,该方法包括如下的步骤s102至步骤s106:
38.一种数据查询方法,包括:
39.步骤s102,接收到查询请求后,从缓存中获取预先配置查询模板;
40.其中,所述查询模板是预先进行配置,包括以下的一种或几种,设置查询模板中的查询参数、设置防注级别、设置模板状态、模板名称、缓存时长;防注级别包括:基础防护、中级防护和高级防护。
41.示例性的,查询模板配置包括以下内容:模板里面可以设置查询参数,例如:
42.select a.a,a.b,a.c from a where a.a={a}and a.b={b}。
43.步骤s104,在所述查询模板中接收输入的查询参数得到带参模板;
44.示例性的,参数如下:
[0045][0046]
步骤s106,根据所述带参模板从缓存中进行查询得到查询结果。
[0047]
上述的查询方法可以应用在大数据查询平台dsapi。
[0048]
参见附图2所示的一种查询模板的界面示意图;该模板的状态包括启用、废弃。防注级别包括:最高级别、中等级别和最低级别。用户可以进行选择。数据源可以从下拉列表中选择;数据源管理用于展示可以用数据源的列表和详细情况说明,以便用户在配置模板
的时候,能够了解到数据源的具体信息,选择正确的数据源。
[0049]
模板编号和模板名称为用户自定义。模板链接中包括了模板编号。
[0050]
为加快数据查询,本技术对查询模板、查询结果、查询语句进行了缓存:通过缓存带参数的查询模板,减少用户在进行语句查询的时候和数据库的交互。缓存模板解析之后,与存储工具交互获取到缓存结果,缓存的缓存时间为长期,只要模板详情不进行修改,模板的缓存就不会过期。
[0051]
在一种实施方式中,对所述查询模板进行解析,生成查询链接,所述查询链接中包括模板号。
[0052]
示例性的,查询链接如下:/api/v2.0/querydata/123456。其中,123456为模板号。
[0053]
在一种实施方式中,查询结束后,生成日志文件;所述日志文件中记录的内容包括:查询过程中发生的错误信息、查询的结果。查询响应的时间。
[0054]
示例性的,日志在可以记录查询发生的具体的错误,错误可以为查询模板错误,或者查询参数错误,或者查询语句的逻辑关系错误;
[0055]
查询响应的时间可以为某一个时间点。可以记录查询同一个查询内容的多次查询的时间点,记录响应每一次查询的时间用时长短;
[0056]
对于缓存中的同一内容,原则上,进行查询的响应时间的用时是相同的。
[0057]
如果两个响应时间不同,则对上述同一内容的查询语句,查询参数进行比对;查找具体的差值,优化查询参数的设置和查询语句的设置。
[0058]
进一步的,对于任意的一项查询内容,统计所述查询内容的多个查询语句中每个查询语句的响应时间;按照响应时间从大到小的顺序对查询语句进行排序;确定响应时间最短的查询语句。将该查询语句中的查询参数设置为优选查询参数。
[0059]
在设定的缓存有效时间内,相同的sql语句查询时,首先从缓存中获取查询结果,如果没有查询结果,继续与存储引擎交互,获取数据。如此可以提高数据查询速度,在一种实施方式中,接收到查询语句后,判断所述查询语句与预先设定的时间段内的历史查询语句是否相同;如果相同,则从缓存中获取所述历史查询语句的查询结果。
[0060]
具体的,可以为每个历史查询语句设置标识;建立每个历史查询语句与查询结果对应关系表,根据每个历史查询语句标识和对应关系表查找到对应的查询结果。
[0061]
对于关系型数据库的接入,使用了池化技术,在系统启动时,就会对所有的提供查询的数据源进行连接池初始化,生成一定初始空闲连接,这些连接一直保持着系统对数据库的连接,这样,当用户来进行查询的时候,可以直接使用已经存在的连接,直接进行查询,没有等待连接初始化的时间,减少了用户查询的耗时。
[0062]
在一种实施方式中,判断是否有查询模板之前,启动查询系统,对提供查询的数据源进行连接池初始化,生成初始空闲连接;进行查询时,使用所述初始空闲连接进行查询。
[0063]
本技术的方法,支持自定义sql语句,系统提供可视化的查询模板编辑,用户可以自定义查询的sql语句,语句中可以规定查询的参数。本技术的方法,支持mysql和oracle等关系型数据库的接入,采用连接池技术,极大地提高了连接的效率和数据查询的效率。对查询模板,解析完成的sql语句,以及查询的数据结果,提供缓存,查询的结果可以自定义缓存时间。对查询行为进行记录,可以得到每个查询的响应时间,查询的入参信息。以便对平台进行监控。
[0064]
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
[0065]
第二方面,本技术还提出一种数据查询装置,参见附图3所示的一种数据查询装置的结构示意图;该装置包括:
[0066]
获取模块31,用于接收到查询请求后,从缓存中获取预先配置的查询模板;
[0067]
接收模块32,用于在所述查询模板中接收输入的查询参数得到带参模板;
[0068]
查询模块33,用于根据所述带参模板从所述缓存中进行查询得到查询结果。
[0069]
在一种实施方式中,所述查询模板的配置,包括以下的一种或多种:设置查询模板中的查询参数、设置防注级别、设置模板状态、模板名称、缓存时长;防注级别包括:基础防护、中级防护和高级防护;数据源的选择确定。
[0070]
在一种实施方式中,查询链接模块34,用于在所述查询模板中输入查询参数得到带参模板之前,对所述查询模板进行解析,生成查询链接;所述查询链接中包括模板号。
[0071]
在一种实施方式中,日志模块35,用于查询结束后,生成日志文件;所述日志文件中记录的内容包括:查询过程中发生的错误信息、查询的结果。
[0072]
在一种实施方式中,判断模块36,用于接收到查询语句后,判断所述查询语句与预先设定的时间段内的历史查询语句是否相同;如果相同,则从缓存中获取所述历史查询语句的查询结果。
[0073]
在一种实施方式中,还包括连接模块37,用于判断是否有查询模板之前,启动查询系统,对提供查询的数据源进行连接池初始化,生成初始空闲连接;进行查询时,使用所述初始空闲连接进行查询。
[0074]
在一种实施方式中,还包括排序模块38,用于对于任意的一项查询内容,统计所述查询内容的多个查询语句中每个查询语句的响应时间;按照响应时间从大到小的顺序对查询语句进行排序;确定响应时间最短的查询语句。
[0075]
根据本技术的第三方面,提供了一种电子设备,参见附图4所示的一种电子设备的结构示意图;包括至少一个处理器41和至少一个存储器42;所述存储器42用于存储一个或多个程序指令;所述处理器41,用于运行一个或多个程序指令,用以执行以下的步骤:
[0076]
接收到查询请求后,从缓存中获取预先配置的查询模板;
[0077]
在所述查询模板中接收输入的查询参数得到带参模板;
[0078]
根据所述带参模板从所述缓存中进行查询得到查询结果。
[0079]
在一种实施方式中,所述处理器41还用于,所述查询模板的配置,包括以下的一种或多种:设置查询模板中的查询参数、设置防注级别、设置模板状态、模板名称、缓存时长;防注级别包括:基础防护、中级防护和高级防护;数据源的选择确定。
[0080]
在一种实施方式中,所述处理器41还用于,在所述查询模板中输入查询参数得到带参模板之前,对所述查询模板进行解析,生成查询链接;所述查询链接中包括模板号。
[0081]
在一种实施方式中,所述处理器41还用于,查询结束后,所述方法还包括:生成日志文件;所述日志文件中记录的内容包括:查询过程中发生的错误信息、查询的结果。
[0082]
在一种实施方式中,所述处理器41还用于,接收到查询语句后,判断所述查询语句与预先设定的时间段内的历史查询语句是否相同;如果相同,则从缓存中获取所述历史查
询语句的查询结果。
[0083]
在一种实施方式中,所述处理器41还用于,判断是否有查询模板之前,启动查询系统,对提供查询的数据源进行连接池初始化,生成初始空闲连接;进行查询时,使用所述初始空闲连接进行查询。
[0084]
在一种实施方式中,所述处理器41还用于,对于任意的一项查询内容,统计所述查询内容的多个查询语句中每个查询语句的响应时间;按照响应时间从大到小的顺序对查询语句进行排序;确定响应时间最短的查询语句。
[0085]
第四方面,本技术还提出了一种计算机可读存储介质,计算机可读存储介质中包含一个或多个程序指令,所述一个或多个程序指令用于执行以下的步骤:
[0086]
接收到查询请求后,从缓存中获取预先配置的查询模板;
[0087]
在所述查询模板中接收输入的查询参数得到带参模板;
[0088]
根据所述带参模板从所述缓存中进行查询得到查询结果。
[0089]
在一种实施方式中,所述查询模板的配置,包括以下的一种或多种:设置查询模板中的查询参数、设置防注级别、设置模板状态、模板名称、缓存时长;防注级别包括:基础防护、中级防护和高级防护;数据源的选择确定。
[0090]
在一种实施方式中,在所述查询模板中输入查询参数得到带参模板之前,所述方法还包括:对所述查询模板进行解析,生成查询链接;所述查询链接中包括模板号。
[0091]
在一种实施方式中,查询结束后,所述方法还包括:生成日志文件;所述日志文件中记录的内容包括:查询过程中发生的错误信息、查询的结果。
[0092]
在一种实施方式中,接收到查询语句后,判断所述查询语句与预先设定的时间段内的历史查询语句是否相同;如果相同,则从缓存中获取所述历史查询语句的查询结果。
[0093]
在一种实施方式中,判断是否有查询模板之前,启动查询系统,对提供查询的数据源进行连接池初始化,生成初始空闲连接;进行查询时,使用所述初始空闲连接进行查询。
[0094]
在一种实施方式中,对于任意的一项查询内容,统计所述查询内容的多个查询语句中每个查询语句的响应时间;按照响应时间从大到小的顺序对查询语句进行排序;确定响应时间最短的查询语句。
[0095]
可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。处理器读取存储介质中的信息,结合其硬件完成上述方法的步骤。
[0096]
存储介质可以是存储器,例如可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。
[0097]
其中,非易失性存储器可以是只读存储器(read-only memory,简称rom)、可编程只读存储器(programmable rom,简称prom)、可擦除可编程只读存储器(erasable prom,简称eprom)、电可擦除可编程只读存储器(electrically eprom,简称eeprom)或闪存。
[0098]
易失性存储器可以是随机存取存储器(random access memory,简称ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存
储器(static ram,简称sram)、动态随机存取存储器(dynamic ram,简称dram)、同步动态随机存取存储器(synchronous dram,简称sdram)、双倍数据速率同步动态随机存取存储器(double data ratesdram,简称ddrsdram)、增强型同步动态随机存取存储器(enhanced sdram,简称esdram)、同步连接动态随机存取存储器(synchlink dram,简称sldram)和直接内存总线随机存取存储器(directrambus ram,简称drram)。
[0099]
本发明实施例描述的存储介质旨在包括但不限于这些和任意其它适合类型的存储器。
[0100]
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件与软件组合来实现。当应用软件时,可以将相应功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
[0101]
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
[0102]
以上所述仅为本技术的优选实施例而已,并不用于限制本技术,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献