一种频率直方图合并方法、装置和数据处理系统制造方法及图纸

技术编号:36534626 阅读:9 留言:0更新日期:2023-02-01 16:19
一种频率直方图合并方法,使得滑动窗口在频率直方图上左右滑动,并获取滑动窗口内的各个柱子的高度值。根据滑动窗口内的各个柱子的高度值,确定滑动窗口内的各个柱子的高度的分布均匀率。在滑动窗口内的各个柱子的高度的分布均匀率不小于设定阈值的情况下,滑动窗口内的各个柱子的高度基本相同,再将滑动窗口内的柱子合并在一起,可以避免柱子高度差异比较大柱子合并在一起,减少统计信息损失。减少统计信息损失。减少统计信息损失。

【技术实现步骤摘要】
一种频率直方图合并方法、装置和数据处理系统


[0001]本专利技术涉及数据处理
,尤其涉及一种频率直方图合并方法、装置和数据处理系统。

技术介绍

[0002]数据库是为了适应数据处理的需要而发展起来的一种数据处理系统。利用结构化查询语言(structured query language,SQL)语句查询数据库中的数据时,数据库需要根据SQL语句生成查询计划。查询计划是依赖于过滤谓词的选择率大小来生成。选择率的大小通过数据库的统计信息估计得到。数据库的统计信息是数据库在空闲或计划时刻收集的distinct值、最常见值(most common value,MCV)、频率直方图等参数。其中,频率直方图主要使用在范围查询的选择率估算中。
[0003]通常情况下,选择率的计算并不需要精准,且计算所耗费的时间尽量短。因此,数据库不会精确地记录下某一列上数据分布的频率直方图,而是采用一些算法获取相对粗略的频率直方图。为了简化频率直方图,可以将频率直方图中相邻几个柱子合并在一起,得到粗略的频率直方图。但是,合并频率直方图的柱子过程中,将几个高度差距比较大的柱子合并在一起,会造成数据库的统计信息大量丢失。

技术实现思路

