论文部分内容阅读
数据流的本质特征为变化性及不可预测性。作为数据流一种重要的数据分析方法,数据流突发检测能够及时检测数据流中特定元素的数量异常变化,因此得到了学术界和工业界的广泛关注。应用领域有:光子爆发检测、股票波动检测、网络流量异常波动检测等。数据流突发检测是一个新兴的研究领域,存在许多值得研究且尚未解决的问题:(1)数据流元素及其频数的高效存储。突发检测关心频数变化较大的元素,因此须保存所有相异元素及其频数,而海量数据流中相异元素数目庞大且总数不断变化,每个元素频数的差异也很大。如何高效地存储这些元素及其频数,降低存储开销的同时支持高效的查询处理,是一个基础、关键、值得研究的问题;(2)在某些应用场合,数据流整体的数据量波动剧烈,导致单个元素频数随之变化剧烈。在建立突发模型时,要考虑如何减小数据流整体数据量的波动对单个元素流量的影响;(3)突发检测作为典型的数据流监测应用,并不是孤立的。现有的多个监测应用如Top-k,频繁项挖掘,变化检测、离群点检测等都是相对独立串行工作。如何在单遍处理的前提下,利用有限的存储和计算资源,实时并行地完成多个监测任务,是一个很有意义的工作。本文紧紧围绕着数据流突发检测这个中心,针对上述若干挑战性问题,从数据流处理角度出发,对突发检测处理流程中几个关键问题进行了研究。本文的主要贡献为:1、针对总数动态变化的海量相异数据流元素存储问题,提出了一种自适应的、灵活的、可动态扩展的布卢姆过滤器ExBF。ExBF由一个或多个称为桶的子布卢姆过滤器组成,并由目录和桶的两级结构组成可扩展哈希数据结构,以管理和维护这些桶。与PBF、SpBF、ScBF等已有数种容量可扩展的布卢姆过滤器相比,ExBF的优势为:(1)元素更新和查询时间复杂度为O(1),不随桶数目的增多而线性增加;(2)扩展方式灵活,扩展时仅重新分布一个桶的元素,数据迁移量为总数据量的1/2n,其中n为桶的数目;(3)在元素数目较少时能够动态缩减桶的数目和目录的大小;(4)能够保证假阳性率限制在任意事先确定的范围内。2、针对数据流元素及其频数的高效存储问题,提出了一个基于改良的计数型布卢姆过滤器BCBF+HSet保存所有元素频数的基本方法。该方法使用相对静态和固定的结构,能提高约25%的存储效率,且能应对少数元素频数的剧烈变动。针对数据流中所有元素及其频数重尾分布的特点,提出了一个基于分层计数型布卢姆过滤器HCBF的方法,该方法在选取合适分层参数的情况下,能提高约30%的存储效率。3、在突发模型的建立方面,针对数据流整体数据量波动比较剧烈的情况下进行准确突发检测的问题,提出了流量无关的突发检测方法FFBD,该方法使用单个元素数量与总体元素数量的比值作为单个元素滑动窗口内的聚合函数值,并使用前后两个滑动窗口内的聚合函数值的比值来判断突发。与典型的聚合塔突发检测方法相比,FFBD方法使用多约2%的存储空间,高约5%的计算复杂度,但能有效地规避整体数据流的显著变化对单个元素突发检测带来的影响,有着更好的检测效果。4、在数据流多监测任务协同处理方面,基于数据流滑动窗口模型,提出了一个基于网格划分的多监测任务协同处理方法GD-MMTPM,将监测离群点、监测变化和监测突发等三个监测任务统一起来,使用单遍处理的方式进行统一处理。该方法能同时检测出离群点、变化和突发,且只需维护网格的简单信息,与其它方法相比,能够显著地减少时间复杂度和空间复杂度。综上所述,本文的工作针对数据流中进行突发检测的问题,围绕着该问题的几个挑战进行突破研究,提出了数个算法、方法及模型。由于突发检测在数据流挖掘中的重大理论意义及广阔应用前景,本文对于促进突发检测问题的理论研究和实用化具有一定的理论意义和应用价值。