论文部分内容阅读
电信运营商支撑着整个社会的通信运营,大量的IT机房和通信基站无时无刻不在承载着海量的用户请求。近年来,随着通信行业的飞速发展,在业务量和服务逐年提升的同时,也给运营商带来巨大的能源消耗。如何对各类电信设备进行能源监控,并进一步利用能耗数据加以分析挖掘,帮助企业降低能耗、减少运营成本无疑是一个具有深远意义的问题。与此同时,运营商大量的机房、基站每天产生大量的能耗数据,如何对这些数据加以整理,提出行之有效的分析挖掘方法也是一个有挑战的领域。本文结合数据仓库以及Hadoop集群构建了一个海量能耗数据分析系统原型,对能耗数据进行多维度的分析,并实现了基于Hadoop的数据挖掘算法对海量能耗数据进行挖掘。本文主要工作如下:设计并实现了基于Oracle数据仓库和Hadoop的混合能耗分析系统。使用Oracle存储业务数据并进行OLAP分析,使用Sqoop工具进行Oracle和HDFS之间的数据交换,并利用Hadoop对大规模数据进行数据挖掘分析。系统采用Struts2框架来实现,并使用ExtJS进行前台界面展示。基于Hadoop实现了批量BP神经网络算法。该算法可同时对大量的神经网络进行训练,充分利用Hadoop的大数据处理能力,在系统闲暇时根据能耗历史数据基于一定的规则将用于预测的神经网络算法训练好并将网络结构存储在Oracle数据库中,当用户进行实际预测时可以省去网络训练的过程,提高了实时性。实现了基于Hadoop的x-means算法。该算法是对k-means算法的改进。用户在进行聚类时不再需要指定具体的k值,而只需要指定一个k的范围,算法可以在此范围内寻找一个最适合的k值,这可以在很大程度上避免了用户盲目指定k值所带来的不确定性。借助开源数据挖掘算法包Apache Mahout中的关联规则算法,对影响能耗值的相关属性进行关联规则分析,找出能耗与其各个影响因素之间的潜在关系。