[0004]为了解决上述的问题,本申请的实施例中提供了一种频率直方图合并方法、装置和数据处理系统,数据处理系统在合并频率直方图的各个柱子过程中,利用滑动窗口在频率直方图上滑动。数据处理系统利用交叉熵的概念,确定滑动窗口内的各个柱子是否合并在一起。当滑动窗口内的各个柱子的高度差异比较大时,数据处理系统计算出滑动窗口内的分布均匀率比较低。数据处理系统将滑动窗口内的相邻两个柱子的高度差异比较大的一个柱子移出滑动窗口,再将滑动窗口内的柱子合并在一起。数据处理系统将滑动窗口内的柱子的高度差异比较小的柱子合并在一起,减少简化频率直方图丢失统计信息。
[0005]为此,本申请的实施例中采用如下技术方案:
[0006]第一方面,本申请实施例提供一种频率直方图合并方法,包括:使得滑动窗口在频率直方图上左右滑动,所述频率直方图包括多个柱子;获取所述滑动窗口内的各个柱子的高度值,根据所述滑动窗口内的各个柱子的高度值,确定所述滑动窗口内的各个柱子的高度的分布均匀率;在所述滑动窗口内的各个柱子的高度的分布均匀率不小于设定阈值的情况下,将所述滑动窗口内的各个柱子合并成一个桶。
[0007]在该实施方式中,利用滑动窗口在频率直方图上滑动,并获取滑动窗口内的各个柱子。根据滑动窗口内的各个柱子的高度,计算出滑动窗口内的各个柱子的高度的分布均匀率。滑动窗口内的各个柱子的高度的分布均匀率不小于设定阈值时,滑动窗口内的各个柱子的高度基本相同,再将滑动窗口内的柱子合并在一起,可以避免柱子高度差异比较大柱子合并在一起,减少统计信息损失。
[0008]在一种实施方式中,所述根据所述滑动窗口内的各个柱子的高度值,确定所述滑动窗口内的各个柱子的高度的分布均匀率,包括:根据所述滑动窗口内的各个柱子的总高度值,确定所述滑动窗口内的各个柱子的均匀分布的交叉熵;根据所述滑动窗口内的各个柱子的均匀分布的交叉熵,确定所述滑动窗口内的各个柱子的高度的分布均匀率。
[0009]在一种实施方式中,所述滑动窗口内的各个柱子的均匀分布的交叉熵的计算方式为:
[0010][0011]其中,i表示各个柱子在频率直方图的顺序,N表示频率直方图的柱子的总数,ni表示第i个柱子的高度,S
N
表示所述滑动窗口内的各个柱子的总高度。
[0012]在一种实施方式中,所述滑动窗口内的各个柱子的高度的分布均匀率的计算方式为:
[0013][0014]其中,N表示频率直方图的柱子的总数,C
N
表示所述滑动窗口内的各个柱子的交叉熵。
[0015]在一种实施方式中,所述在所述滑动窗口内的各个柱子的高度的分布均匀率不小于设定阈值的情况下,将所述滑动窗口内的各个柱子合并成一个桶,包括:在所述滑动窗口内的各个柱子的高度的分布均匀率不小于设定阈值的情况下,在所述滑动窗口内增加一个柱子;获取增加柱子的滑动窗口内的柱子的高度值,并确定所述增加柱子的滑动窗口内的各个柱子的高度的分布均匀率;在所述增加柱子的滑动窗口内的各个柱子的高度的分布均匀率小于设定阈值的情况下,将增加柱子之前的所述滑动窗口内的各个柱子合并成一个桶。
[0016]在一种实施方式中,所述滑动窗口还包括左端侧和右端侧,所述左端侧为所述滑动窗口靠近所述频率直方图坐标原点的一侧,所述右端侧为所述滑动窗口远离所述频率直方图坐标原点的一侧;所述方法还包括:在所述滑动窗口内的各个柱子的高度的分布均匀率小于设定阈值的情况下,合并所述滑动窗口内除靠近所述右端侧的一个柱子以外其它柱子的高度,得到一个桶。
[0017]在一种实施方式中,还包括:移动所述滑动窗口的所述左端侧至所述滑动窗口内靠近所述右端侧的一个柱子。
[0018]在一种实施方式中,所述根据所述滑动窗口内的各个柱子的高度值,确定所述滑动窗口内的各个柱子的高度的分布均匀率之前,还包括:在所述滑动窗口内的柱子数量为1的情况下,确定所述滑动窗口内的所述柱子的高度的分布均匀率为零。
[0019]在一种实施方式中,还包括:确定所述频率直方图的柱子数量小于设定阈值时,将所述频率直方图的各个柱子合并成一个桶。
[0020]第二方面,本申请实施例提供一种频率直方图合并装置,包括:执行单元,收发单元,处理单元,所述处理单元与所述收发单元和所述执行单元通信连接,包括:所述执行单元,用于使得滑动窗口在频率直方图上左右滑动,所述频率直方图包括多个柱子;收发单
元,用于获取所述滑动窗口内的各个柱子的高度值;所述处理单元,用于根据所述滑动窗口内的各个柱子的高度值,确定所述滑动窗口内的各个柱子的高度的分布均匀率;在所述滑动窗口内的各个柱子的高度的分布均匀率不小于设定阈值的情况下,将所述滑动窗口内的各个柱子合并成一个桶。
[0021]在一种实施方式中,所述处理单元,具体用于根据所述滑动窗口内的各个柱子的总高度值,确定所述滑动窗口内的各个柱子的均匀分布的交叉熵;根据所述滑动窗口内的各个柱子的均匀分布的交叉熵,确定所述滑动窗口内的各个柱子的高度的分布均匀率。
[0022]在一种实施方式中,所述处理单元,具体用于在所述滑动窗口内的各个柱子的高度的分布均匀率不小于设定阈值的情况下,在所述滑动窗口内增加一个柱子;所述收发单元,具体用用于:获取增加柱子的滑动窗口内的柱子的高度值;所述处理单元,还具体用于:并确定所述增加柱子的滑动窗口内的各个柱子的高度的分布均匀率;在所述增加柱子的滑动窗口内的各个柱子的高度的分布均匀率小于设定阈值的情况下,将增加柱子之前的所述滑动窗口内的各个柱子合并成一个桶。
[0023]在一种实施方式中,所述滑动窗口还包括左端侧和右端侧,所述左端侧为所述滑动窗口靠近所述频率直方图坐标原点的一侧,所述右端侧为所述滑动窗口远离所述频率直方图坐标原点的一侧;所述处理单元,还用于在所本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种频率直方图合并方法,其特征在于,包括:使得滑动窗口在频率直方图上左右滑动,所述频率直方图包括多个柱子;获取所述滑动窗口内的各个柱子的高度值,根据所述滑动窗口内的各个柱子的高度值,确定所述滑动窗口内的各个柱子的高度的分布均匀率;在所述滑动窗口内的各个柱子的高度的分布均匀率不小于设定阈值的情况下,将所述滑动窗口内的各个柱子合并成一个桶。2.根据权利要求1所述的方法,其特征在于,所述根据所述滑动窗口内的各个柱子的高度值,确定所述滑动窗口内的各个柱子的高度的分布均匀率,包括:根据所述滑动窗口内的各个柱子的总高度值,确定所述滑动窗口内的各个柱子的均匀分布的交叉熵;根据所述滑动窗口内的各个柱子的均匀分布的交叉熵,确定所述滑动窗口内的各个柱子的高度的分布均匀率。3.根据权利要求2所述的方法,其特征在于,所述滑动窗口内的各个柱子的均匀分布的交叉熵的计算方式为:其中,i表示各个柱子在频率直方图的顺序,N表示频率直方图的柱子的总数,n
i
表示第i个柱子的高度,S
N
表示所述滑动窗口内的各个柱子的总高度。4.根据权利要求2或3所述的方法,其特征在于,所述滑动窗口内的各个柱子的高度的分布均匀率的计算方式为:其中,N表示频率直方图的柱子的总数,C
N
表示所述滑动窗口内的各个柱子的交叉熵。5.根据权利要求1

