CN106446134A - 基于谓词规约和代价估算的局部多查询优化方法 - Google Patents
基于谓词规约和代价估算的局部多查询优化方法 Download PDFInfo
- Publication number
- CN106446134A CN106446134A CN201610833428.3A CN201610833428A CN106446134A CN 106446134 A CN106446134 A CN 106446134A CN 201610833428 A CN201610833428 A CN 201610833428A CN 106446134 A CN106446134 A CN 106446134A
- Authority
- CN
- China
- Prior art keywords
- node
- query
- expense
- stipulations
- predicate
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000005457 optimization Methods 0.000 title claims abstract description 39
- 238000012545 processing Methods 0.000 claims abstract description 11
- 238000013507 mapping Methods 0.000 claims description 23
- 230000005540 biological transmission Effects 0.000 claims description 19
- 230000008569 process Effects 0.000 claims description 12
- 230000008859 change Effects 0.000 claims description 8
- 230000009467 reduction Effects 0.000 claims description 7
- 230000003247 decreasing effect Effects 0.000 abstract 1
- 239000000203 mixture Substances 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 238000012216 screening Methods 0.000 description 4
- 101100328884 Caenorhabditis elegans sqt-3 gene Proteins 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000007423 decrease Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开一种基于谓词规约和代价估算的局部多查询优化方法,属于大数据查询优化领域,本发明方法为:首先利用数据查询***已有的优化器对查询集合中的查询分别进行优化,并以查询树的形式表示,得到优化后的查询树集合;然后结合局部多查询优化方法,通过多次迭代,对查询之间相同或相近的子任务进行等价或规约处理,生成全局多查询计划树;最后结合生成的全局多查询计划和子任务之间的规约关系,根据代价模型估算中间结果重用开销,判断直接执行子任务还是重用中间结果,对全局多查询计划进行优化。本发明充分考虑中间结果利用和查询并发之间的平衡,减少重复操作,有效提升查询性能。
Description
技术领域
本发明涉及大数据查询优化领域,尤其涉及一种基于谓词规约和代价估算的局部多查询优化方法。
背景技术
早期查询优化和调度等问题的研究主要针对单查询,但随着并发量的提升,以及数据查询***的不断改进,查询并发处理已经成为现代数据查询***必不可少的功能。当并发查询由相关(涉及相同或相近操作)的查询构成时,传统的单查询优化方法并不考虑查询之间的相关性,从而限制了***查询性能的提升。
多查询优化是当***同时输入多个查询时,通过对该批查询进行分析,将其中涉及相同或相近操作的部分进行合并,生成全局多查询计划。通过该多查询计划的执行来同时完成多个查询,提高查询效率。
多查询优化方法可以分为两类:一类是全局多查询优化方法,其输入为未经优化的查询集合,此类方法的优点是生成的候选执行计划数量大,输出的结果往往较优,缺点是优化搜索开销高,同时由于无法利用数据查询***的优化器,因而实现难度较高;另一类是局部多查询优化方法,其输入为数据查询***优化器输出的查询集合,此类方法的优点是搜索空间较小,同时较易实现。由于局部多查询优化方法往往不考虑重用中间结果带来的开销,因而在实际执行中可能导致重用中间结果的开销高于直接执行的开销,反而降低了***查询性能。
现有多查询优化方法在利用代价函数估算查询计划开销时,仅仅考虑了I/O开销,即查询处理所涉及的磁盘页面数,而忽视了CPU计算开销和网络传输开销。然而,当底层采用分布式计算架构(如大部分的大数据查询***)并且存在连接操作时,CPU计算和网络传输的开销不可忽略。此时原有的代价模型显然无法准确地估计查询的开销。
发明内容
针对以上描述的现有技术的不足,本发明提供了基于谓词规约和代价估算的局部多查询优化方法,能够对查询之间相同或相近的中间结果加以利用,减少重复操作,从而提升并发查询性能,减少查询响应时间。
基于谓词规约和代价估算的局部多查询优化方法分为预处理、局部多查询优化处理和多查询计划优化三个阶段,具体实施步骤如下:
(1)预处理阶段:
步骤(1-1),利用数据查询***已有的查询优化器,对查询集合中的每条查询进行优化,分别找到最优的查询计划,并以查询计划树的形式表示,最后得到查询计划树集合;
步骤(1-2),重新定义查询计划树中的节点编号;
步骤(1-3),定义节点映射关系map<Node key,Node value>M,并将M初始化为空;
步骤(1-4),将所有的查询计划树中的节点添加至全局多查询计划树中,并在全局多查询计划树中添加“超根节点”;
在步骤(1-2)中,重写查询计划树中的节点编号是用于生成全局多查询计划树中节点的序号。
在步骤(1-3)中,映射关系map<Node key,Node value>M表明key节点将会重用value节点得到的结果,map为数据类型,M为变量名称,属于map数据类型,用于存储节点key到节点value的映射关系。
在步骤(1-4)中,“超根节点”指向查询计划树集合中各个查询的根节点。
本发明使用局部多查询优化方法,利用数据查询***已有的查询优化器为每条查询语句找到优化后的查询计划,减少了算法搜索空间,缩短了查询优化算法执行时间。
(2)局部多查询优化处理阶段:
步骤(2-1),遍历查询全局多查询计划树中的节点集合V={v1,v2,...,vn},若集合V中存在与当前节点等价的节点,选择节点集合V中等价查询节点中编号最小的节点vj *,进行合并操作,用vj *代替所有vi∈V-{vj *};
步骤(2-2),对于每个节点vi,找到符合“最强归约条件”的子任务taskj *,在M中添加vj *到vi,的映射,通过有向线段连接vj *→vi,并改变vj *的操作描述,以节点vi所对应的子任务taski的结果作为子任务taskj *的输入;
步骤(2-3),重复步骤(2-1)和步骤(2-2),对全局多查询计划树中的节点进行等价替换和规约,直到无法进一步简化全局多查询计划树为止;
在步骤(2-1)中,判断两个节点是否属于等价关系的过程主要包括:
(a)以两个节点的类型一致并且执行在相同的表和列上为条件进行判断,如不满足条件则返回false,表明两个节点不符合等价关系;
(b)根据节点类型分别进行等价关系判定:若节点均为磁盘扫描节点,则需要根据节点中的谓词,判断两个节点是否是对于相同列上相同范围的数据选择,若符合条件,则返回true,表明等价关系;反之返回false,表明不符合等价关系;
(c)若节点均为连接节点,则首先需要通过判断连接条件是否相同,若相同,则递归判断其左右孩子是否等价,由于连接操作可能存在两种树形结构,即左右孩子节点交换,因此需要分别判断。如果其中一种树形符合等价关系,则返回true表明符合等价关系,反之返回false;
(d)若节点为其他节点,包括聚合操作节点以及数据传输节点,则递归判断其孩子节点是否等价。
在步骤(2-2)中,vj *→vi表示数据的流动方向。
在步骤(2-2)中,对于每个子任务taski,如果taski的执行结果包含了其他子任务的结果,则认为其他子任务可以被规约到taski。能够被规约到taski的所有子任务中,结果与taski最相近的子任务被称为符合“最强归约条件”的子任务taskj *。
在步骤(2-2)中,所述的结果为任务执行完成后得到的中间数据。
在步骤(2-3)中,判断全局多查询计划树中的节点是否属于规约关系的过程主要包括:
首先,判断两个节点的类型是否均为磁盘扫描节点,如不满足条件则返回false,表明两个节点不符合规约关系;
其次,判断两个节点是否执行在相同的表和列上,若不满足条件,则返回false,表明两个节点不符合等价关系;
最后,根据规约关系表判断两个节点的规约关系,若符合规约关系则返回true,反之返回false。规约关系表如表1所示。
表1归约关系依赖表
①(a1=>b1and a2=>b2)or(a1=>b2and a2=>b1)or(a=>b1)or(a=>b2)
上表中的m、n表示整数或浮点数,当谓词a、b中的m和n符合关系表中的大小关系时,即表明a可以规约到b。当b由b1和b2两个谓词以and关系组成时,同样需要判断a与b1、b2的规约关系。例如b由b1:col1<8与b2:col1>3组成,a为col1>2,此时b2可以规约到a,因此b可以规约到a。
在步骤(2-3)中,由于步骤(2-1)和步骤(2-2)的过程会改变全局多查询计划树的结构,从而导致全局多查询计划树节点对应任务的执行开销发生变化,因此重复步骤(2-1)和步骤(2-2),对全局多查询计划树中的节点进行等价替换和规约,直到无法进一步简化全局多查询计划树为止。
(3)多查询计划优化阶段:
步骤(3-1),获取局部多查询优化处理阶段得到的映射关系和全局多查询计划树;
步骤(3-2),根据映射关系map<Node key,Node value>M,遍历全局多查询计划树中的节点,若遍历完成,则执行步骤(3-8);
步骤(3-3),根据不同任务对应的代价模型,估算直接开销和重用开销;
步骤(3-4),对比重用开销和直接开销,若重用开销大于直接开销,则执行步骤(3-5);若重用开销小于直接开销,则执行步骤(3-6);
步骤(3-5),将映射关系中节点对应的关系映射为自己,不利用中间结果直接执行节点对应的任务,然后执行步骤(3-7);
步骤(3-6),重复步骤(3-3)和步骤(3-4),判断是否存在重用开销更低的节点,若存在则更新映射关系,将该节点映射到重用开销更低的节点;
步骤(3-7),重复步骤(3-2);
步骤(3-8),返回全局多查询计划树。
步骤(3-3)中,若映射关系中某个节点被映射到另一个节点,表明该节点对应的任务执行结果依赖于另一个节点(依赖节点)对应任务的执行结果。
在步骤(3-3)中,由于查询由多个子任务组成,因此根据不同任务对应的代价模型估算直接开销、重用开销以及中间结果的网络传输开销。
在步骤(3-3)中,所述的直接开销为全局多查询计划树中的节点直接执行对应任务的CPU计算开销;所述的重用开销为依赖节点对应任务的CPU计算开销以及对所依赖节点对应任务产生的结果进行网络传输和计算的开销。
在步骤(3-3)中,查询计划树有多个计划节点组成,每个节点对应查询中的一个任务,主要针对磁盘扫描任务,连接操作任务和网络传输任务进行建模,根据不同节点,估算不同任务的开销;代价模型及代价估算方法如下:
(a)磁盘扫描节点
当出现磁盘扫描节点时,表示将数据从磁盘读取至内存,并根据谓词筛选符合条件的数据的过程。数据读取代价由磁臂移动的平均寻道时间tseek、磁头平均转动延迟时间tlatency以及数据读取时间tread组成,谓词筛选的代价取决于具体的谓词以及数据分布;
当查询计划树节点为磁盘扫描节点时,使用磁盘扫描代价模型估算磁盘扫描任务的代价。
(b)连接操作节点
连接操作的时间由计算元组哈希值的时间thashTuple、将为右表数据在内存中构建哈希表的时间tbuild、将参与连接元组***至哈希表的时间tinsertTuple以及左右表元组完成连接操作的时间tjoinTuple组成,各个执行时间主要由机器CPU性能,左表和右表的大小决定;
当查询计划树节点为连接操作节点时,使用连接操作代价模型估算连接操作任务的代价。
(c)数据传输节点
数据传输节点主要负责接受和汇聚传输得到的数据。数据传输任务会在不同主机上并行执行,因此该节点对应操作的完成时刻texchange取决于最后完成数据传输任务的时刻,传输的时间开销主要由字节数据量TransferByte和当前集群中的网络带宽Netband决定;
当查询计划树节点为数据传输节点时,使用数据传输代价模型估算数据传输任务的代价。
本发明在查询处理过程中构建代价模型,对不同操作给出了相应查询处理代价定义,提高了查询代价估算的准确性,便于算法选出高效的多查询计划。
在步骤(3-6),重用开销小于直接执行该节点对应任务的开销,表明可以使用所依赖任务的中间结果,此时重复步骤(3-3)和步骤(3-4),判断是否存在重用开销更低的节点,若存在则更新映射关系,将该节点映射到重用开销更低的节点。
本发明利用数据查询***已有的查询优化器为每条查询语句找到优化后的查询计划,经过多次迭代对查询计划之间相同或相近的部分进行等价替换或规约,生成全局多查询计划,并通过估算重用开销,判断直接执行任务还是重用中间结果,对全局多查询计划进行优化,减少了查询响应时间。本发明相对传统多查询优化方法的优点包括:
(1)使用局部多查询优化方法,利用数据查询***已有的查询优化器为每条查询语句找到优化后的查询计划,减少了算法搜索空间,缩短了查询优化算法执行时间;
(2)查询处理过程中构建代价模型,对不同操作给出了相应查询处理代价定义,提高了查询代价估算的准确性,便于算法选出高效的多查询计划;
(3)对生成的全局多查询计划进行优化,充分考虑中间结果重用产生的开销,避免了后续任务等待时间过长,保证了***并发,提升了查询执行效率。
附图说明
图1:基于谓词规约和代价估算的局部多查询优化方法流程图;
图2:查询计划树示意图。
具体实施方式
为了更为具体地描述本发明,下面结合附图及具体实施方式对本发明的技术方案进行详细说明。
如图1所示,基于谓词规约和代价估算的局部多查询优化方法分为预处理、局部多查询优化处理和多查询计划优化三个阶段。
(1)预处理阶段的主要步骤包括:
步骤(1-1),利用数据查询***已有的查询优化器,对输入的查询集合中的每条查询进行优化,分别找到最优的查询计划,并以查询计划树的形式表示,最后得到查询计划树集合;
查询计划树表示为T(V,E,D),V是查询计划树中所有节点的集合,每个子任务对应一个查询计划树节点,节点包含一些操作信息(例如操作所涉及表和列等),E是查询计划树中所有边的集合,D为查询节点具体操作的描述(包括操作中涉及的谓词等)。查询计划树叶子节点为磁盘扫描节点,负责数据的读取,非叶子节点代表不同的代数操作。非叶子节点使用来自于其孩子节点的数据,节点之间以一条边连接,查询计划树如图2所示;
步骤(1-2),重新定义查询中的节点编号,用于生成全局多查询计划树中节点的序号;
步骤(1-3),定义节点映射关系map<Node key,Node value>M,并将M初始化为空;该映射关系表明key节点将会重用value节点得到的结果;然后将所有的节点添加至全局多查询计划树中,并在全局多查询计划树中添加“超根节点”,该节点指向查询计划树集合中各个查询的根节点。
(2)局部多查询优化处理阶段的主要步骤包括:
步骤(2-1),遍历查询节点的集合V={v1,v2,...,vn},若集合V中存在与当前节点等价的节点,选择集合V中等价查询节点中编号最小的点vj *,进行合并操作,即用vj *代替所有vi∈V-{vj *};
判断两个节点是否属于等价关系的过程主要包括:
(a)以两个节点的类型一致并且执行在相同的表和列上为条件进行判断,如不满足条件则返回false,表明两个节点不符合等价关系;
(b)根据节点类型分别进行等价关系判定:若节点均为磁盘扫描节点,则需要根据节点中的谓词,判断两个节点是否是对于相同列上相同范围的数据选择,若符合条件,则返回true,表明等价关系;反之返回false,表明不符合等价关系;
(c)若节点均为连接节点,则首先需要通过判断连接条件是否相同,若相同,则递归判断其左右孩子是否等价,由于连接操作可能存在两种树形结构,即左右孩子节点交换,因此需要分别判断。如果其中一种树形符合等价关系,则返回true表明符合等价关系,反之返回false;
(d)若节点为其他节点,包括聚合操作节点以及数据传输节点,则递归判断其孩子节点是否等价。
步骤(2-2),对于每个节点vi,找到符合“最强归约条件”的子任务taskj *,在M中添加vj *到vi,的映射,通过有向线段连接vj *→vi,并改变vj *的操作描述,以节点vi所对应的子任务taski的结果作为子任务taskj *的输入;
对于每个子任务taski,如果taski的结果包含了其他子任务的结果,则认为其他子任务可以被规约到taski。能够被规约到taski的所有子任务中,结果与taski最相近的子任务被称为符合“最强归约条件”的子任务taskj *。
判断节点是否属于规约关系的过程主要包括:
首先,判断两个节点的类型是否均为磁盘扫描节点,如不满足条件则返回false,表明两个节点不符合规约关系;
其次,判断两个节点是否执行在相同的表和列上,若不满足条件,则返回false,表明两个节点不符合等价关系;
最后,根据规约关系表判断两个节点的规约关系,若符合规约关系则返回true,,反之返回false。规约关系表如表1所示。
步骤(2-3),由于步骤(2-1)和步骤(2-2)的过程会改变全局多查询计划树的结构,从而导致全局多查询计划树节点对应任务的执行开销发生变化,重复步骤(2-1)和步骤(2-2),对计划树中的节点进行等价替换和规约,直到无法进一步简化全局多查询计划树为止。
表1归约关系依赖表
①(a1=>b1and a2=>b2)or(a1=>b2and a2=>b1)or(a=>b1)or(a=>b2)
(3)多查询计划优化阶段的主要包括以下步骤:
步骤(3-1),获取局部多查询优化处理阶段得到的映射关系和全局多查询计划树;
步骤(3-2),根据映射关系map<Node key,Node value>M,遍历全局多查询计划树中的节点,若遍历完成,则执行步骤(3-8);
步骤(3-3),由于查询由多个子任务组成,根据不同任务对应的代价模型,估算直接开销、重用开销以及中间结果的网络传输开销;
代价估算方法如下所示:
(a)磁盘扫描节点
当出现磁盘扫描节点时,表示将数据从磁盘读取至内存,并根据谓词筛选符合条件的数据的过程。数据读取代价由磁臂移动的平均寻道时间tseek、磁头平均转动延迟时间tlatency以及数据读取时间tread组成,谓词筛选的代价取决于具体的谓词以及数据分布;
(b)连接操作节点
连接操作的时间由计算元组哈希值的时间thashTuple、将为右表数据在内存中构建哈希表的时间tbuild、将参与连接元组***至哈希表的时间tinsertTuple以及左右表元组完成连接操作的时间tjoinTuple组成,各个执行时间主要由机器CPU性能,左表和右表的大小决定;
(c)数据传输节点
数据传输节点主要负责接受和汇聚传输得到的数据。数据传输任务会在不同主机上并行执行,因此该节点对应操作的完成时刻texchange取决于最后完成数据传输任务的时刻,传输的时间开销主要由字节数据量TransferByte和当前集群中的网络带宽Netband决定。
步骤(3-4),对比重用开销和直接开销,若重用开销大于直接开销,则执行步骤(3-5);若重用开销小于直接开销,则执行步骤(3-6);
步骤(3-5),将映射关系中节点对应的关系映射为自己,不利用中间结果直接执行节点对应的任务,然后执行步骤(3-7);
步骤(3-6),重复步骤(3-3)和步骤(3-4),判断是否存在重用开销更低的节点,若存在则更新映射关系,将该节点映射到重用开销更低的节点;
步骤(3-7),重复步骤(3-2);
步骤(3-8),返回全局多查询计划树。
以上所述的具体实施方式对本发明的技术方案和有益效果进行了详细说明,应理解的是以上所述仅为本发明的最优选实施例,并不用于限制本发明,凡在本发明的原则范围内所做的任何修改、补充和等同替换等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种基于谓词规约和代价估算的局部多查询优化方法,其特征在于:分为预处理、局部多查询优化处理和多查询计划优化三个阶段,具体步骤如下:
(1)预处理阶段:
步骤(1-1),利用数据查询***已有的查询优化器,对查询集合中的每条查询进行优化,分别找到最优的查询计划,并以查询计划树的形式表示,得到查询计划树集合;
步骤(1-2),重新定义查询计划树中的节点编号;
步骤(1-3),定义节点映射关系map<Node key,Node value>M,并将M初始化为空,map为数据类型,M为变量名称;
步骤(1-4),将所有的查询计划树中的节点添加至全局多查询计划树中,并在全局多查询计划树中添加“超根节点”;
(2)局部多查询优化处理阶段:
步骤(2-1),遍历查询全局多查询计划树中的节点集合V={v1,v2,...,vn},若集合V中存在与当前节点等价的节点,选择节点集合V中等价查询节点中编号最小的节点vj *,进行合并操作,用vj *代替所有vi∈V-{vj *};
步骤(2-2),对于每个节点vi,找到符合“最强归约条件”的子任务taskj *,在M中添加vj *到vi的映射,通过有向线段连接vj *→vi,并改变vj *的操作描述,以节点vi所对应的子任务taski的结果作为子任务taskj *的输入;
步骤(2-3),重复步骤(2-1)和步骤(2-2),对全局多查询计划树中的节点进行等价替换和规约替换,直到无法进一步简化全局多查询计划树为止;
(3)多查询计划优化阶段:
步骤(3-1),获取局部多查询优化处理阶段得到的映射关系和全局多查询计划树;
步骤(3-2),根据映射关系map<Node key,Node value>M,遍历全局多查询计划树中的节点,若遍历完成,则执行步骤(3-8);
步骤(3-3),根据不同任务对应的代价模型,估算直接开销和重用开销;
步骤(3-4),对比重用开销和直接开销,若重用开销大于直接开销,则执行步骤(3-5);若重用开销小于直接开销,则执行步骤(3-6);
步骤(3-5),将映射关系中节点对应的关系映射为自己,不利用中间结果直接执行节点对应的任务,然后执行步骤(3-7);
步骤(3-6),重复步骤(3-3)和步骤(3-4),判断是否存在重用开销更低的节点,若存在则更新映射关系,将该节点映射到重用开销更低的节点;
步骤(3-7),重复步骤(3-2);
步骤(3-8),返回全局多查询计划树。
2.根据权利要求1所述的基于谓词规约和代价估算的局部多查询优化方法,其特征在于:在步骤(2-1)中,判断两个节点是否属于等价关系的过程主要包括:
步骤(a),以两个节点的类型一致并且执行在相同的表和列上为条件进行判断,如不满足条件则返回false;
步骤(b),根据节点类型分别进行等价关系判定:若节点均为磁盘扫描节点,则需要根据节点中的谓词,判断两个节点是否是对于相同列上相同范围的数据选择,若符合条件,则返回true,反之返回false;
步骤(c),若节点均为连接节点,判断连接条件是否相同,若相同,则递归分别判断其左右孩子是否等价,如果其中一种树形符合等价关系,则返回true,反之返回false;
步骤(d),若节点为其他节点,包括聚合操作节点以及数据传输节点,则递归判断其孩子节点是否等价。
3.根据权利要求1所述的基于谓词规约和代价估算的局部多查询优化方法,其特征在于:在步骤(2-3)中,判断全局多查询计划树中的节点是否属于规约关系的过程主要包括:
首先,判断两个节点的类型是否均为磁盘扫描节点,如不满足条件则返回false;
其次,判断两个节点是否执行在相同的表和列上,若不满足条件,则返回false;
最后,根据规约关系表判断两个节点的规约关系,若符合规约关系则返回true,反之返回false。
4.根据权利要求1所述的基于谓词规约和代价估算的局部多查询优化方法,其特征在于:在步骤(3-3)中,所述的直接开销为全局多查询计划树中的节点直接执行对应任务的CPU计算开销。
5.根据权利要求1所述的基于谓词规约和代价估算的局部多查询优化方法,其特征在于:在步骤(3-3)中,所述的重用开销为依赖节点对应任务的CPU计算开销以及对所依赖节点对应任务产生的结果进行网络传输和计算的开销。
6.根据权利要求1所述的基于谓词规约和代价估算的局部多查询优化方法,其特征在于:在步骤(3-3)中,代价估算方法包括磁盘扫描节点方法、连接操作节点方法和数据传输节点方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610833428.3A CN106446134B (zh) | 2016-09-20 | 2016-09-20 | 基于谓词规约和代价估算的局部多查询优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610833428.3A CN106446134B (zh) | 2016-09-20 | 2016-09-20 | 基于谓词规约和代价估算的局部多查询优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106446134A true CN106446134A (zh) | 2017-02-22 |
CN106446134B CN106446134B (zh) | 2019-07-09 |
Family
ID=58166360
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610833428.3A Expired - Fee Related CN106446134B (zh) | 2016-09-20 | 2016-09-20 | 基于谓词规约和代价估算的局部多查询优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106446134B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107133281A (zh) * | 2017-04-14 | 2017-09-05 | 浙江鸿程计算机***有限公司 | 一种基于分组的全局多查询优化方法 |
CN107301205A (zh) * | 2017-06-01 | 2017-10-27 | 华南理工大学 | 一种大数据分布式实时查询方法及*** |
CN108304517A (zh) * | 2018-01-23 | 2018-07-20 | 西南大学 | 基于复杂事件处理***的高效嵌套查询方法 |
CN110297766A (zh) * | 2019-06-03 | 2019-10-01 | 合肥移瑞通信技术有限公司 | 基于分布式测试节点集群的软件测试方法及软件测试*** |
WO2021007816A1 (en) * | 2019-07-17 | 2021-01-21 | Alibaba Group Holding Limited | Method and system for generating and executing query plan |
US11023466B2 (en) | 2017-11-22 | 2021-06-01 | Transwarp Technology (Shanghai) Co., Ltd. | Cost-based optimizer, and cost estimation method and device thereof |
WO2023279962A1 (zh) * | 2021-07-09 | 2023-01-12 | 华为技术有限公司 | 数据处理的方法、装置和计算*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102609493A (zh) * | 2012-01-20 | 2012-07-25 | 东华大学 | 一种基于列存储模型的连接顺序查询优化方法 |
CN103198133A (zh) * | 2013-04-12 | 2013-07-10 | 同方知网(北京)技术有限公司 | 一种将XPath查询转换为树形数据结构的查询优化方法 |
US20150032722A1 (en) * | 2013-03-15 | 2015-01-29 | Teradata Corporation | Optimization of database queries for database systems and environments |
CN104408106A (zh) * | 2014-11-20 | 2015-03-11 | 浙江大学 | 一种用于分布式文件***中大数据查询的调度方法 |
CN104504018A (zh) * | 2014-12-11 | 2015-04-08 | 浙江大学 | 基于浓密树和自顶向下的大数据实时查询优化方法 |
-
2016
- 2016-09-20 CN CN201610833428.3A patent/CN106446134B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102609493A (zh) * | 2012-01-20 | 2012-07-25 | 东华大学 | 一种基于列存储模型的连接顺序查询优化方法 |
US20150032722A1 (en) * | 2013-03-15 | 2015-01-29 | Teradata Corporation | Optimization of database queries for database systems and environments |
CN103198133A (zh) * | 2013-04-12 | 2013-07-10 | 同方知网(北京)技术有限公司 | 一种将XPath查询转换为树形数据结构的查询优化方法 |
CN104408106A (zh) * | 2014-11-20 | 2015-03-11 | 浙江大学 | 一种用于分布式文件***中大数据查询的调度方法 |
CN104504018A (zh) * | 2014-12-11 | 2015-04-08 | 浙江大学 | 基于浓密树和自顶向下的大数据实时查询优化方法 |
Non-Patent Citations (2)
Title |
---|
周强 等: "基于改进DPhyp算法的Impala查询优化", 《计算机研究与发展》 * |
陆戌辰: "基于列存储的OLAP多查询优化策略研究与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107133281A (zh) * | 2017-04-14 | 2017-09-05 | 浙江鸿程计算机***有限公司 | 一种基于分组的全局多查询优化方法 |
CN107133281B (zh) * | 2017-04-14 | 2020-12-15 | 浙江鸿程计算机***有限公司 | 一种基于分组的全局多查询优化方法 |
CN107301205A (zh) * | 2017-06-01 | 2017-10-27 | 华南理工大学 | 一种大数据分布式实时查询方法及*** |
US11023466B2 (en) | 2017-11-22 | 2021-06-01 | Transwarp Technology (Shanghai) Co., Ltd. | Cost-based optimizer, and cost estimation method and device thereof |
CN108304517A (zh) * | 2018-01-23 | 2018-07-20 | 西南大学 | 基于复杂事件处理***的高效嵌套查询方法 |
CN110297766A (zh) * | 2019-06-03 | 2019-10-01 | 合肥移瑞通信技术有限公司 | 基于分布式测试节点集群的软件测试方法及软件测试*** |
WO2021007816A1 (en) * | 2019-07-17 | 2021-01-21 | Alibaba Group Holding Limited | Method and system for generating and executing query plan |
WO2023279962A1 (zh) * | 2021-07-09 | 2023-01-12 | 华为技术有限公司 | 数据处理的方法、装置和计算*** |
Also Published As
Publication number | Publication date |
---|---|
CN106446134B (zh) | 2019-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106446134B (zh) | 基于谓词规约和代价估算的局部多查询优化方法 | |
Wang et al. | FlexGraph: a flexible and efficient distributed framework for GNN training | |
CN110134714B (zh) | 适用于大数据迭代计算的分布式计算框架缓存索引方法 | |
US10572478B2 (en) | Multiple query optimization in SQL-on-Hadoop systems | |
Tao et al. | Multi-worker-aware task planning in real-time spatial crowdsourcing | |
Funke et al. | Data-parallel query processing on non-uniform data | |
Mishra et al. | Fine-grained accelerators for sparse machine learning workloads | |
CN104408106A (zh) | 一种用于分布式文件***中大数据查询的调度方法 | |
Du et al. | Model parallelism optimization for distributed inference via decoupled CNN structure | |
CN105224452A (zh) | 一种针对科学计算程序静态分析性能的预测代价优化方法 | |
CN106293003A (zh) | 一种基于aov网关键路径查询的异构***动态功耗优化方法 | |
CN110929850A (zh) | 基于申威处理器的深度学习算子自动优化***及方法 | |
Wang et al. | Adaptive time, monetary cost aware query optimization on cloud database systems | |
CN112527304B (zh) | 基于异构平台的自适应节点融合编译优化方法 | |
CN109857937A (zh) | 一种基于Sine映射和分段式并行连续禁忌搜索数据处理方法 | |
CN105302551A (zh) | 一种大数据处理***的正交分解构造与优化的方法及*** | |
Wang et al. | FineQuery: Fine-grained query processing on CPU-GPU integrated architectures | |
Yang et al. | Parameter communication consistency model for large-scale security monitoring based on mobile computing | |
CN110675088B (zh) | 一种数字孪生***复杂任务高效划分方法 | |
Ding et al. | An efficient query processing optimization based on ELM in the cloud | |
Ji et al. | joinTree: A novel join-oriented multivariate operator for spatio-temporal data management in Flink | |
Gong et al. | Diversified and Compatible Web APIs Recommendation in IoT | |
Qian et al. | A Cost-driven multi-objective optimization algorithm for SaaS applications placement | |
Kravets et al. | Fundamentals of optimal quality management in a multiphase multichannel service system for heterogeneous channels and incoming flow of requests in construction project management systems | |
Wang et al. | Integrated Scheduling Algorithm for Complex Products Based on the Dynamic Subtree Operation Set Inverse Coding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20190709 |