CN102760132A - 一种数据流频繁项挖掘方法和装置 - Google Patents

一种数据流频繁项挖掘方法和装置 Download PDF

Info

Publication number
CN102760132A
CN102760132A CN2011101085573A CN201110108557A CN102760132A CN 102760132 A CN102760132 A CN 102760132A CN 2011101085573 A CN2011101085573 A CN 2011101085573A CN 201110108557 A CN201110108557 A CN 201110108557A CN 102760132 A CN102760132 A CN 102760132A
Authority
CN
China
Prior art keywords
data item
schedule
samples
information
data
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
Application number
CN2011101085573A
Other languages
English (en)
Other versions
CN102760132B (zh
Inventor
徐良
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Mobile Group Zhejiang Co Ltd
Original Assignee
China Mobile Group Zhejiang Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Mobile Group Zhejiang Co Ltd filed Critical China Mobile Group Zhejiang Co Ltd
Priority to CN201110108557.3A priority Critical patent/CN102760132B/zh
Publication of CN102760132A publication Critical patent/CN102760132A/zh
Application granted granted Critical
Publication of CN102760132B publication Critical patent/CN102760132B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种数据流频繁项挖掘方法和装置。该方法包括:初始化样本表和历史信息表;根据数据流中数据项出现的频率更新样本表和历史信息表,其中,根据历史信息表中数据项的频率信息确定该数据项在样本表中的频率信息;根据样本表中数据项的频率信息确定数据流频繁项;其中,在样本表中存储的信息包括:在数据流中出现的频率信息满足预定条件的数据项的信息、以及在该数据流的当前分片中出现的数据项的信息,历史信息表中存储的信息包括:在所述数据流中出现过、且其频率信息不满足所述预定条件的数据项的信息,所述数据项的信息包括数据项的频率信息和数据项标识。应用本发明能够提高挖掘数据流频繁项的准确性。

Description

一种数据流频繁项挖掘方法和装置
技术领域
本发明涉及数据业务技术领域,尤其涉及一种数据流频繁项挖掘方法和装置。
背景技术
网络数据流是有序到达的数据包集合。它的无限性、连续性和速度快等特点使得网络流量监控系统要同时统计所有的数据流信息是不现实的。已有对网络数据流性质的研究表明,数据流分布具有重尾分布特征(heavy-taileddistribution),即少量的IP流占据大部分的网络流量。此少量的IP流称为大流(heavy hitters)或频繁项(frequent entry)。假定当前数据流长度为N,给定支持度s∈(0,1),则所有频率计数超过sN的数据项即为频繁项。事实上,许多应用,如网络计费,负载均衡,拒绝服务攻击检测等仅需要频繁项流量信息,丢弃小流信息。近年来,数据流频繁项挖掘已成为一个研究热点,并取得了一些研究成果。
Manku和Motwani在文献“Approximate frequency counts over datastreams.In Proceedings of the 28th International conference on Very Large DataBase,August 2002”中提出基于确定区间的ε近似数据流频繁项挖掘算法-损耗计数(Lossy Counting,LC)算法。该算法在内存中维护一个数据流表,记录数据流的频率估计值和误差边界。具体地,该算法将数据流均匀分片,某数据包到达时,查询数据流表中是否存在相应的数据项,有则相应频率计数值加1,否则在流表中插入新数据项,初始频率计数值为1,误差边界为上个分片结束时记录的误差边界。当到达分片末尾时,LC算法删除频率估计值和误差边界小于当前分片索引的流,并记录新的误差边界为当前分片索引。LC算法对各个分片的处理方法相同。当用户发出数据频繁项查询时,LC算法返回其频率估计值和误差边界大于等于选定门限sN的数据项。
LC算法实现简单,可快速检测数据流频繁项。但LC算法指定误差边界为当前分片索引,即数据流表中出现过的数据项的最大频率计数值。LC算法的误差边界过大地估计了数据流大小,使算法具有较高的误报率。
Dimitropoulos和Hurley在文献“Probabilistic lossy counting:An efficientalgorithm for finding heavy hitters.ACM SIGCOMM ComputerCommunications Review,2008”中改进了LC算法中的误差边界估计方法,提出基于概率误差区间的ε近似算法一概率损耗计数(Probabilistic LossyCounting,PLC)算法。该算法源于数据流分布具有重尾分布特征,其基本思想是利用重尾分布特征估计满足P(X>Δ)≤δ的误差边界Δ。
PLC算法在每个分片的结束,用pareto分布(最简单的重尾分布模型)模拟重尾分布,计算新的误差边界值。当网络流量分布完全模拟重尾分布时,PLC算法估计的误差边界反映了网络流量的统计特性,小于LC算法估计的误差边界,降低误报率,提高算法准确率。且由于网络流量中90-98%的流均为小流,PLC算法对误差边界的估计使它更大胆的移除小流,从而极大地减小空间消耗。但重尾分布变量具有高可变性和强烈的局部突发,且与重尾分布的尾部指数密切相关。当尾部指数变化时,网络流量分布背离重尾分布,不再适合用pareto分布模拟。因此,PLC算法估计的误差边界出现偏差,对数据流大小的估计会极不准确,误报率和漏报率增加,算法准确率下降。
可见,如何提高挖掘数据流频繁项的准确率,是当前亟待解决的技术问题。
发明内容
有鉴于此,本发明提供了一种数据流频繁项挖掘方法和装置,以便提高挖掘数据流频繁项的准确性。
本发明采用的技术方案具体是这样实现的:
一种数据流频繁项挖掘方法,该方法包括:
初始化样本表和历史信息表;
根据数据流中数据项出现的频率更新样本表和历史信息表,其中,根据历史信息表中数据项的频率信息确定该数据项在样本表中的频率信息;
根据样本表中数据项的频率信息确定数据流频繁项;
其中,在样本表中存储的信息包括:在数据流中出现的频率信息满足预定条件的数据项的信息、以及在该数据流的当前分片中出现的数据项的信息,
历史信息表中存储的信息包括:在所述数据流中出现过、且其频率信息不满足所述预定条件的数据项的信息,
所述数据项的信息包括数据项的频率信息和数据项标识。
一种数据流频繁项挖掘装置,该装置包括存储模块、更新模块和确定模块;
所述存储模块,用于存储样本表和历史信息表;其中,在样本表中存储的信息包括:在数据流中出现的频率信息满足预定条件的数据项的信息、以及在该数据流的当前分片中出现的数据项的信息;历史信息表中存储的信息包括:在所述数据流中出现过、且其频率信息不满足所述预定条件的数据项的信息;所述数据项的信息包括数据项的频率信息和数据项标识;
所述更新模块,用于根据数据流中数据项出现的频率更新样本表和历史信息表,其中,根据历史信息表中数据项的频率信息确定该数据项在样本表中的频率信息;
所述确定模块,用于根据样本表中数据项的频率信息确定数据流频繁项。
由上述技术方案可见,本发明存储有样本表和历史信息表,根据数据流中数据项出现的频率更新样本表和历史信息表,特别地,可以根据历史信息表中数据项的频率信息确定该数据项在样本表中的频率信息,使得在估计数据项在数据流中出现的频率时,可以综合考虑该数据项以往出现的频率信息对当前分片中出现的频率信息的影响,从而使得样本表中记录的数据项频率信息能够更加真实地反映数据项在数据流中实际出现的频率,因此使得根据样本表中的频率信息确定数据流频繁项时,其准确性能够得到提高。
附图说明
图1是本发明提供的数据流频繁项挖掘方法流程图。
图2是本发明进行数据流频繁项挖掘时的数据流处理流程图。
图3是本发明根据当前分片中的数据项信息对样本表和历史信息表进行更新的方法流程图。
图4是本发明提供的查询数据流频繁项的方法流程图。
图5是本发明实验的误报率对比图。
图6是本发明实验的漏报率对比图。
图7是本发明实验的空间消耗对比图。
图8是本发明提供的数据流频繁项挖掘装置的结构图。
具体实施方式
图1是本发明提供的数据流频繁项挖掘方法流程图。
如图1所示,该方法包括:
步骤101,初始化样本表和历史信息表。
本步骤中,可以将样本表和历史信息表初始化为空。
步骤102,根据数据流中数据项出现的频率更新样本表和历史信息表,其中,根据历史信息表中数据项的频率信息确定该数据项在样本表中的频率信息。
本步骤中,通过更新样本表和历史信息表,使得样本表中存储的信息包括:在数据流中出现的频率信息满足预定条件的数据项的信息、以及在该数据流的当前分片中出现的数据项的信息;使得历史信息表中存储的信息包括:在所述数据流中出现过、且其频率信息不满足所述预定条件的数据项的信息。其中,所述数据项的信息包括数据项的频率信息和数据项标识。
步骤103,根据样本表中数据项的频率信息确定数据流频繁项。
本发明图1所述方法通过引入数据项的历史信息增强记忆性,以预保护候选的数据流频繁项,从而提高检测准确度。
图1所示方法需要维护两个数据流表:一,样本表,用于保存最近出现的数据项信息;二,历史信息表,用于记录候选的数据流频繁项的信息,即记录可能成为数据流频繁项的数据项。在对图1所示方法进行进一步地详细阐述前,先对后续将要用到的术语定义如下:
样本表,用于存储最近出现的数据项的信息,一般包括频率信息满足预定条件的数据项的信息,以及在数据流当前分片中出现的数据项的信息。样本表中数据项的信息具体包括数据项的流标识e、频率估计值
Figure BSA00000484072400051
和误差边界值Δ,其数据存储结构可以为
Figure BSA00000484072400052
历史信息表,用于存储候选的数据流频繁项的信息,一般包括在所述数据流中出现过、且其频率信息不满足所述预定条件的数据项的信息。历史信息表中数据项的信息具体包括:数据项的流标识e、该数据项的信息被存入历史信息表时该数据项所在的数据流分片索引i′、该数据项的信息被从样本表中删除时该数据项在样本表中的频率估计值与误差边界值之和f,其数据存储结构可以为(e,i′,f)。
误差参数ε,是用户许可的误差,可由用户设置。ε的取值范围是0<ε<1,一般地,ε<<s。其中,s是设定的支持度,0<s<1,s用于指定频率估计值占数据流总长度多大比例的数据项为频繁项。
分片,用于将数据流分成多个数据片,分片的大小与误差参数ε有关,一般每个分片包含w个数据元素,其中,
Figure BSA00000484072400053
表示向上取整,其中的数据元素一般为数据包。
平滑常数q,用于表示历史信息表中的频率信息对样本表中的误差边界产生影响的权重值。平滑常数q反映了网络流量的动态性,q的值越接近1,表示历史信息表中的频率信息对样本表中的误差边界值影响越大,q的值越接近0,表示历史信息表中的频率信息对样本表中的误差边界值影响越小,即之前处理的分片对当前分片的影响越小。经总结,本发明中q的取值可以为:
Figure BSA00000484072400054
下面举具体的例子,对图1所示方法进行详细介绍,具体请参见图2-图。
图2是本发明进行数据流频繁项挖掘时的数据流处理流程图。
步骤201,进行参数初始化。
本步骤中,设定误差参数ε和支持度s,所述误差参数ε和支持度s与用户想要选择的频繁项的范围有关,一般由用户设定。当用户指定误差参数ε的具体取值后,本发明根据样本表中的数据项信息返回的频繁项满足ε近似输出,即:所有真实频率计数大于sN的数据项必须输出为频繁项;所有真实频率计数小于(s-ε)N的数据项必须不能输出为频繁项;所有输出的频繁项的估计频率计数和真实频率计数之差小于εN。
在内存中建立样本表和历史信息表,均初始化为空。样本表的每一项保存一个三元组记录:
Figure BSA00000484072400061
历史信息表的条目也用三元组记录标识:(e,i′,f)。对数据流均匀分片,每片包含
Figure BSA00000484072400062
个元素。分片被连续处理,分片索引由1开始递增。当前误差边界初始化为Δ=0。
步骤202,根据数据流当前分片中的数据项信息对样本表和历史信息表进行更新。
关于本步骤的具体更新方法,请参见图3。
步骤203,判断当前分片是否结束,如果结束,执行步骤204,否则返回步骤202。
步骤204,从样本表中删除频率信息不满足预定条件的数据项的信息。
本步骤中,从样本表中删除
Figure BSA00000484072400063
的数据项的信息。
步骤205,利用从样本表中删除的数据项信息更新历史信息表中的数据项信息。
本步骤中,从样本表中删除的数据项信息中,如果其
Figure BSA00000484072400064
则可以将相应的数据项信息插入到历史信息表中作为候选数据流频繁项,之所以选择
Figure BSA00000484072400065
的数据项作为候选数据流频繁项,是因为,如果数据项在每个分片中仅出现一次,可经验地认为该数据项不可能为数据流频繁项。这样做即节省了空间消耗,又不会降低频繁项挖掘的准确度。
由于历史信息表的空间有限,因此当历史信息表当前的数据项个数与当前从样本表中删除的数据项个数之和大于历史信息表最大能够存储的数据项个数时,只能从历史信息表中已有的数据项和当前从样本表中删除的数据项中选择部分数据项进行删除,而将其余的数据项存储在历史信息表中。
为了尽可能地在历史信息表中存储成为频繁项的概率较大的数据项,可以在历史信息表当前的数据项信息和当前从样本表中删除的数据项信息中选择qi-i′f最小的n个数据项信息进行删除,以便把样本表中最近的候选数据流频繁项保存到历史信息表中,并删除历史信息表中的老化候选数据流频繁项。这是一个动态的更新过程,使历史信息表中记录的永远是最近的,最有可能成为候选数据流频繁项。
其中,n是本次更新前历史信息表中的数据项个数与当前从样本表中删除的数据项个数之和减去历史信息表最大能够存储的数据项个数所得的差。
在每一分片结束后,还可以计算下一分片的误差边界值Δ′,该误差边界值Δ′用于在步骤202中更新样本表和历史信息表时,估计在样本表和历史信息表中均没有出现的数据项的误差边界Δ,具体估计方法参见图3的说明。
具体地,在每一分片结束后,需要更新历史信息表,假设分片结束更新历史信息表时删除了qi-i′f最小的n个数据项信息,则该分片的误差边界值Δ′为这n个数据项信息中最大的qi-i′f,即Δ′=max((qi-i′f)1,......,(qi-i′f)n)。
关于历史信息表所占用的空间大小,可以有多种确定方法,下面仅举两个例子进行示例性说明:其一,利用系统可使用的内存资源指定合适的历史信息表大小,此方法简单且在内存消耗上提供了很强的保证,但是内存资源不能得到合理利用。其二,在目标环境下使用训练数据集估计历史信息表大小,即在每个分片结束时,利用从样本表中筛选出的候选数据流频繁项的数目的最大值确定历史信息表大小。
步骤206,判断数据流是否处理完毕,如果是,结束本流程,如果否,返回步骤202。
图3是本发明根据当前分片中的数据项信息对样本表和历史信息表进行更新的方法流程图。
如图3所示,该方法包括:
步骤301,从当前分片中取出一数据项。
步骤302,查找样本表中是否存在该数据项的信息,如果是,执行步骤303,否则执行步骤304。
步骤303,将该数据项在样本表中的频率估计值加1,进入步骤307。
步骤304,查找历史信息表中是否存在该数据项的信息,如果是,执行步骤305,否则执行步骤306。
步骤305,将该数据项的信息从历史信息表中删除,并插入样本表中,进入步骤307。
本步骤中,如果该数据项在历史信息表中的信息为(e,i′,f),则将该数据项插入样本表中后,其在样本表中的信息为(e,1,qi-i′f),即将该数据项在样本表中的频率估计值
Figure BSA00000484072400082
记为1,误差边界值Δ记为qi-i′f。
步骤306,将该数据项的信息记录在样本表中,其中,该数据项的频率估计值记为1,误差边界值Δ记为上一分片结束时计算的误差边界值Δ′。
步骤307,判断当前分片是否已结束,如果是,结束本流程,否则返回步骤301。
在图2所示方法中,任何时刻如果用户想要查询数据流频繁项,则遍历样本表,根据用户输入的支持度s查询出相应的频繁项,具体请参见图4。
图4是本发明提供的查询数据流频繁项的方法流程图。
如图4所示,该方法包括:
步骤401,接收用户输入的支持度s。
步骤402,从样本表中取出一数据项。
步骤403,判断该数据项在样本表中的频率估计值
Figure BSA00000484072400084
与误差边界值Δ之和是否大于sN,如果是,执行步骤404,如果否,执行步骤405。
其中,N是截止到当前时刻已处理的数据流的长度。
步骤404,将该数据项输出为频繁项。
步骤405,判断该样本表是否已遍历结束,如果是,结束本流程,如果否,返回步骤402。
图4所示方法输出的频繁项包括两类:第一类是真实频率大于sN的数据项,第二类是真实频率在(s-ε)N之间的数据项。其中的第二类是误报项,即将本不是频繁项的数据项误报为频繁项。
为了验证本发明提供的数据项挖掘方法的性能优势,本申请人特做如下实验:
从MAWI网络中采集的15个数据集以及中国科学院校园网络骨干网络出口采集的200多个数据集中分别选择1个有代表性的数据集Trance I和Trance II进行实验,数据集的统计信息参见表一。
表一
本申请人采用表一真实的网络数据进行实验,在实验中采用的误差参数ε=0.001%,即每个分片处理的数据包个数为100000,支持度s选取三个值,分别为s=1%,s=0.1%和s=0.05%。
本申请人根据实验结果,从误报率、漏报率、空间消耗和计算复杂度四个方面对本发明的频繁项挖掘方法与LC算法和PLC算法进行验证,具体请参见图5-图7以及表二。
其中,误报率指的是周期性的进行数据流频繁项查询,频繁项挖掘系统误报的频繁项在返回的频繁项总数中所占的比例。漏报率指的是周期性的进行数据流频繁项查询,频繁项挖掘系统漏报的频繁项在返回的频繁项总数中所占的比例。空间消耗是通过监测频繁项挖掘系统使用的数据结构保存的数据流条目数进行比较。计算复杂度是通过在相同环境下单数据项的更新时间进行比较。
图5是本发明实验的误报率对比图。
图6是本发明实验的漏报率对比图。
图7是本发明实验的空间消耗对比图。
图5至图7中,MLC代表本发明的方法。
表二是本发明的计算复杂度对比表。
表二
Figure BSA00000484072400101
由图5-图7以及表二可见,本发明在误报率上改善了LC算法,在算法效率上明显快于PLC算法。在空间消耗上,三种算法的最大空间消耗基本一致,本发明和PLC算法的空间消耗随着时间增长空间消耗逐步下降。在漏报率上,本发明和LC算法基本无漏报,PLC算法在最坏情况下最大漏报率为0.044。因此,综合误报率、漏报率、空间消耗和计算复杂度这四项指标,本发明进行数据挖掘的整体性能较高。
下面结合理论分析,对本发明的优点进一步阐述:
误报率的大小与误差边界Δ的取值密切相关。本发明通过适当的保存历史信息,即在历史信息表中存储候选频繁项的信息,利用历史信息对不同的分片中出现的新数据项指定最佳的误差界限,从而降低了误报率。
本发明虽然需要在样本表外再保存一个历史信息表,但是由于限定了历史信息表的大小,因此其空间消耗与LC算法和PLC算法相比并没有明显增加。
根据本发明提供的上述方法,本发明还提供了相应的数据流频繁项挖掘装置,具体请参见图8。
图8是本发明提供的数据流频繁项挖掘装置的结构图。
如图8所示,该装置包括存储模块801、更新模块802和确定模块803。
存储模块801,用于存储样本表和历史信息表;其中,在样本表中存储的信息包括:在数据流中出现的频率信息满足预定条件的数据项的信息、以及在该数据流的当前分片中出现的数据项的信息;历史信息表中存储的信息包括:在所述数据流中出现过、且其频率信息不满足所述预定条件的数据项的信息;所述数据项的信息包括数据项的频率信息和数据项标识。
更新模块802,用于根据数据流中数据项出现的频率更新样本表和历史信息表,其中,根据历史信息表中数据项的频率信息确定该数据项在样本表中的频率信息。
确定模块803,用于根据样本表中数据项的频率信息确定数据流频繁项。
更新模块802,用于在每一分片结束时,从样本表中删除频率信息不满足所述预定条件的数据项的信息,利用从样本表中删除的数据项信息更新历史信息表中的数据项信息。
样本表中存储的数据项信息包括:该数据项的流标识e、频率估计值
Figure BSA00000484072400111
和误差边界值Δ。
历史信息表中存储的数据项信息包括:该数据项的流标识e、该数据项的信息被存入历史信息表时该数据项所在的数据流分片索引i′、该数据项的信息被从样本表中删除时该数据项在样本表中的频率估计值与误差边界值之和f。
更新模块802,用于在当前分片中的数据项未出现在样本表中,但是出现在历史信息表中时,将该数据项在样本表中的频率估计值
Figure BSA00000484072400112
记为1,误差边界值Δ记为qi-i′f,其中,i是当前数据流分片的索引号,q是根据数据流分片之间的联系紧密程度预先设定的平滑参数,0≤q<1。
更新模块802,用于在历史信息表当前的数据项个数与当前从样本表中删除的数据项个数之和大于历史信息表最大能够存储的数据项个数时,在历史信息表当前的数据项信息和当前从样本表中删除的数据项信息中选择qi-i′f最小的n个数据项信息,删除所述n个数据项信息。
其中,n是本次更新前历史信息表中的数据项个数与当前从样本表中删除的数据项个数之和减去历史信息表最大能够存储的数据项个数所得的差。
更新模块802,用于在每一分片结束时,从所述n个数据项信息中选择最大的qi-i′f作为下一分片的误差边界值,在当前分片中的数据项未出现在样本表中,且未出现在历史信息表中时,将样本表中该数据项的频率估计值记为1,误差边界值Δ记为上一分片结束时计算的误差边界值。
更新模块802,用于在当前分片的数据项出现在样本表中时,将样本表中该数据项的频率估计值
Figure BSA00000484072400122
加1。
确定模块803,用于将样本表中的频率信息满足
Figure BSA00000484072400123
的数据项确定为数据流频繁项,其中,s是指定的支持度,0<s<1,N是所述数据流的长度。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (18)

1.一种数据流频繁项挖掘方法,其特征在于,该方法包括:
初始化样本表和历史信息表;
根据数据流中数据项出现的频率,更新样本表和历史信息表,其中,根据历史信息表中数据项的频率信息确定该数据项在样本表中的频率信息;
根据样本表中数据项的频率信息确定数据流频繁项;
其中,在样本表中存储的信息包括:在数据流中出现的频率信息满足预定条件的数据项的信息、以及在该数据流的当前分片中出现的数据项的信息,
历史信息表中存储的信息包括:在所述数据流中出现过、且其频率信息不满足所述预定条件的数据项的信息,
所述数据项的信息包括数据项的频率信息和数据项标识。
2.根据权利要求1所述的方法,其特征在于,根据数据流中数据项出现的频率,更新样本表和历史信息表包括:
在每一分片结束时,从样本表中删除频率信息不满足所述预定条件的数据项的信息,利用从样本表中删除的数据项信息更新历史信息表中的数据项信息。
3.根据权利要求2所述的方法,其特征在于,
样本表中存储的数据项信息包括:该数据项的流标识e、频率估计值和误差边界值Δ;
历史信息表中存储的数据项信息包括:该数据项的流标识e、该数据项的信息被存入历史信息表时该数据项所在的数据流分片索引i′、该数据项的信息被从样本表中删除时该数据项在样本表中的频率估计值与误差边界值之和f;
所述根据历史信息表中数据项的频率信息确定该数据项在样本表中的频率信息包括:
在当前分片中的数据项未出现在样本表中,但是出现在历史信息表中时,将该数据项在样本表中的频率估计值
Figure FSA00000484072300012
记为1,误差边界值Δ记为qi-i′f,其中,i是当前数据流分片的索引号,q是根据数据流分片之间的联系紧密程度预先设定的平滑参数,0≤q<1。
4.根据权利要求3所述的方法,其特征在于,所述利用从样本表中删除的数据项信息更新历史信息表中的数据项信息包括:
在历史信息表当前的数据项个数与当前从样本表中删除的数据项个数之和大于历史信息表最大能够存储的数据项个数时,在历史信息表当前的数据项信息和当前从样本表中删除的数据项信息中选择qi-i′f最小的n个数据项信息,删除所述n个数据项信息;
其中,n是本次更新前历史信息表中的数据项个数与当前从样本表中删除的数据项个数之和减去历史信息表最大能够存储的数据项个数所得的差。
5.根据权利要求4所述的方法,其特征在于,该方法还包括:
在当前分片结束时,从所述n个数据项信息中选择最大的qi-i′f作为下一个分片的误差边界值。
6.根据权利要求5所述的方法,其特征在于,所述根据历史信息表中数据项的频率信息确定该数据项在样本表中的频率信息包括:
在当前分片中的数据项未出现在样本表中,且未出现在历史信息表中时,将样本表中该数据项的频率估计值
Figure FSA00000484072300021
记为1,误差边界值Δ记为上一分片结束时计算的误差边界值。
7.根据权利要求3所述的方法,其特征在于,
在当前分片的数据项出现在样本表中时,将样本表中该数据项的频率估计值
Figure FSA00000484072300022
加1。
8.根据权利要求2所述的方法,其特征在于,所述从样本表中删除频率信息不满足所述预定条件的数据项的信息包括:
将样本表中频率估计值
Figure FSA00000484072300023
和误差边界值Δ之和小于或等于当前分片的索引号的数据项信息从样本表中删除。
9.根据权利要求3所述的方法,其特征在于,
所述初始化样本表和历史信息表包括:将样本表和历史信息表初始化为空;
在根据数据流中数据项出现的频率更新样本表和历史信息表之前,该方法还包括:将所述误差边界值Δ初始化为0。
10.根据权利要求3所述的方法,其特征在于,
Figure FSA00000484072300031
N是所述数据流的长度,w是该数据流的分片的长度,w是1/ε向上取整所得的结果,ε是指定的误差参数,0<ε<1。
11.根据权利要求10所述的方法,其特征在于,所述根据样本表中数据项的频率信息确定数据流频繁项包括:
将样本表中的频率信息满足
Figure FSA00000484072300032
的数据项确定为数据流频繁项,其中,s是指定的支持度,0<s<1。
12.一种数据流频繁项挖掘装置,其特征在于,该装置包括存储模块、更新模块和确定模块;
所述存储模块,用于存储样本表和历史信息表;其中,在样本表中存储的信息包括:在数据流中出现的频率信息满足预定条件的数据项的信息、以及在该数据流的当前分片中出现的数据项的信息;历史信息表中存储的信息包括:在所述数据流中出现过、且其频率信息不满足所述预定条件的数据项的信息;所述数据项的信息包括数据项的频率信息和数据项标识;
所述更新模块,用于根据数据流中数据项出现的频率更新样本表和历史信息表,其中,根据历史信息表中数据项的频率信息确定该数据项在样本表中的频率信息;
所述确定模块,用于根据样本表中数据项的频率信息确定数据流频繁项。
13.根据权利要求12所述的装置,其特征在于,
所述更新模块,用于在每一分片结束时,从样本表中删除频率信息不满足所述预定条件的数据项的信息,利用从样本表中删除的数据项信息更新历史信息表中的数据项信息。
14.根据权利要求12所述的装置,其特征在于,
样本表中存储的数据项信息包括:该数据项的流标识e、频率估计值
Figure FSA00000484072300033
和误差边界值Δ;
历史信息表中存储的数据项信息包括:该数据项的流标识e、该数据项的信息被存入历史信息表时该数据项所在的数据流分片索引i′、该数据项的信息被从样本表中删除时该数据项在样本表中的频率估计值与误差边界值之和f;
所述更新模块,用于在当前分片中的数据项未出现在样本表中,但是出现在历史信息表中时,将该数据项在样本表中的频率估计值记为1,误差边界值Δ记为qi-i′f,其中,i是当前数据流分片的索引号,q是根据数据流分片之间的联系紧密程度预先设定的平滑参数,0≤q<1。
15.根据权利要求14所述的装置,其特征在于,
所述更新模块,用于在历史信息表当前的数据项个数与当前从样本表中删除的数据项个数之和大于历史信息表最大能够存储的数据项个数时,在历史信息表当前的数据项信息和当前从样本表中删除的数据项信息中选择qi-i′f最小的n个数据项信息,删除所述n个数据项信息;
其中,n是本次更新前历史信息表中的数据项个数与当前从样本表中删除的数据项个数之和减去历史信息表最大能够存储的数据项个数所得的差。
16.根据权利要求15所述的装置,其特征在于,
所述更新模块,用于在每一分片结束时,从所述n个数据项信息中选择最大的qi-i′f作为下一分片的误差边界值,在当前分片中的数据项未出现在样本表中,且未出现在历史信息表中时,将样本表中该数据项的频率估计值
Figure FSA00000484072300042
记为1,误差边界值Δ记为上一分片结束时计算的误差边界值。
17.根据权利要求14所述的装置,其特征在于,
所述更新模块,用于在当前分片的数据项出现在样本表中时,将样本表中该数据项的频率估计值加1。
18.根据权利要求14所述的装置,其特征在于,
所述确定模块,用于将样本表中的频率信息满足
Figure FSA00000484072300044
的数据项确定为数据流频繁项,其中,s是指定的支持度,0<s<1,N是所述数据流的长度。
CN201110108557.3A 2011-04-28 2011-04-28 一种数据流频繁项挖掘方法和装置 Active CN102760132B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110108557.3A CN102760132B (zh) 2011-04-28 2011-04-28 一种数据流频繁项挖掘方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110108557.3A CN102760132B (zh) 2011-04-28 2011-04-28 一种数据流频繁项挖掘方法和装置

Publications (2)

Publication Number Publication Date
CN102760132A true CN102760132A (zh) 2012-10-31
CN102760132B CN102760132B (zh) 2014-11-05

Family

ID=47054590

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110108557.3A Active CN102760132B (zh) 2011-04-28 2011-04-28 一种数据流频繁项挖掘方法和装置

Country Status (1)

Country Link
CN (1) CN102760132B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105989104A (zh) * 2015-02-13 2016-10-05 华为技术有限公司 一种确定大数据流中的特殊数据项的方法及装置
CN106934059A (zh) * 2017-03-22 2017-07-07 哈尔滨工业大学 一种大数据上的均值近似聚集方法
CN108595581A (zh) * 2018-04-17 2018-09-28 清华大学 数据流中频繁项的挖掘方法及挖掘系统
CN109165241A (zh) * 2018-07-31 2019-01-08 武汉大学 一种获取数据流频繁项的方法
CN111199022A (zh) * 2019-12-31 2020-05-26 北京月新时代科技股份有限公司 一种许可管理方法、装置、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7039766B1 (en) * 2000-10-12 2006-05-02 International Business Machines Corporation Prescheduling sequential data prefetches in a preexisting LRU cache
CN101499097A (zh) * 2009-03-16 2009-08-05 浙江工商大学 基于散列表的数据流频繁模式内存压缩存储方法
CN101650730A (zh) * 2009-09-08 2010-02-17 中国科学院计算技术研究所 数据流中带权值频繁项挖掘方法和系统
CN101887450A (zh) * 2010-05-19 2010-11-17 东北电力大学 一种随机型分布式数据流频繁项集挖掘系统及其方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7039766B1 (en) * 2000-10-12 2006-05-02 International Business Machines Corporation Prescheduling sequential data prefetches in a preexisting LRU cache
CN101499097A (zh) * 2009-03-16 2009-08-05 浙江工商大学 基于散列表的数据流频繁模式内存压缩存储方法
CN101650730A (zh) * 2009-09-08 2010-02-17 中国科学院计算技术研究所 数据流中带权值频繁项挖掘方法和系统
CN101887450A (zh) * 2010-05-19 2010-11-17 东北电力大学 一种随机型分布式数据流频繁项集挖掘系统及其方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王铁存: "数据流频繁项挖掘算法研究与应用", 《优秀硕士学位论文全文库》 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105989104A (zh) * 2015-02-13 2016-10-05 华为技术有限公司 一种确定大数据流中的特殊数据项的方法及装置
CN105989104B (zh) * 2015-02-13 2019-09-03 华为技术有限公司 一种确定大数据流中的特殊数据项的方法及装置
CN106934059A (zh) * 2017-03-22 2017-07-07 哈尔滨工业大学 一种大数据上的均值近似聚集方法
CN106934059B (zh) * 2017-03-22 2019-10-22 哈尔滨工业大学 一种钢管的长度大数据上的均值近似聚集方法
CN108595581A (zh) * 2018-04-17 2018-09-28 清华大学 数据流中频繁项的挖掘方法及挖掘系统
CN109165241A (zh) * 2018-07-31 2019-01-08 武汉大学 一种获取数据流频繁项的方法
CN109165241B (zh) * 2018-07-31 2023-06-30 武汉大学 一种获取数据流频繁项的方法
CN111199022A (zh) * 2019-12-31 2020-05-26 北京月新时代科技股份有限公司 一种许可管理方法、装置、电子设备及存储介质
CN111199022B (zh) * 2019-12-31 2022-05-03 北京月新时代科技股份有限公司 一种许可管理方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN102760132B (zh) 2014-11-05

Similar Documents

Publication Publication Date Title
Frahling et al. Coresets in dynamic geometric data streams
US5664179A (en) Modified skip list database structure and method for access
CN102760132A (zh) 一种数据流频繁项挖掘方法和装置
CN111460023B (zh) 基于Elasticsearch的业务数据处理方法、装置、设备及存储介质
CN103092867B (zh) 一种数据管理方法及系统、数据分析装置
CN103995855B (zh) 存储数据的方法和装置
EP2924594A1 (en) Data encoding and corresponding data structure in a column-store database
EP3720064A1 (en) Path calculation method and device under multi-dimensional constraints, processor and storage medium
CN106528787A (zh) 一种基于海量数据多维分析的查询方法及装置
CN103473239A (zh) 一种非关系型数据库数据更新方法和装置
CN103488687A (zh) 用于大数据的搜索系统和搜索方法
CN107545021A (zh) 一种数据存储方法及装置
CN109542339B (zh) 数据分层访问方法、装置、多层存储设备和存储介质
CN102082701B (zh) 网元位置信息存储方法及装置
CN108694188A (zh) 一种索引数据更新的方法以及相关装置
CN101163032A (zh) 一种管理告警查询的方法
CN104391992B (zh) 针对资产数据的数据处理系统
CN113867627B (zh) 一种存储系统性能优化方法及系统
CN109189343B (zh) 一种元数据落盘方法、装置、设备及计算机可读存储介质
CN105260465A (zh) 一种图数据处理服务的方法、装置
CN101022370A (zh) G比特流率下多粒度的网络自动聚类方法
CN105095224A (zh) 一种在移动通信网络中进行olap分析的方法、装置和系统
CN101729929A (zh) 一种智能网业务库存取海量数据的系统、装置及方法
CN116301656A (zh) 基于日志结构合并树的数据存储方法、系统及设备
CN106775450B (zh) 一种混合存储系统中的数据分布方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant