本公开涉及大数据、人工智能,具体地涉及一种数据库查询方法、装置、设备、介质和程序产品。
背景技术:
1、在金融业务领域,随着数据规模增长迅速,业务人员对数据时效的提升要求也与日俱增。为了能够更加快速的响应业务人员的个性化定制需求,为数据分析师提供了数据灵活查询服务,可让数据分析师在灵活查询平台上,自定义语句查询所需的数据结果。
2、在实现本公开构思的过程中,发明人发现相关技术中至少存在如下问题:由于灵活查询服务的便捷性和高时效,自定义查询语句的数量激增,语句质量参差不齐导致查询资源浪费,查询资源不能得到合理分配和有效率用,数据库查询效率低。
技术实现思路
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、将预估资源消耗值和预估数据量值输入第一语句判别模型,输出语句判别结果。
29、根据本公开的实施例,其中,第二历史运行数据还包括在执行目标查询语句过程中的cpu历史使用率、语句历史运行时长、是否被强制结束运行的历史记录;
30、基于第二语句判别模型获得目标查询语句的语句判别结果包括:
31、获取目标查询语句的预估资源消耗值和预估数据量值;
32、将预估资源消耗、预估数据量值、cpu历史使用率、语句历史运行时长、是否被强制结束运行的历史记录,输入第二语句判别模型,输出语句判别结果。
33、本公开的另一个方面提供了一种数据库查询装置,包括任务生成模块、第一确定模块、语句判别模块、第二确定模块、任务执行模块。
34、任务生成模块,用于响应于目标用户基于目标查询语句对数据库的查询请求,生成目标查询任务;
35、第一确定模块,用于确定目标用户的用户等级;
36、语句判别模块,用于基于语句判别模型,获得目标查询语句的语句判别结果,其中语句判别结果用于表征目标查询语句为复杂语句或者简单语句;
37、第二确定模块,用于根据目标用户的用户等级以及目标查询语句的语句判别结果,从计算资源池中的多个计算单元中确定目标计算单元;
38、任务执行模块,用于利用目标计算单元执行目标查询任务,以获得针对查询请求的数据库查询结果。
39、根据本公开的实施例,其中,第一确定模块包括读取单元、第一获取单元、第二获取单元、计算单元。
40、其中,读取单元,用于从日志数据库中读取目标用户在第一预定历史时间段内的多条历史查询语句;
41、第一获取单元,用于获取多条历史查询语句各自的第一历史运行数据;
42、第二获取单元,用于获取目标业务类型对应的业务优先级,其中,目标业务类型为:目标用户分管的业务所属的业务类型;
43、计算单元,用于根据多条历史查询语句各自的第一历史运行数据,以及目标业务类型对应的业务优先级,计算目标用户的用户等级。
44、根据本公开的实施例,其中,计算单元包括第一计算子单元、第一确定子单元、第二确定子单元、第二计算子单元。
45、第一计算子单元,用于根据多条历史查询语句各自的第一历史运行数据,计算语句运行维度分值;
46、第一确定子单元,用于根据目标业务类型对应的业务优先级,确定业务维度分值;
47、第二确定子单元,用于确定语句运行维度权重和业务维度权重;
48、第二计算子单元,用于根据语句运行维度分值、语句运行维度权重、业务维度分值、业务维度权重,计算得到目标用户的用户等级。
49、根据本公开的实施例,其中,语句判别模型包括第一语句判别模型或第二语句判别模型;
50、语句判别模块包括获取子模块、确定子模块、判别子模块。
51、获取子模块,用于获取目标查询语句的在第二预定历史时间段内的第二历史运行数据,其中第二历史运行数据包括历史运行次数;
52、确定子模块,用于根据历史运行次数确定目标查询语句的执行类型,执行类型为单次执行语句或多次执行语句;
53、判别子模块,用于根据目标查询语句的执行类型,基于第一语句判别模型或第二语句判别模型获得目标查询语句的语句判别结果。
54、根据本公开的实施例,其中,判别子模块包括第一判别单元、第二判别单元。
55、其中,第一判别单元,用于在目标查询语句的执行类型为单次执行语句的情况下,基于第一语句判别模型获得目标查询语句的语句判别结果;
56、第二判别单元,用于在目标查询语句的执行类型为多次执行语句的情况下,基于第二语句判别模型获得目标查询语句的语句判别结果。
57、根据本公开的实施例,其中,第一判别单元包括第一获取子单元、第一输入输出子单元。
58、其中,第一获取子单元,用于获取目标查询语句的预估资源消耗值和预估数据量值;
59、第一输入输出子单元,用于将预估资源消耗值和预估数据量值输入第一语句判别模型,输出语句判别结果。
60、根据本公开的实施例,其中,第二历史运行数据还包括在执行目标查询语句过程中的cpu历史使用率、语句历史运行时长、是否被强制结束运行的历史记录;第二判别单元包括第二获取子单元、第二输入输出子单元。
61、其中,第二获取子单元,用于获取目标查询语句的预估资源消耗值和预估数据量值;
62、第二输入输出子单元,用于将预估资源消耗、预估数据量值、cpu历史使用率、语句历史运行时长、是否被强制结束运行的历史记录,输入第二语句判别模型,输出语句判别结果。
63、本公开的另一个方面提供了一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得一个或多个处理器执行上述数据库查询方法。
64、本公开的另一个方面还提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行上述数据库查询方法。
65、本公开的另一个方面还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述数据库查询方法。
66、根据本公开的实施例,通过确定目标用户的用户等级、获得目标查询语句的语句判别结果,并进一步根据目标用户的用户等级以及目标查询语句的语句判别结果,从计算资源池中的多个计算单元中确定目标计算单元,如此,对于业务提交的数据库实时自定义查询语句,通过对每个语句都能实现量化评分,并结合用户维度进行资源分配,从而对于执行用户自定义查询语句对应的查询任务,可为其分配合理的计算机资源,实现对有限的数据库资源进行实时的合理有效分配,提高资源利用率,提高数据库查询效率,也有利于进一步促进业务优化自身语句的提交质量。