一种方差优化直方图的构建方法和装置制造方法及图纸

技术编号:16644712 阅读:53 留言:0更新日期:2017-11-26 17:09
本发明专利技术提供了一种方差优化直方图的构建方法和装置,该方法按内存大小和查询精度设定样本数目K和直方图桶的个数B,有新元素出现时,为使样本数目保持在K,以在线数据采样方法优化内存空间的数据样本;根据优化的内存空间数据样本,动态构建方差优化直方图;该装置包括优化单元和构建单元。本发明专利技术提供的技术方案降低了数据规模与分布特征的影响,能有效减少数据倾斜或数据分布的不均匀带来的区间检索误差。

Construction method and device of variance optimized histogram

The present invention provides a method and device for constructing histogram variance optimization, the method of setting the number of sample K and the number of histogram buckets according to the memory size and query accuracy of B, a new element appears, the number of samples in K, memory space data optimization method to on-line data sampling according to the memory space; data optimization, dynamic optimization of variance histogram construction; the device comprises the optimization unit and construction unit. The technical scheme provided by the invention reduces the influence of the data scale and the distribution characteristic, and can effectively reduce the interval retrieval error caused by the uneven data or the uneven distribution of the data.

【技术实现步骤摘要】
一种方差优化直方图的构建方法和装置
本专利技术涉及大数据计算领域,具体讲涉及一种方差优化直方图的构建方法和装置。
技术介绍
大数据时代以海量、高速为特点的流数据成为热门研究方向,同时实时处理和分析流数据的应用需求也呈爆炸式增长。例如,2015年天猫“双十一”峰值交易值达到了8.59万笔/秒,是2014年“双十一”峰值3.85万笔/秒的2.23倍,蚂蚁花呗在开售1分钟成功交易的订单总量达到了52万笔,飞行状态下的波音737的引擎每小时产生近20TB的数据,又如网络监测、网络流量分析、事务日志分析和股票行情、交易等,越来越多的应用需要对高速海量的流式数据进行高精度的实时分析。作为大规模流数据计算的常用模型之一的数据概要结构,其可以通过单遍扫描数据,在远小于数据规模的内存空间里不断更新压缩数据,利用概要技术提取所有数据的概要信息,并快速获得数据的分布特征。典型的概要技术包括直方图法、小波法和抽样法等。采用直方图表示的概要技术方法既可直观、简洁的描述大数据集的分布特征,又可以快速返回近似聚合计算结果,同时还可以极大的减少网络传输的数据量。按照直方图桶边界划分方法将直方图分为等宽直方图、等深直方图、压缩直方图、方差优化直方图等。在大规模数据的聚合计算中,方差优化直方图在构造过程中各桶的方差和最小,相较于其他直方图而言,聚合查询的结果更加精准。传统方差优化直方图是采用动态规划算法对离线数据构建的直方图,需要O(B·n2)时间复杂度,其中n为当前数据的总数,B为直方图桶的总数。现有技术中,在流数据环境下构建方差优化直方图时,需要的时间复杂度为O(n·(B/∈)2logn),每写入一个新元素的复杂度为O((B/∈)logn),其适用于有序流数据,且受限于内存空间,只能对指定时间窗口内的数据进行构建。现有技术中的动态调整的近似方差优化直方图法,每将出现的一个新元素插入于对应的桶中,再对桶分裂或合并使得直方图整体的方差之和近似最优,该方法大大降底了构建时间复杂度,但在对待分裂桶和待合并桶进行方差计算前需要保存所有的原始数据,因此不利于在流式大数据环境下动态构建方差优化直方图;现有技术中用样本数据构建方差优化直方图的方法中构建的前提是知晓数据的分布,继而对连续出现的流数据进行随机采样,但不足之处是数据分析精确度较低。综上所述,为满足大数据时代对流数据的高精度分析需求,需要提供一种新的快速构建方差优化直方图的方法。
技术实现思路
为满足现有技术发展的需要,本专利技术提供了一种流数据环境下方差优化直方图的构建方法。本专利技术提供的方差优化直方图构建方法,所述方法包括:按内存大小和查询精度设定样本数目K和直方图桶的个数B,有新元素出现时,对新出现的元素进行预处理,同时为使样本数目保持在K,以在线数据采样方法优化内存空间的数据样本;根据优化的内存空间数据样本,动态构建方差优化直方图。进一步的,所述新元素为K+1个元素,对所述K+1个新元素进行方差优化处理时,按下式计算最小采样代价Cost:式中,wi和wj:分别表示样本i、j的值,且wi+wj<τ且i<j;wm:表示样本m的值;若wi<wj,则将wi累加到wj上,同时删除样本i;若wi>wj,则将wj累加到wi上,同时删除样本j;进一步的,所述新元素为K+1个元素,对所述K+1个元素进行方差优化处理时,按下述方法选取满足min(wi+wj)的两个相邻样本i,j:若wi<wj,则将wi累加到wj上,同时删除样本i;若wi>wj,则将wj累加到wi上,同时删除样本j。进一步的,还包括小顶堆H,当前抽样阈值τ,累计值Lsum,数据样本个数Lcount;所述小顶堆H的最大值为K,所述抽样阈值τ、累计值Lsum,数据样本个数Lcount的初始数据都为0;对所述新出现的元素进行预处理包括:1)若该新元素的值小于当前抽样阈值τ,则将该元素的值累加到Lsum,同时将Lcount的值加1;2)当新元素大于当前抽样阈值τ时,将该新元素存储到小顶堆H中:若小顶堆H中元素数目达到限定的最大数据样本数目K,或小顶堆H中的最小元素小于当前抽样阈值τ,则将小顶堆H中最小元素的值累加到Lsum中,同时将Lcount的值加1,并删除小顶堆H中的最小元素,调整小顶堆H结构;将抽样阈值τ更新为τ=Lsum′/Lcount′,其中,Lsum′:添加元素值后的样本;Lcount′:添加新元素后的样本数据个数。进一步的,所述动态构建方差优化直方图包括:按序平均将K个样本数据存储在直方图的B个桶中,且计算直方图每个桶中数据的方差;将存储样本的起始角标和结束角标作为桶的边界,记录桶中元素的方差,记录桶中元素的平均值和指向下一个桶的指针;按桶的分裂合并代价,确定是否进行桶的分裂合并,使得所有桶的方差和最小。进一步的,按下式计算所述分裂合并代价Δε:式中,j:待合并的两个桶中所有的元素;待合并的两个桶中元素的平均值;i:待分裂的桶中所有元素;待分裂的桶中元素的平均值;εM和εS:分别表示待合并桶和待分裂桶中元素的方差;当所述分裂合并代价Δε<0时将待合并的两个桶合并,将待分裂的桶分裂为两个等宽的桶,并同时更新合并和分裂后桶的边界、方差及指向下一个桶的指针;反之,不分裂合并。进一步的,所述待分裂桶包括当前方差最大的桶;所述待合并的两个桶包括当前方差最小的桶及其相邻的方差较小的一个桶。本专利技术还提供一种方差优化直方图的构建装置,所述装置包括:优化单元,按内存大小和查询精度设定样本数目K和直方图桶的个数B,有新元素出现时,对新出现的元素进行预处理,同时为使样本数目保持在K,以在线数据采样方法优化内存空间的数据样本;构建单元,根据优化的内存空间数据样本,动态构建方差优化直方图。进一步的,所述优化单元包括:数据采样子单元,用于在线选取满足条件的采样数据,并对当前样本集中的K+1个元素进行方差优化处理,将K+1个样本数据删减到K个,使采样代价最小;阈值计算子单元,用于在线数据采样过程中抽样阈值的实时计算;参数设置子单元,用于根据内存限定和查询精度需求设定最大数据样本数目K和直方图桶的个数B;用于在抽样阈值计算时,初始化参数,并实时更新各参数;进一步的,所述构建单元包括:记录子单元,用于在动态构建过程中记录包括桶边界、桶中元素方差、桶中元素平均值和指向下一个桶的指针的参数,并根据分裂合并动作实时更新各参数;判断子单元,用于根据桶的分裂合并代价,判断是否进行桶的分裂合并。与最接近的现有技术比,本专利技术提供的技术方案具有以下有益效果:1、本专利技术提供的技术方案根据进行方差优化的在线采样后的流数据以动态方式构建近似方差优化直方图,其动态构建过程以直方图的合并与分裂实现动态调整桶的边界,使直方图的整体方差最优,实现了海量流数据环境下动态构建方差优化直方图的方法,具有低延时高吞吐的特性,可以实现高精度的实时交互式区间的聚合查询。2、本专利技术提供的技术方案对于数据的规模与分布特征不敏感,可以有效的降低数据倾斜或数据分布不均匀带来的区间检索误差;3、本专利技术提供的技术方案在保证查询精度的情况下,有效提高了方差优化直方图构造效率,且能够在限定空间下进行构建,解决了流数据环境下传统构建方差优化直方图空间不足的问题,解决了传统方差优化直本文档来自技高网
...
一种方差优化直方图的构建方法和装置

