CN110866033B - 一种用于预测查询资源占用量的特征确定方法及装置 - Google Patents
一种用于预测查询资源占用量的特征确定方法及装置 Download PDFInfo
- Publication number
- CN110866033B CN110866033B CN201810988060.7A CN201810988060A CN110866033B CN 110866033 B CN110866033 B CN 110866033B CN 201810988060 A CN201810988060 A CN 201810988060A CN 110866033 B CN110866033 B CN 110866033B
- Authority
- CN
- China
- Prior art keywords
- query
- tree structure
- data
- determining
- tree
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3442—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for planning or managing the needed capacity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/80—Database-specific techniques
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种用于预测查询资源占用量的特征确定方法及装置,获取待查询数据,确定所述待查询数据对应的查询计划数据,生成与所述查询计划数据对应的树型结构,基于所述树型结构,确定预设特征维度对应的特征维度值;其中,所述预设特征维度用于确定查询操作所占用的资源,并且所述预设特征维度的数量为多个。通过本发明实施例可以确定多个特征维度值,相比于仅有一个特征维度值来说,将多个特征维度值输入到监督式学习算法中,预测得到的查询资源更准确。
Description
技术领域
本发明涉及数据处理领域,更具体的说,涉及一种用于预测查询资源占用量的特征确定方法及装置。
背景技术
Impala是新型查询系统,它提供结构化查询语言SQL语义,能够查询存储在海杜普Hadoop的分布式文件系统HDFS(Hadoop Distributed File System)和HBase中的拍字节PB级大数据。
对于一个Impala查询来说,采用监督式学习算法来预测查询时所使用的内存空间,在使用监督式学习算法进行内存空间预测时,使用的特征为待处理文件总数量,但是仅将待处理文件总数量作为监督式学习算法的特征输入,会由于输入特征值较少,进而使得预测的内存占用空间不准确,影响后续查询任务的执行。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种用于预测查询资源占用量的特征确定方法及装置。
一种用于预测查询资源占用量的特征确定方法,包括:
获取待查询数据;其中,所述待查询数据为执行查询操作时输入的数据;
确定所述待查询数据对应的查询计划数据;其中,所述查询计划数据包括查询操作步骤以及查询操作步骤之间的层次关系;
生成与所述查询计划数据对应的树型结构;其中,所述树型结构中的子树对应所述查询计划数据中的查询操作步骤,并且,所述树型结构中子树之间的层次关系与所述查询计划数据中查询操作步骤之间的层次关系相符;
基于所述树型结构,确定预设特征维度对应的特征维度值;其中,所述预设特征维度用于确定查询操作所占用的资源,并且所述预设特征维度的数量为多个。
优选地,所述预设特征维度包括子树数量;
相应的,基于所述树型结构,确定预设特征维度对应的特征维度值,包括:
确定所述树型结构的子树数量值;
将所述子树数量值作为所述子树数量对应的特征维度值。
优选地,所述预设特征维度包括节点工作量;其中,所述节点工作量为每一子树对应的工作节点的节点平均工作量;
相应的,基于所述树型结构,确定预设特征维度对应的特征维度值,包括:
确定所述树型结构的每一子树对应的工作节点数量;
获取每一所述子树对应的数据处理总量;
针对每一所述子树,计算所述子树对应的数据处理总量与工作节点数量的比值;
将每一所述子树对应的比值作为相应的子树对应的节点工作量对应的特征维度值。
优选地,所述预设特征维度还包括节点平均工作量和节点最大工作量;
相应的,将每一所述子树对应的比值作为相应的子树对应的节点工作量对应的特征维度值后,还包括:
计算所有的所述子树对应的比值的平均值;
将所述平均值作为所述节点平均工作量对应的特征维度值;
从所有的所述子树对应的比值中选取出最大值;
将选取的最大值作为节点最大工作量对应的特征维度值。
优选地,所述预设特征维度包括底层最左子树对应的节点工作量;
相应的,基于所述树型结构,确定预设特征维度对应的特征维度值,包括:
确定所述树型结构对应的工作节点总数量;
获取所述树型结构中的底层最左子树的数据处理量;
将所述数据处理量与所述工作节点总数量的比值作为所述底层最左子树对应的节点工作量对应的特征维度值。
优选地,所述预设特征维度包括树深度值;
相应的,基于所述树型结构,确定预设特征维度对应的特征维度值,包括:
确定所述树型结构的深度值;
将所述深度值作为所述树深度值对应的特征维度值。
优选地,生成与所述查询计划数据对应的树型结构,包括:
对所述查询计划数据进行文本解析,得到所述树型结构。
一种用于预测查询资源占用量的特征确定装置,包括:
数据获取模块,用于获取待查询数据;其中,所述待查询数据为执行查询操作时输入的数据;
数据确定模块,用于确定所述待查询数据对应的查询计划数据;其中,所述查询计划数据包括查询操作步骤以及查询操作步骤之间的层次关系;
树生成模块,用于生成与所述查询计划数据对应的树型结构;其中,所述树型结构中的子树对应所述查询计划数据中的查询操作步骤,并且,所述树型结构中子树之间的层次关系与所述查询计划数据中查询操作步骤之间的层次关系相符;
维度值确定模块,用于基于所述树型结构,确定预设特征维度对应的特征维度值;其中,所述预设特征维度用于确定查询操作所占用的资源,并且所述预设特征维度的数量为多个。
一种存储介质,所述存储介质包括存储的程序,其中,所述程序执行上述的用于预测查询资源占用量的特征确定方法。
一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述的用于预测查询资源占用量的特征确定方法。
借由上述技术方案,本发明提供的用于预测查询资源占用量的特征确定方法及装置,获取待查询数据,确定所述待查询数据对应的查询计划数据,生成与所述查询计划数据对应的树型结构,基于所述树型结构,确定预设特征维度对应的特征维度值;其中,所述预设特征维度用于确定查询操作所占用的资源,并且所述预设特征维度的数量为多个。通过本发明实施例可以确定多个特征维度值,相比于仅有一个特征维度值来说,将多个特征维度值输入到监督式学习算法中,预测得到的查询资源(如,查询所占用的内存空间)更准确,能够提高查询过程对资源的利用率,优化资源的分配,有助于更加合理地执行查询任务。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的一种用于预测查询资源占用量的特征确定方法的方法流程图;
图2示出了本发明实施例提供的一种树型结构的结构示意图;
图3示出了本发明实施例提供的另一种用于预测查询资源占用量的特征确定方法的方法流程图;
图4示出了本发明实施例提供的再一种用于预测查询资源占用量的特征确定方法的方法流程图;
图5示出了本发明实施例提供的又一种用于预测查询资源占用量的特征确定方法的方法流程图;
图6示出了本发明实施例提供的一种用于预测查询资源占用量的特征确定装置的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明实施例提供了一种用于预测查询资源占用量的特征确定方法,查询资源占用量可以是内存占用空间。
参照图1,可以包括:
S11、获取待查询数据;
其中,所述待查询数据为执行查询操作时输入的数据;
具体的,待查询数据是用户想要查询的数据,当用户通过输入设备,如键盘或鼠标输入待查询数据后,可以获取到该待查询数据。
S12、确定所述待查询数据对应的查询计划数据;
其中,所述查询计划数据包括查询操作步骤以及查询操作步骤之间的层次关系。
具体的,可以通过Impala提供的查询计划explain命令,得到查询计划数据。查询计划数据中包含了查询该待查询数据的整个流程,即包括查询操作步骤以及查询操作步骤之间的层次关系。
S13、生成与所述查询计划数据对应的树型结构;
其中,所述树型结构中的子树对应所述查询计划数据中的查询操作步骤,并且,所述树型结构中子树之间的层次关系与所述查询计划数据中查询操作步骤之间的层次关系相符。
查询计划数据本身就是带有逻辑的数据,此时将带有逻辑结构的数据通过树型结构的方式展现。
参照图2,树型结构中每一子树中可以仅有左树有分支,右树没有分支。需要说明的是,当Impala查询中涉及到表关联操作时,可以形成树型结构。当Impala查询中不涉及到表关联操作时,也可以形成树型结构,但树型结构逻辑简单,查询操作步骤少。
另外,树型结构中每一子树还可以右树有分支,但是优选的,左树有分支,是因为右树的查询结果还需要通过网络资源发布出去,而左树的查询结果不需要发布出去,只需要进行本地存储即可。
可选的,在本实施例的基础上,步骤S13可以包括:
对所述查询计划数据进行文本解析,得到所述树型结构。
具体的,查询计划数据为文本数据,对查询计划数据进行文本解析,即从查询计划数据中确定查询层次,依据查询层次确定树型结构。
S14、基于所述树型结构,确定预设特征维度对应的特征维度值;
其中,所述预设特征维度用于确定查询操作所占用的资源,并且所述预设特征维度的数量为多个。
本实施例中,获取待查询数据,确定所述待查询数据对应的查询计划数据,生成与所述查询计划数据对应的树型结构,基于所述树型结构,确定预设特征维度对应的特征维度值;其中,所述预设特征维度用于确定查询操作所占用的资源,并且所述预设特征维度的数量为多个。通过本发明实施例可以确定多个特征维度值,相比于仅有一个特征维度值来说,将多个特征维度值输入到监督式学习算法中,预测得到的查询资源(如,查询所占用的内存空间)更准确,能够提高查询过程对资源的利用率,优化资源的分配,有助于更加合理地执行查询任务。
可选的,在上述任一实施例的基础上,对多个特征维度进行解释说明,具体如下。
1、所述预设特征维度包括子树数量;
子树数量值可以在一定程度上说明该查询的复杂程度,进而子树数量可以作为预测内存空间的一个特征。
相应的,步骤S14可以包括:
确定所述树型结构的子树数量值,将所述子树数量值作为所述子树数量对应的特征维度值。
具体的,参照图2,树型结构有多少个分支,就有多少个子树,进而可以确定树型结构的子树数量值,将所述子树数量值作为所述子树数量对应的特征维度值。
2、所述预设特征维度包括节点工作量;
其中,该节点工作量为每一子树对应的工作节点的节点平均工作量。本实施例中,由于节点数量不同时,每个节点的节点工作量不同,节点工作时需要占用内存,所以可以将节点工作量作为预测内存空间的一个特征。
相应的,参照图3,步骤S14可以包括:
S21、确定所述树型结构的每一子树对应的工作节点数量;
具体的,Impala为分布式查询系统,所以每一子树对应的子任务需要多个节点配合完成。此处需要获取处理每一子数据对应的子任务的工作节点数量。工作节点数量在文本解析时确定。
S22、获取每一所述子树对应的数据处理总量;
其中,数据处理总量在文本解析时确定。
S23、针对每一所述子树,计算所述子树对应的数据处理总量与工作节点数量的比值;
S24、将每一所述子树对应的比值作为相应的子树对应的节点工作量对应的特征维度值。
具体的,子树对应的数据处理总量与工作节点数量的比值即为子树对应的节点工作量对应的特征维度值。
3、所述预设特征维度还包括节点平均工作量和节点最大工作量;
由于节点工作时会占用内存,进而可以将节点平均工作量和节点最大工作量作为预测内存空间的一个特征。
相应的,步骤S24后,还可以包括:
S25、计算所有的所述子树对应的比值的平均值;
S26、将所述平均值作为所述节点平均工作量对应的特征维度值;
此处计算比值的平均值即可。
S27、从所有的所述子树对应的比值中选取出最大值;
S28、将选取的最大值作为节点最大工作量对应的特征维度值。
此处从所有的比值中选取出最大值即可。
4、所述预设特征维度包括底层最左子树对应的节点工作量;
根据Impala的机制,右树中的数据由于要分发到多个节点上所以比较小,而左树中的数据往往会比较大,因此选取底层最左子树对应的节点工作量作为预测内存空间的一个特征。
相应的,参照图5,步骤S14可以包括:
S31、确定所述树型结构对应的工作节点总数量;
其中,工作节点总数量为每一子树对应的工作节点数量之和。
S32、获取所述树型结构中的底层最左子树的数据处理量;
其中,底层最左子树为包括叶节点的子树。
S33、将所述数据处理量与所述工作节点总数量的比值作为所述底层最左子树对应的节点工作量对应的特征维度值。
此处计算数据处理量与所述工作节点总数量的比值,将该比值作为底层最左子树对应的节点工作量对应的特征维度值。
5、所述预设特征维度包括所述特征维度包括树深度值;
将树深度值作为预测内存空间的一个特征,是由于树的深度可以决定关联操作的数量,Impala的查询过程中如果出现比较多的关联操作,也是比较耗内存的。
相应的,步骤S14可以包括:
确定所述树型结构的深度值,将所述深度值作为所述树深度值对应的特征维度值。
需要说明的是,除了上述的特征维度外,特征维度还可以包括待处理文件总数量和预设关键词出现次数。
待处理文件总数量即为每一所述子树对应的数据处理量之和。预设关键词可以是join等,预设关键词是技术人员根据经验设定的,可以从查询计划数据中搜索预设关键词来确定预设关键词出现次数。
本实施例中,根据Impala的查询机制以及输出信息的结构,确定了多个预设特征维度,预设特征维度的数量越多,使用监督式学习算法预测的内存空间越准确,进而使用本实施例中的预设特征维度,可以更加准确的预测内存空间。
可选的,在上述特征确定方法的实施例的基础上,本发明的另一实施例提供了一种用于预测查询资源占用量的特征确定装置,参照图6,可以包括:
数据获取模块101,用于获取待查询数据;其中,所述待查询数据为执行查询操作时输入的数据;
数据确定模块102,用于确定所述待查询数据对应的查询计划数据;其中,所述查询计划数据包括查询操作步骤以及查询操作步骤之间的层次关系;
树生成模块103,用于生成与所述查询计划数据对应的树型结构;其中,所述树型结构中的子树对应所述查询计划数据中的查询操作步骤,并且,所述树型结构中子树之间的层次关系与所述查询计划数据中查询操作步骤之间的层次关系相符;
维度值确定模块104,用于基于所述树型结构,确定预设特征维度对应的特征维度值;其中,所述预设特征维度用于确定查询操作所占用的资源,并且所述预设特征维度的数量为多个。
进一步,树生成模块103用于生成与所述查询计划数据对应的树型结构时,具体用于:
对所述查询计划数据进行文本解析,得到所述树型结构。
本实施例中,获取待查询数据,确定所述待查询数据对应的查询计划数据,生成与所述查询计划数据对应的树型结构,基于所述树型结构,确定预设特征维度对应的特征维度值;其中,所述预设特征维度用于确定查询操作所占用的资源,并且所述预设特征维度的数量为多个。通过本发明实施例可以确定多个特征维度值,相比于仅有一个特征维度值来说,将多个特征维度值输入到监督式学习算法中,预测得到的查询资源(如,查询所占用的内存空间)更准确,能够提高查询过程对资源的利用率,优化资源的分配,有助于更加合理地执行查询任务。
需要说明的是,本实施例中的各个模块的工作过程,请参照上述实施例中的相应说明,在此不再赘述。
可选的,在上述任一特征确定装置的实施例的基础上,所述预设特征维度包括子树数量;相应的,维度值确定模块104可以包括:
第一确定子模块,用于确定所述树型结构的子树数量值;
第二确定子模块,用于将所述子树数量值作为所述子树数量对应的特征维度值。
所述预设特征维度包括节点工作量;
其中,所述节点工作量为每一子树对应的工作节点的节点平均工作量;
相应的,维度值确定模块104可以包括:
第三确定子模块,用于确定所述树型结构的每一子树对应的工作节点数量;
第一获取子模块,用于获取每一所述子树对应的数据处理总量;
第一计算子模块,用于针对每一所述子树,计算所述子树对应的数据处理总量与工作节点数量的比值;
第四确定子模块,用于将每一所述子树对应的比值作为相应的子树对应的节点工作量对应的特征维度值。
所述预设特征维度还包括节点平均工作量和节点最大工作量;相应的,维度值确定模块104还可以包括:
第二计算子模块,用于计算所有的所述子树对应的比值的平均值;
第五确定子模块,用于将所述平均值作为所述节点平均工作量对应的特征维度值;
选取子模块,用于从所有的所述子树对应的比值中选取出最大值;
第六确定子模块,用于将选取的最大值作为节点最大工作量对应的特征维度值。
所述预设特征维度包括底层最左子树对应的节点工作量;相应的,维度值确定模块104可以包括:
第七确定子模块,用于确定所述树型结构对应的工作节点总数量;
第二获取子模块,用于获取所述树型结构中的底层最左子树的数据处理量;
第八确定子模块,用于将所述数据处理量与所述工作节点总数量的比值作为所述底层最左子树对应的节点工作量对应的特征维度值。
所述预设特征维度包括树深度值;相应的,维度值确定模块104可以包括:
第九确定子模块,用于确定所述树型结构的深度值;
第十确定子模块,用于将所述深度值作为所述树深度值对应的特征维度值。
本实施例中,根据Impala的查询机制以及输出信息的结构,确定了多个预设特征维度,预设特征维度的数量越多,使用监督式学习算法预测的内存空间越准确,进而使用本实施例中的预设特征维度,可以更加准确的预测内存空间。
需要说明的是,本实施例中的各个模块和子模块的工作过程,请参照上述实施例中的相应说明,在此不再赘述。
可选的,本发明的实施例还提供了一种用于预测查询资源占用量的特征确定装置,所述特征确定装置包括处理器和存储器,上述数据获取模块、数据确定模块、树生成模块、和维度值确定模块等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来使得预测得到的内存空间更准确。存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现所述用于预测查询资源占用量的特征确定方法。
本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行所述用于预测查询资源占用量的特征确定方法。
本发明实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:
一种用于预测查询资源占用量的特征确定方法,包括:
获取待查询数据;其中,所述待查询数据为执行查询操作时输入的数据;
确定所述待查询数据对应的查询计划数据;其中,所述查询计划数据包括查询操作步骤以及查询操作步骤之间的层次关系;
生成与所述查询计划数据对应的树型结构;其中,所述树型结构中的子树对应所述查询计划数据中的查询操作步骤,并且,所述树型结构中子树之间的层次关系与所述查询计划数据中查询操作步骤之间的层次关系相符;
基于所述树型结构,确定预设特征维度对应的特征维度值;其中,所述预设特征维度用于确定查询操作所占用的资源,并且所述预设特征维度的数量为多个。
进一步,所述预设特征维度包括子树数量;
相应的,基于所述树型结构,确定预设特征维度对应的特征维度值,包括:
确定所述树型结构的子树数量值;
将所述子树数量值作为所述子树数量对应的特征维度值。
进一步,所述预设特征维度包括节点工作量;其中,所述节点工作量为每一子树对应的工作节点的节点平均工作量;
相应的,基于所述树型结构,确定预设特征维度对应的特征维度值,包括:
确定所述树型结构的每一子树对应的工作节点数量;
获取每一所述子树对应的数据处理总量;
针对每一所述子树,计算所述子树对应的数据处理总量与工作节点数量的比值;
将每一所述子树对应的比值作为相应的子树对应的节点工作量对应的特征维度值。
进一步,所述预设特征维度还包括节点平均工作量和节点最大工作量;
相应的,将每一所述子树对应的比值作为相应的子树对应的节点工作量对应的特征维度值后,还包括:
计算所有的所述子树对应的比值的平均值;
将所述平均值作为所述节点平均工作量对应的特征维度值;
从所有的所述子树对应的比值中选取出最大值;
将选取的最大值作为节点最大工作量对应的特征维度值。
进一步,所述预设特征维度包括底层最左子树对应的节点工作量;
相应的,基于所述树型结构,确定预设特征维度对应的特征维度值,包括:
确定所述树型结构对应的工作节点总数量;
获取所述树型结构中的底层最左子树的数据处理量;
将所述数据处理量与所述工作节点总数量的比值作为所述底层最左子树对应的节点工作量对应的特征维度值。
进一步,所述预设特征维度包括树深度值;
相应的,基于所述树型结构,确定预设特征维度对应的特征维度值,包括:
确定所述树型结构的深度值;
将所述深度值作为所述树深度值对应的特征维度值。
进一步,生成与所述查询计划数据对应的树型结构,包括:
对所述查询计划数据进行文本解析,得到所述树型结构。
本文中的设备可以是服务器、PC、PAD、手机等。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:
一种用于预测查询资源占用量的特征确定方法,包括:
获取待查询数据;其中,所述待查询数据为执行查询操作时输入的数据;
确定所述待查询数据对应的查询计划数据;其中,所述查询计划数据包括查询操作步骤以及查询操作步骤之间的层次关系;
生成与所述查询计划数据对应的树型结构;其中,所述树型结构中的子树对应所述查询计划数据中的查询操作步骤,并且,所述树型结构中子树之间的层次关系与所述查询计划数据中查询操作步骤之间的层次关系相符;
基于所述树型结构,确定预设特征维度对应的特征维度值;其中,所述预设特征维度用于确定查询操作所占用的资源,并且所述预设特征维度的数量为多个。
进一步,所述预设特征维度包括子树数量;
相应的,基于所述树型结构,确定预设特征维度对应的特征维度值,包括:
确定所述树型结构的子树数量值;
将所述子树数量值作为所述子树数量对应的特征维度值。
进一步,所述预设特征维度包括节点工作量;其中,所述节点工作量为每一子树对应的工作节点的节点平均工作量;
相应的,基于所述树型结构,确定预设特征维度对应的特征维度值,包括:
确定所述树型结构的每一子树对应的工作节点数量;
获取每一所述子树对应的数据处理总量;
针对每一所述子树,计算所述子树对应的数据处理总量与工作节点数量的比值;
将每一所述子树对应的比值作为相应的子树对应的节点工作量对应的特征维度值。
进一步,所述预设特征维度还包括节点平均工作量和节点最大工作量;
相应的,将每一所述子树对应的比值作为相应的子树对应的节点工作量对应的特征维度值后,还包括:
计算所有的所述子树对应的比值的平均值;
将所述平均值作为所述节点平均工作量对应的特征维度值;
从所有的所述子树对应的比值中选取出最大值;
将选取的最大值作为节点最大工作量对应的特征维度值。
进一步,所述预设特征维度包括底层最左子树对应的节点工作量;
相应的,基于所述树型结构,确定预设特征维度对应的特征维度值,包括:
确定所述树型结构对应的工作节点总数量;
获取所述树型结构中的底层最左子树的数据处理量;
将所述数据处理量与所述工作节点总数量的比值作为所述底层最左子树对应的节点工作量对应的特征维度值。
进一步,所述预设特征维度包括树深度值;
相应的,基于所述树型结构,确定预设特征维度对应的特征维度值,包括:
确定所述树型结构的深度值;
将所述深度值作为所述树深度值对应的特征维度值。
进一步,生成与所述查询计划数据对应的树型结构,包括:
对所述查询计划数据进行文本解析,得到所述树型结构。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (9)
1.一种用于预测查询资源占用量的特征确定方法,其特征在于,包括:
获取待查询数据;其中,所述待查询数据为执行查询操作时输入的数据;
确定所述待查询数据对应的查询计划数据;其中,所述查询计划数据包括查询操作步骤以及查询操作步骤之间的层次关系;
生成与所述查询计划数据对应的树型结构;其中,所述树型结构中的子树对应所述查询计划数据中的查询操作步骤,并且,所述树型结构中子树之间的层次关系与所述查询计划数据中查询操作步骤之间的层次关系相符;
基于所述树型结构,确定预设特征维度对应的特征维度值;其中,所述预设特征维度用于确定查询操作所占用的资源,并且所述预设特征维度的数量为多个;
其中,所述预设特征维度包括节点工作量;其中,所述节点工作量为每一子树对应的工作节点的节点平均工作量;
相应的,基于所述树型结构,确定预设特征维度对应的特征维度值,包括:
确定所述树型结构的每一子树对应的工作节点数量;
获取每一所述子树对应的数据处理总量;
针对每一所述子树,计算所述子树对应的数据处理总量与工作节点数量的比值;
将每一所述子树对应的比值作为相应的子树对应的节点工作量对应的特征维度值。
2.根据权利要求1所述的特征确定方法,其特征在于,所述预设特征维度包括子树数量;
相应的,基于所述树型结构,确定预设特征维度对应的特征维度值,包括:
确定所述树型结构的子树数量值;
将所述子树数量值作为所述子树数量对应的特征维度值。
3.根据权利要求1所述的特征确定方法,其特征在于,所述预设特征维度还包括节点平均工作量和节点最大工作量;
相应的,将每一所述子树对应的比值作为相应的子树对应的节点工作量对应的特征维度值后,还包括:
计算所有的所述子树对应的比值的平均值;
将所述平均值作为所述节点平均工作量对应的特征维度值;
从所有的所述子树对应的比值中选取出最大值;
将选取的最大值作为节点最大工作量对应的特征维度值。
4.根据权利要求1所述的特征确定方法,其特征在于,所述预设特征维度包括底层最左子树对应的节点工作量;
相应的,基于所述树型结构,确定预设特征维度对应的特征维度值,包括:
确定所述树型结构对应的工作节点总数量;
获取所述树型结构中的底层最左子树的数据处理量;
将所述数据处理量与所述工作节点总数量的比值作为所述底层最左子树对应的节点工作量对应的特征维度值。
5.根据权利要求1所述的特征确定方法,其特征在于,所述预设特征维度包括树深度值;
相应的,基于所述树型结构,确定预设特征维度对应的特征维度值,包括:
确定所述树型结构的深度值;
将所述深度值作为所述树深度值对应的特征维度值。
6.根据权利要求1所述的特征确定方法,其特征在于,生成与所述查询计划数据对应的树型结构,包括:
对所述查询计划数据进行文本解析,得到所述树型结构。
7.一种用于预测查询资源占用量的特征确定装置,其特征在于,包括:
数据获取模块,用于获取待查询数据;其中,所述待查询数据为执行查询操作时输入的数据;
数据确定模块,用于确定所述待查询数据对应的查询计划数据;其中,所述查询计划数据包括查询操作步骤以及查询操作步骤之间的层次关系;
树生成模块,用于生成与所述查询计划数据对应的树型结构;其中,所述树型结构中的子树对应所述查询计划数据中的查询操作步骤,并且,所述树型结构中子树之间的层次关系与所述查询计划数据中查询操作步骤之间的层次关系相符;
维度值确定模块,用于基于所述树型结构,确定预设特征维度对应的特征维度值;其中,所述预设特征维度用于确定查询操作所占用的资源,并且所述预设特征维度的数量为多个;
其中,所述预设特征维度包括节点工作量;其中,所述节点工作量为每一子树对应的工作节点的节点平均工作量;
相应的,维度值确定模块,具体用于确定所述树型结构的每一子树对应的工作节点数量;获取每一所述子树对应的数据处理总量;针对每一所述子树,计算所述子树对应的数据处理总量与工作节点数量的比值;将每一所述子树对应的比值作为相应的子树对应的节点工作量对应的特征维度值。
8.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,所述程序执行权利要求1至6中任意一项所述的用于预测查询资源占用量的特征确定方法。
9.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至6中任意一项所述的用于预测查询资源占用量的特征确定方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810988060.7A CN110866033B (zh) | 2018-08-28 | 2018-08-28 | 一种用于预测查询资源占用量的特征确定方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810988060.7A CN110866033B (zh) | 2018-08-28 | 2018-08-28 | 一种用于预测查询资源占用量的特征确定方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110866033A CN110866033A (zh) | 2020-03-06 |
CN110866033B true CN110866033B (zh) | 2022-06-21 |
Family
ID=69651379
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810988060.7A Active CN110866033B (zh) | 2018-08-28 | 2018-08-28 | 一种用于预测查询资源占用量的特征确定方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110866033B (zh) |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101083608A (zh) * | 2006-05-30 | 2007-12-05 | 华为技术有限公司 | 设备管理树节点信息的查询方法及其终端设备 |
CN101464894A (zh) * | 2008-12-30 | 2009-06-24 | 北京中创信测科技股份有限公司 | 数据查询方法和系统 |
US7774198B2 (en) * | 2006-10-06 | 2010-08-10 | Xerox Corporation | Navigation system for text |
CN102270232A (zh) * | 2011-07-21 | 2011-12-07 | 华中科技大学 | 一种存储优化的语义数据查询系统 |
CN103678589A (zh) * | 2013-12-12 | 2014-03-26 | 用友软件股份有限公司 | 一种基于等价类的数据库内核查询优化方法 |
CN104820697A (zh) * | 2015-04-28 | 2015-08-05 | 迈德高武汉生物医学信息科技有限公司 | 一种医疗数据挖掘方法及系统 |
CN105005606A (zh) * | 2015-07-03 | 2015-10-28 | 华南理工大学 | 基于MapReduce的XML数据查询方法和系统 |
CN106384050A (zh) * | 2016-09-13 | 2017-02-08 | 哈尔滨工程大学 | 一种基于最大频繁子图挖掘的动态污点分析方法 |
CN106528551A (zh) * | 2015-09-09 | 2017-03-22 | 北京国双科技有限公司 | 申请内存的方法和装置 |
CN106649828A (zh) * | 2016-12-29 | 2017-05-10 | 中国银联股份有限公司 | 一种数据查询方法及系统 |
CN107229704A (zh) * | 2017-05-25 | 2017-10-03 | 深圳大学 | 一种基于ksp算法的资源描述框架查询方法和系统 |
CN107491508A (zh) * | 2017-08-01 | 2017-12-19 | 浙江大学 | 一种基于循环神经网络的数据库查询时间预测方法 |
CN108108438A (zh) * | 2017-12-20 | 2018-06-01 | 深圳市恒腾网络有限公司 | 行为数据的识别方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090024563A1 (en) * | 2007-07-17 | 2009-01-22 | Vibhuti Singh Sengar | Method and system for estimating per query resource consumption |
-
2018
- 2018-08-28 CN CN201810988060.7A patent/CN110866033B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101083608A (zh) * | 2006-05-30 | 2007-12-05 | 华为技术有限公司 | 设备管理树节点信息的查询方法及其终端设备 |
US7774198B2 (en) * | 2006-10-06 | 2010-08-10 | Xerox Corporation | Navigation system for text |
CN101464894A (zh) * | 2008-12-30 | 2009-06-24 | 北京中创信测科技股份有限公司 | 数据查询方法和系统 |
CN102270232A (zh) * | 2011-07-21 | 2011-12-07 | 华中科技大学 | 一种存储优化的语义数据查询系统 |
CN103678589A (zh) * | 2013-12-12 | 2014-03-26 | 用友软件股份有限公司 | 一种基于等价类的数据库内核查询优化方法 |
CN104820697A (zh) * | 2015-04-28 | 2015-08-05 | 迈德高武汉生物医学信息科技有限公司 | 一种医疗数据挖掘方法及系统 |
CN105005606A (zh) * | 2015-07-03 | 2015-10-28 | 华南理工大学 | 基于MapReduce的XML数据查询方法和系统 |
CN106528551A (zh) * | 2015-09-09 | 2017-03-22 | 北京国双科技有限公司 | 申请内存的方法和装置 |
CN106384050A (zh) * | 2016-09-13 | 2017-02-08 | 哈尔滨工程大学 | 一种基于最大频繁子图挖掘的动态污点分析方法 |
CN106649828A (zh) * | 2016-12-29 | 2017-05-10 | 中国银联股份有限公司 | 一种数据查询方法及系统 |
CN107229704A (zh) * | 2017-05-25 | 2017-10-03 | 深圳大学 | 一种基于ksp算法的资源描述框架查询方法和系统 |
CN107491508A (zh) * | 2017-08-01 | 2017-12-19 | 浙江大学 | 一种基于循环神经网络的数据库查询时间预测方法 |
CN108108438A (zh) * | 2017-12-20 | 2018-06-01 | 深圳市恒腾网络有限公司 | 行为数据的识别方法及装置 |
Non-Patent Citations (2)
Title |
---|
数据库系统性能模型建模方法综述;张锦文 等;《计算机应用研究》;20180417;第36卷(第03期);641-648,656 * |
数据集成系统中多查询优化的研究;刘峰;《科学技术与工程》;20090615;第9卷(第12期);3358-3360 * |
Also Published As
Publication number | Publication date |
---|---|
CN110866033A (zh) | 2020-03-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210224114A1 (en) | Capacity Analysis Using Closed-System Modules | |
CN106919370B (zh) | 一种对象属性值的获取方法及装置 | |
US11228489B2 (en) | System and methods for auto-tuning big data workloads on cloud platforms | |
US20140280946A1 (en) | System and process to recommend cloud service cloud configuration based on service similarity | |
CN106326309B (zh) | 一种数据查询方法和装置 | |
US8843632B2 (en) | Allocation of resources between web services in a composite service | |
CN108268476B (zh) | 数据查询方法及装置 | |
CN110020353B (zh) | 网页表单的构建方法及装置 | |
CN109725989B (zh) | 一种任务执行的方法及装置 | |
CN105989015B (zh) | 一种数据库扩容方法和装置以及访问数据库的方法和装置 | |
CN110019298B (zh) | 数据处理方法和装置 | |
KR20180002758A (ko) | 데이터 처리 방법 및 시스템 | |
CN109033365B (zh) | 一种数据处理方法及相关设备 | |
CN116414559A (zh) | 算力统一标识建模、分配的方法、存储介质及电子设备 | |
CN110737717A (zh) | 一种数据库迁移方法及装置 | |
CN106610989B (zh) | 搜索关键词聚类方法及装置 | |
US20240176657A1 (en) | Task processing method and apparatus, electronic device, storage medium and program product | |
CN110866033B (zh) | 一种用于预测查询资源占用量的特征确定方法及装置 | |
CN109977317B (zh) | 数据查询方法及装置 | |
EP4028884A1 (en) | Optimization of workloads based on constraints | |
CN110019497B (zh) | 一种数据读取方法及装置 | |
CN110019357B (zh) | 数据库查询脚本生成方法及装置 | |
CN111125087A (zh) | 数据的存储方法及装置 | |
CN111143460A (zh) | 基于大数据的经济领域的数据的检索方法、装置与处理器 | |
CN106557469B (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 |