[发明专利]基于分布式架构的数据流频繁项挖掘方法在审
申请号: | 201610254621.1 | 申请日: | 2016-04-21 |
公开(公告)号: | CN105930457A | 公开(公告)日: | 2016-09-07 |
发明(设计)人: | 张玉;徐敬东;张建忠;于博文;陈正阳 | 申请(专利权)人: | 南开大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 天津佳盟知识产权代理有限公司 12002 | 代理人: | 侯力 |
地址: | 300071*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提出了基于分布式架构的数据流频繁项挖掘方法。该方法采用两层树形的通信结构,包括m个叶子节点和1个根节点。叶子节点负责处理数据流中的数据项,并在数据项频率的增量超过阈值时向根节点发送频率增量。根节点负责收集叶子节点传递的更新。该方法通信开销小,同时可以实时响应用户发起的频繁项查询请求。 | ||
搜索关键词: | 基于 分布式 架构 数据流 频繁 挖掘 方法 | ||
【主权项】:
一种基于分布式架构的数据流频繁项挖掘方法,该方法采用2层树形的通信结构,包括m个叶子节点和1个根节点;所述叶子节点负责处理数据流中的数据项,将数据流中的数据项频率存储在叶子节点的最小堆中,并在数据项频率增量大于阈值时,将数据项频率增量发送至根节点;所述根节点负责计算数据项在整体架构中的频率估计值,将数据项频率估计值存储在根节点的最小堆中;所述叶子节点的最小堆中存储的条目包括数据项名称、数据项频率以及数据项频率增量;所述根节点的最小堆中存储的条目包括数据项名称以及数据项频率估计值;该方法包括:步骤1)、每个叶子节点i从所收到的数据流中依次取出数据项,所述数据项包括数据项名称vt及数据项频率cv,t;步骤2)、更新所述叶子节点的数据项频率之和Ni=Ni+cv,t以及数据项频率之和的增量Δi=Δi+cv,t,其中的等号表述赋值,下同;步骤3)、根据步骤1)所取出的数据项的数据项名称vt和数据项频率cv,t在所述的叶子节点的最小堆Hi中找出合适的条目,并为该条目中的数据项名称、数据项频率以及数据项频率增量赋值;该步骤包括:步骤3‑1)、判断所述的叶子节点的最小堆中是否存在数据项名称为vt的条目,若存在执行下一步,否则,执行步骤3‑5);步骤3‑2)、判断所述的叶子节点的最小堆Hi是否已满,若已满,执行下一步,否则,执行步骤3‑4);步骤3‑3)、从所述的叶子节点的最小堆Hi中取出数据项频率最小的条目itemmin,对该条目重新赋值,然后执行步骤4);其中,对该条目赋值包括:令v=vt,cv=cv+cv,t,Δv=cv,t;所述的v表示取出条目的数据项名称,所述的vt表示取出的数据项的数据项名称,所述的cv表示取出条目的数据项频率,所述的cv,t表示取出的数据项的数据项频率,所述的Δv表示取出条目的数据项频率增量;步骤3‑4)、创建一个新条目并为新条目赋值,将新条目插入所述的叶子节点的最小堆Hi中,然后执行步骤4);其中,对新条目赋值包括:令v=vt,cv=cv,t,Δv=cv,t;步骤3‑5)、从所述的叶子节点的最小堆Hi中取出已存在的条目
并对该条目进行更新,然后执行步骤4);其中,对该条目更新包括:令cv=cv+cv,t,Δv=Δv+cv,t;步骤4)、判断所述的数据项频率之和的增量以及所述条目的数据项频率增量是否大于阈值,如果大于阈值,向根节点传递更新;该步骤包括:步骤4‑1)、判断所述的数据项频率之和的增量Δi是否满足Δi>βiNi,如果满足,执行下一步,否则,执行步骤4‑3);其中,所述的βi表示用户定义的叶子节点的更新延迟系数,所述的Ni表示所述叶子节点的数据项频率之和;步骤4‑2)、所述的叶子节点向根节点发送0‑msg更新,然后将Δi的值置为0;其中所述的0‑msg更新发送的内容包括所述的数据项频率之和的增量Δi;步骤4‑3)、所述的条目的数据项频率增量Δv是否满足Δv>βiNi,如果满足,执行下一步,否则,执行步骤5);所述的βi表示用户定义的叶子节点的更新延迟系数,所述的Ni表示所述叶子节点的数据项频率之和;步骤4‑4)、所述的叶子节点向根节点发送数据项更新,然后将Δv的值置为0;其中所述的数据项更新发送的内容包括所述的条目的数据项名称以及所述的条目的数据项频率增量Δv;步骤5)、所述的根节点从所述的叶子节点发送的更新中依次取出更新,并根据取出的更新维护相应的数据;该步骤包括:步骤5‑1)、判断根节点取出的所述叶子节点发送的更新的类型,如果是0‑msg更新,执行下一步,如果是数据项更新,执行步骤5‑3);步骤5‑2)、更新所述的根节点的数据项频率之和的估计值N=N+Δi,其中等号表示赋值,然后执行步骤6);其中,所述的N表示根节点的数据项频率之和的估计值,所述的Δi表示所述的叶子节点发送的0‑msg更新的频率;步骤5‑3)、更新所述的根节点的最小堆H0;该步骤包括:步骤5‑3‑1)、取出所述的叶子节点发送的更新中的数据项名称vt以及数据项频率增量Δv,t;步骤5‑3‑2)、判断所述的根节点的最小堆中是否存在数据项名称为vt的条目itemv,若存在执行下一步,否则,执行步骤5‑3‑4);步骤5‑3‑3)、取出所述的条目itemv,对并对该条目进行更新,然后执行步骤6);其中,对该条目更新包括:令cv=cv+Δv,t,其中等号表示赋值;所述的v表示取出条目的数据项名称,所述的cv表示取出条目的数据项频率,所述的Δv,t表示取出数据项更新的数据项频率增量;步骤5‑3‑4)、判断所述的根节点的最小堆H0是否已满,若已满,执行下一步,否则执行5‑3‑6);步骤5‑3‑5)、取出所述的根节点的最小堆H0中数据项频率最小的条目itemmin,对该条目重新赋值,然后执行步骤6);其中,对该条目赋值包括:令v=vt,cv=cv+Δv,t;所述的vt表示取出的数据项更新的数据项名称;步骤5‑3‑6)、创建一个新条目并为新条目赋值,将新条目插入所述的根节点维护的最小堆中,然后执行步骤6);其中,对新条目赋值包括:令v=vt,cv=Δv,t;步骤6)、根据用户的请求,根节点遍历所述的最小堆H0,返回所有数据项频率
的条目为所要挖掘的频繁项。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南开大学,未经南开大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610254621.1/,转载请声明来源钻瓜专利网。