论文部分内容阅读
随着移动互联网的兴起,大规模的数据流正在以前所未有的速度和体量在很多不同的应用场景中产生,如电子商务,社交网络,智慧交通,传感器网络等。相较于传统的离线数据挖掘方法,因为数据流的特征,处理模型的扩展性,状态管理效率,以及负载均衡等问题均对大规模数据流挖掘算法提出了新的要求:1.扩展性:算法需要能够适应数据流量的波动而自动扩展;2.状态管理:流信息需要高效的方法来保存和更新状态;3.负载均衡:针对分布式的环境下需要一个动态的负载均衡来保证算法性能的稳定。本文以大规模数据流的频繁模式挖掘为主要研究对象,对数据流场景下频繁模式挖掘方法等若干问题展开了调研和研究,提出了针对大规模数据流场景下的频繁模式挖掘算法BPFPMS(Balanced Parallel Frequent Pattern Mining over Massive Data Stream),其主要包括以下几个方面的内容:1.针对数据流的状态管理问题,提出了一种DPTS-Tree的结构,这种结构能够针对大规模数据流进行高效的状态维护和更新。相较于传统的方法,其能够充分利用历史状态信息来缩减流信息的存储和更新所产生的负担。实验证明其在内存占用,状态更新,状态压缩等方面都有明显的优势。2.针对传统的并行频繁模式挖掘算法常常出现的负载失衡问题,我们通过调研数据流以及挖掘算法的特征,提出了一种新的动态负载均衡策略。该策略利用子任务的负载等信息进行均匀负载分配,在大规模数据流处理上具有更好的性能表现,同时也避免了数据流状态实时变化带来的性能波动问题。实验表明其能较好地实现负载均衡,保证了 BPFPMS在大规模数据流场景下的性能稳定。我们基于目前流行的大数据处理平台Spark以及消息中间件平台Kafka实现了 BPFPMS,同时测试了其在吞吐量,加速比,负载均衡,时延等指标上的性能表现。实验证明了 BPFPMS在状态管理,负载均衡等方面有着很好的表现。