1.一种电力信息系统海量日志数据实时处理系统,其特征在于:包括:
接收数据模块,用于接收采集到的海量日志数据;
融合存储模块,用于将海量日志数据存储到hbase数据库中;
数据加载模块,用于数据存储和数据查询过程的实时加载;
实时分析处理模块,采用storm框架技术实时计算海量数据;
数据快速查询检索模块,包括查询请求获取模块,关联规则建立模块和查询结果显示模块,所述查询请求获取模块用于获取用户输入的查询关键字;所述关联规则建立模块基于storm框架技术并行处理数据,建立数据之间的关联;所述查询结果显示模块将查询结果输出到用户端。
2.根据权利要求1所述的一种电力信息系统海量日志数据实时处理系统,其特征在于:所述融合存储模块,基于storm分布式流式处理技术将海量日志数据存储到hbase数据库中。
3.根据权利要求1或2所述的一种电力信息系统海量日志数据实时处理系统,其特征在于:所述融合存储模块中包括内存映射文件,用于存储数据文件到数据文件所在内存地址的映射关系。
4.根据权利要求1所述的一种电力信息系统海量日志数据实时处理系统,其特征在于:所述数据加载模块,在数据存储过程采用kafka消息队列技术将海量数据实时存储到hbase数据库中,在数据查询过程中采用impala技术从hbase数据库快速获取查询结果。
5.根据权利要求1所述的一种电力信息系统海量日志数据实时处理系统,其特征在于:所述实时分析处理模块,基于storm框架技术从数据加载模块中获取加载的数据,转换成storm中的topology对象,storm中的调度中心nimbus接收topology对象,并将topology对象分配到不同supervisor的不同worker并行执行任务。
6.根据权利要求1所述的一种电力信息系统海量日志数据实时处理系统,其特征在于:所述关联规则建立模块,具体为:
6.1、对于原始数据库d和新增数据库d中的日志数据经过预处理后,按照日志事件发生时间排列,并通过预设时间间隔的滑动时间窗口,将所有日志事件划分成多项;
6.2、对于原始数据库和新增数据库中的每一项遍历,过滤掉出现次数小于预设值的项,得到原始数据库的所有频繁项组成的频繁项集fd和新增数据库中的所有频繁项组成的频繁项集fd;
6.3、对于集合fd和fd取交集,得到集合c1为原始数据库和新增数据库中都频繁出现的项,取fd和c1的差集,得到在原始数据库中频繁发生,而在新增数据库中不频繁发生的频繁项集合c21,取fd和c1的差集,得到在原始数据库中不频繁发生,而在新增数据库中频繁发生的频繁项集合c31;
6.4、针对频繁项集合c2,在新增数据库中遍历获取每项出现的次数,结合集合c2中的每一项在原始数据库中出现的次数,得到每项出现的总次数;
针对频繁项集合c3,在原始数据库中遍历获取每项出现的次数,结合集合c3中的每一项在新增数据库中出现的次数,得到每项出现的总次数;
6.5、针对频繁项集合c2,过滤掉出现总次数小于预设值的项,得到新的频繁项集合c22;针对频繁项集合c3,过滤掉出现总次数小于预设值的项,得到新的频繁项集合c32;
6.6、合并集合c1、c22和c32得到原始数据库和新增数据库形成的更新数据库的频繁项集合fdd,集合fdd中的每一项中包含的日志事件即为有关联的事件。
7.根据权利要求6所述的一种电力信息系统海量日志数据实时处理系统,其特征在于:所述查询结果显示模块,通过获取到的查询关键字,在频繁项集合fdd中遍历获取包含关键字的日志事件及其关联事件,得到所查询的日志事件的前因后果事件。