【技术保护点】
一种方差优化直方图的构建方法,其特征在于,所述方法包括:按内存大小和查询精度设定样本数目K和直方图桶的个数B,有新元素出现时,对新出现的元素进行预处理,同时为使样本数目保持在K,以在线数据采样方法优化内存空间的数据样本;根据优化的内存空间数据样本,动态构建方差优化直方图。

【技术特征摘要】
1.一种方差优化直方图的构建方法,其特征在于,所述方法包括:按内存大小和查询精度设定样本数目K和直方图桶的个数B,有新元素出现时,对新出现的元素进行预处理,同时为使样本数目保持在K,以在线数据采样方法优化内存空间的数据样本;根据优化的内存空间数据样本,动态构建方差优化直方图。2.如权利要求1所述的方法,其特征在于,所述新元素为K+1个元素,对所述K+1个新元素进行方差优化处理时,按下式计算最小采样代价Cost:式中,wi和wj:分别表示样本i、j的值,且wi+wj<τ且i<j;wm:表示样本m的值;若wi<wj,则将wi累加到wj上,同时删除样本i;若wi>wj,则将wj累加到wi上,同时删除样本j。3.如权利要求1所述的方法,其特征在于,所述新元素为K+1个元素,对所述K+1个元素进行方差优化处理时,按下述方法选取满足min(wi+wj)的两个相邻样本i,j:若wi<wj,则将wi累加到wj上,同时删除样本i;若wi>wj,则将wj累加到wi上,同时删除样本j。4.如权利要求1所述的方法,其特征在于,还包括小顶堆H,当前抽样阈值τ,累计值Lsum,数据样本个数Lcount;所述小顶堆H的最大值为K,所述抽样阈值τ、累计值Lsum,数据样本个数Lcount的初始数据都为0;对所述新出现的元素进行预处理包括:1)若该新元素的值小于当前抽样阈值τ,则将该元素的值累加到Lsum,同时将Lcount的值加1;2)当新元素大于当前抽样阈值τ时,将该新元素存储到小顶堆H中:若小顶堆H中元素数目达到限定的最大数据样本数目K,或小顶堆H中的最小元素小于当前抽样阈值τ,则将小顶堆H中最小元素的值累加到Lsum中,同时将Lcount的值加1,并删除小顶堆H中的最小元素,调整小顶堆H结构;将抽样阈值τ更新为τ=Lsum′/Lcount′,其中,Lsum′:添加元素值后的样本;Lcount′:添加新元素后的样本数据个数。5.如权利要求1所述的方法,其特征在于,所述动态构建方差优化直方图包括:按序平均将K...

【专利技术属性】
技术研发人员:史亮王勇张鸿
申请(专利权)人:国家计算机网络与信息安全管理中心
类型:发明
国别省市:北京,11

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

1