面向大数据环境的概要信息动态构建与查询方法及装置制造方法及图纸

技术编号:11517644 阅读:92 留言:0更新日期:2015-05-28 13:52
本发明专利技术涉及一种面向大数据环境的概要信息动态构建与查询方法及装置。该方法以Count-Min Sketch方法为基础,采用数据流的第一范数描述数据规模,采用数据的基数值描述数据的分布情况;首先为流式大数据分配一较小空间的Count-min Sketch结构,随着数据不断加载,当Count-min Sketch结构记录的数据项个数达到阈值且数值空间基数达到阈值以后,建立新的Count-min Sketch结构,用以接收后续到来的新数据。本发明专利技术能够根据数据量和数值基数自动建立新的Sketch结构,以较高精度统计数据,有效支持流式大数据的高精度的实时统计和分析。

【技术实现步骤摘要】
面向大数据环境的概要信息动态构建与查询方法及装置
本专利技术属于信息
,具体涉及一种面向大数据环境的概要信息动态构建与查询方法及装置。
技术介绍
流式大数据是指以数据流的方式高速到达并实时写入到存储管理系统中的数据源,也称为FastData。流式大数据不但具有高吞吐率、体量巨大的特点,而且数据规模与数据值范围往往不可预知。例如海量微博数据,实时的交易日志,门户网站的clickstream等。有效处理并分析上述数据,可以充分挖掘隐藏在海量数据源中的有价值信息,统计数据的规律,为决策者提供重要的决策支持依据。但是针对流式大数据,传统的统计方法与系统已经不再适用。与本专利技术相类似的
是大数据存储管理技术与在线流数据处理技术。传统的数据库以及基于Hadoop的相关大数据存储管理系统与方法,是基于批处理模式实现的,批处理模式是先存储后处理,无法应对流式大数据高速达到的应用特征。尽管Storm,SparkStreaming等系统基于内存计算可以提高对于高速到达数据的响应时间,但是由于二者是精确计算方法,即,需要维护与原始数据等量的内存空间来支持数据的统计查询,因此存储的数据量有限,很难适应流式大数据海量数据的规模特征。在线流数据处理技术可以有效处理按时间次序不断到达的有序数据序列。流数据的研究核心就是设计高效的单遍数据集的方法,在一个远小于数据规模的内存空间里不断更新压缩后的数据结构,这一结构成为数据的概要信息(Sketching)。目前针对流数据典型的概要信息构建方法是基于Hash技术,构建以位为单位的概要数据结构。常用于估计数据集的二阶矩大小、估计数据集自连接的大小、获得数据集中频繁项列表等。典型的概要数据技术包括:CountSketch(M.Charikar,K.Chen,andM.Farach-Colton.Findingfrequentitemsindatastreams.InInternationalColloquiumonAutomata,LanguagesandProgramming(ICALP),2002.)、Count-MinSketch(G.Cormode,S.Muthukrishnan.Animproveddatastreamsummary:thecount-minsketchanditsapplications.JournalofAlgorithms.2005,vol.55,no.1.pp.58-75.)、AMSSketch(N.Alon,Y.Matias,andM.Szegedy.Thespacecomplexityofapproximatingthefrequencymoments.InProceedingsoftheTwenty-EighthAnnualACMSymposiumontheTheoryofComputing,pages20–29,1996.JournalversioninJournalofComputerandSystemSciences,58:137–147,1999.)等;用来查找基数的Sketch结构有LinearSpaceSolution(G.M.Lee,H.Liu,Y.Yoon,andY.Zhang.Improvingsketchreconstructionaccuracyusinglinearleastsquaresmethod.InInternetMeasurementConference(IMC),2005.)、Flajolet-MartinSketches(K.Y.Whang,B.T.Vander-Zanden,andH.M.Taylor.Alinear-timeprobabilisticcountingalgorithmfordatabaseapplications.ACMTransactionsonDatabaseSystems,15(2):208,1990.)、DistinctSampling(P.Gibbons.Distinctsamplingforhighly-accurateanswerstodistinctvaluesqueriesandeventreports.InInternationalConferenceonVeryLargeDataBases,2001.P.GibbonsandS.Tirthapura.Estimatingsimplefunctionsontheunionofdatastreams.InACMSymposiumonParallelAlgorithmsandArchitectures(SPAA),2001.)等,此外还有基于sketch方法建立采样、小波、柱状图模型等方法。概要数据结构一般通过常驻内存方式,可以快速的支持针对任意原始数据的查询与处理,通常的概要数据可以提供限定误差的统计与分析计算,广泛应用于流数据的统计与分析中。但是由于流式大数据数据规模不可预知,数据的值域空间无法预先获得,导致传统的概要数据方法无法有效应对数据规模不断增长的流式大数据规模。本专利技术以Count-MinSketching为基础,进一步提出一种适应流式大数据应用特点动态增长的概要信息构建和对应的统计查询过程。Count-MinSketch是流数据统计中通常采用的技术,基于随机映射,使用Hash函数并在内存中维护一个二维计数数组来追踪数据的统计值,以多个计数器中的最小值作为查询返回值,从而解决了Sketch中查询准确性的问题,并以1-σ的概率保证空间代价为Count-MinSketch具有亚线性空间数据结构模型,具有构建方法简单、时空复杂度低等优点,因而得到了广泛的关注和使用。近年已经涌现大量的针对Count-Min查询精度优化技术与成果。GeneMooLee等提出lsquare方法(G.M.Lee,H.Liu,Y.Yoon,andY.Zhang.Improvingsketchreconstructionaccuracyusinglinearleastsquaresmethod.InInternetMeasurementConference(IMC),2005.),利用最小二乘法来寻找最优解,提高Count-MinSketching的估算精度。Deng和Rafiei在2007年提出CMMSketch(Count-Mean-MinSketch)(FanDengandDavoodRafiei.2007.Nnewestimationalgorithmsforstreamingdata:count-mincandomore.),CMM利用均值来代替原始Count-MinSketch统计过程中的最小值,可以在无偏统计中去掉噪声,提高在大数据规模下的统计精度。目前Count-MinSketch技术已经广泛应用于DDoS攻击检测、海量自然语言处理,多维流数据统计查询等领域。综上所述,目前基于Hadoop的数据管理和分析技术,采用离线批处理模式,无法适应流式大数据高速达到、实时统计的计算需求;StormSparkStreaming等基于内存计算的数据分析系统,由于采用精确的计算方法,存储数据规模有限,无法海量数据的查询与处理;以本文档来自技高网...