4任意一项所述的方法,其特征在于,所述在所述滑动窗口内的各个柱子的高度的分布均匀率不小于设定阈值的情况下,将所述滑动窗口内的各个柱子合并成一个桶,包括:在所述滑动窗口内的各个柱子的高度的分布均匀率不小于设定阈值的情况下,在所述滑动窗口内增加一个柱子;获取增加柱子的滑动窗口内的柱子的高度值,并确定所述增加柱子的滑动窗口内的各个柱子的高度的分布均匀率;在所述增加柱子的滑动窗口内的各个柱子的高度的分布均匀率小于设定阈值的情况下,将增加柱子之前的所述滑动窗口内的各个柱子合并成一个桶。6.根据权利要求1

5任意一项所述的方法,其特征在于,所述滑动窗口还包括左端侧和右端侧,所述左端侧为所述滑动窗口靠近所述频率直方图坐标原点的一侧,所述右端侧为所述滑动窗口远离所述频率直方图坐标原点的一侧;所述方法还包括:在所述滑动窗口内的各个柱子的高度的分布均匀率小于设定阈值的情况下,合并所述滑动窗口内除靠近所述右端侧的一个柱子以外其它柱子的高度,得到一个桶。7.根据权利要求6所述的方法,其特征在于,还包括:
移动所述滑动窗口的所述左端侧至所述滑动窗口内靠近所述右端侧的一个柱子。8.根据权利要求1

7任意一项所述的方法,其特征在于,所述根据所述滑动窗口内的各个柱子的高度值,确定所述滑动窗口内的各个柱子的高度的分布均匀率之前,还包括:在所述滑动窗口内的柱子数量为1的情况下,确定所述滑动窗口内的所述柱子的高度的分布均匀率为零。9.根据权利要求1<...

【专利技术属性】
技术研发人员:张炙炀
申请(专利权)人:超聚变数字技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1