1 .一种数据库中优化多个percentile_cont分析函数执行的方法,其特征在于,所述方
法包括下述步骤:
(一)语义分析阶段
(1)对输出列进行解析;
(2)对解析后的输出列进行分组,获得函数组输出列;
(3)对函数组输出列根据函数ID进行分组,获得函数ID为percentile_cont的小组;
(4)根据预设的规则对函数ID为percentile_cont的小组进行再次分组,将具有相同特
征的输出列分到同一组内,并在内部表示中标记其所属的分组;
(二)执行阶段
(5)执行(4)步获得的同一组内的多个percentile_cont分析函数的瞬态函数;
(6)执行上述各percentile_cont分析函数的终结函数。
2.根据权利要求1所述的方法,其特征在于,步骤(2)中对解析后的输出列进行分组,将
其分为普通字段组、常量组、表达式组、函数组输出列。
3 .根据权利要求1所述的方法,其特征在于,步骤(3)中所述函数ID是每个数据库中内
置函数的编号,根据函数ID可以唯一确定某个函数。
4 .根据权利要求1所述的方法,其特征在于,步骤(4)中所述将具有相同特征的输出列
分到同一组内是指将排序字段、排序方式、分组字段相同的输出列分到同一组内。
5 .根据权利要求1所述的方法,其特征在于,所述方法还包括:在步骤(5)执行同一组内
的第一个percentile_cont分析函数的瞬态函数之前,预先对数据对象进行分组、排序,并
将获得的有序分组数据放置在一个后续percentile_cont分析函数都能够访问到的环境
中;然后逐一执行同一组内各个percentile_cont分析函数的瞬态函数;各瞬态函数依次访
问上述有序分组数据,完成初始化状态的建立。
6 .根据权利要求5所述的方法,其特征在于,步骤(6)中所述执行上述各percentile_
cont分析函数的终结函数,终结函数的输入来自于该函数的瞬态函数的初始化状态获得的
计算结果。
7 .根据权利要求1所述的方法,其特征在于,所述方法还包括:当全部分组都处理完成
后,结束流程;否则,返回执行阶段步骤(5),处理下一个分组。
8.一种数据库中优化多个percentile_cont分析函数执行的系统,其特征在于,所述系
统包括:
解析模块:用于对输出列进行解析;
输出列分组模块:用于对解析后的输出列进行分组,获得函数组输出列;
函数分组模块:用于对函数组输出列根据函数ID进行分组,获得函数ID为percentile_
cont的小组;
特征分组模块:用于对函数ID为percentile_cont的小组进行再次分组,将具有相同特
征的输出列分到同一组内;
标记模块:用于在内部表示中标记各输出列所属的分组;
数据分组排序模块:用于对数据对象进行分组、排序,获得有序分组数据;
瞬态函数执行模块:用于执行percentile_cont分析函数的瞬态函数;
终结函数执行模块:用于执行percentile_cont分析函数的终结函数。
权 利 要 求 书
1/1 页
2
评论