【技术保护点】
一种面向大数据环境的概要信息动态构建方法,其步骤包括:1)以Count‑Min Sketch方法为基础,采用数据流的第一范数描述数据规模,采用数据的基数值描述数据的分布情况;2)为流式大数据分配一较小空间的Count‑Min Sketch结构,随着数据不断加载,当初始的Count‑Min Sketch记录的数据项个数达到阈值且数值空间基数达到阈值以后,建立新的Count‑Min Sketch结构,用以接收后续到来的新数据。

【技术特征摘要】
1.一种面向大数据环境的概要信息动态构建方法,其步骤包括:1)以Count-MinSketch方法为基础,采用数据流的第一范数描述数据规模,采用数据的基数值描述数据的分布情况;2)为流式大数据分配一较小空间的Count-MinSketch结构,随着数据不断加载,当初始的Count-MinSketch记录的数据项个数达到阈值且数值空间基数达到阈值以后,建立新的Count-MinSketch结构,用以接收后续到来的新数据;为每个Count-MinSketch结构构建Bloomfilter,用于统计每个Count-MinSketch内部数据的存在性,每个Count-MinSketch接收的数据同时写入到Bloomfilter中;进行数据写入的具体流程为:设到达的数据项为<key,value>,当有新数据到达时,首先把key写入全局基数估算器中,并实时计算当前的基数规模Di,然后统计当前Count-MinSketch的第一范数的值||a||1;如果||a||1<N,则把key加入到Bloomfilter中,并根据Count-MinSketch更新原理,把CM[j][hashj(key)]位置的计数器加上value,其中j为二维数组的第j行,N为预先设定的所要存储的数据的第一范数;如果||a||1>=N,则判断Di-Di-1是否大于r×w,如果Di-Di-1<r×w则继续写入,否则创建新的Bloomfilter和Count-MinSketch并接收新写入的数据;其中r是预先设定的比率值,根据hash函数的碰撞概率计算获得;w为二维计数数组的宽度;Di-1表示到第i-1个Count-MinSketch为止的全部数据的基数估算值。2.如权利要求1所述的方法,其特征在于:所述Count-MinSketch结构采用限定误差的概要设计方法,在概率参数为δ,误差参数为ε条件下,可容忍的最大单点误差满足如下不等式:其中:ai为待查询的变量,是由Count-MinSketch所得ai的估计值,||a||1为Count-MinSketch统计获得的数据的第一范数,即当前Count-MinSketch中频数的总和,e为自然对数的底数,d为Count-MinSketch结构中hash数组的个数。3.如权利要求1所述的方法,其特征在于:采用Hyperloglog算法获得数据的基数值。4.一种面向大数据环境的数据查询方法,其步骤包括:1)利用权利要求1~3中任一项所述方法建立Count-MinSketch结构,并在Count-MinSketch结构中写入和更新数据;2)查询数据项<key,value>时,首先利用Bloomfilter找到第一个含有关键字k...

【专利技术属性】
技术研发人员:吴广君王树鹏陈明张晓宇张燕琴
申请(专利权)人:中国科学院信息工程研究所
类型:发明
国别省市:北京;11

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

1