关键词:
即席查询
大数据分析
OLAP
在线异常检测
缺失数据生成
摘要:
即席查询是一种非定制化查询任务,查询指标由用户灵活设定,经分析引擎处理后得到可视化结果,广泛运用于企业的数据分析挖掘。进入大数据时代,为快速挖掘数据潜在价值,企业大都通过数字化转型搭建了大数据分析平台完成即席查询任务。但现有大数据分析平台,主要采用关系型分析(ROLAP)技术或多维分析(MOLAP)技术对源数据进行基本查询分析,功能单一,无法满足灵活多变的即席查询需求。在查询性能、数据表达、数据准备三个方面,分别存在以下问题和挑战:1)传统方案使用的单一分析技术无法兼具高灵活度和低响应时间。ROLAP技术基于表的关联关系,灵活进行多表关联查询,但查询效率不稳定。MOALP技术基于数据模型预计算数据,聚合查询延迟低,但存在查询失败风险,并且数据模型配置依赖数据专家,手动配置难度较高;2)传统大数据分析平台主要聚焦明细和聚合查询,缺乏时序数据在线异常检测功能,数据表达能力有限。进一步面对大数据量、聚合、实时等场景产生的时序数据时,存在异常值检测响应慢和灵活性差等问题;3)传统大数据分析平台仅能对源数据进行简单处理,无法生成缺失数据,数据准备能力欠缺。在数据表系统性缺失时,查询分析误差大,只能通过人工采集恢复缺失数据,费时费力。
针对上述问题和挑战,本文研究了大数据技术、OLAP分析、在线异常检测、缺失数据生成等内容,设计和实现一个大数据分析平台,具体研究内容如下:
(1)针对单一分析技术存在的查询效率不稳定甚至查询失败等问题,提出一种数据分层存储和数据模型自动装配方法,整合现有ROLAP技术和MOLAP技术,实现一个混合分析(HOLAP)引擎。将数据分为热点数据、聚合数据、明细数据三层,总体采用HDFS和Click House两级存储设计,制定合理的查询路由方案,以最快速度执行查询并返回结果,为用户提供海量数据下稳定快速的即席查询体验。
(2)针对大数据量、聚合、实时等场景产生的时序数据在线异常检测效率低和不灵活问题,提出一个基于自适应共振理论的时序数据在线异常检测算法。设计一种滑动窗口特征提取方法提取数据特征,经特征提取后的数据再输入自适应共振算法实时训练和学习并给出每条数据的异常评分,实现在线异常检测。为丰富大数据分析平台数据表达能力,将算法集成到平台分析引擎中,实现一个自定义SQL窗口聚合函数,辅助分析人员快速进行在线异常检测。
(3)针对原始数据表系统性缺失问题,提出一个基于自回归模型的缺失数据生成算法。依据数据表完整情况和表之间的关联关系,将完整表和缺失表连接后得到的所有元组作为训练数据,经过数据解析和处理后,使用改进的MADE自回归模型训练获取数据分布得到生成模型,最后以参与连接的完整表中所有数据作为输入,采样生成缺失数据。生成数据和原始数据一起作用于后续查询,减少数据缺失带来的误差。
最后,结合上述研究内容设计和实现面向即席查询的大数据分析平台,平台已在某钢铁企业内部上线,目前运行稳定,能够满足企业业务分析需求,验证了本文方法和平台的实用性和可靠性。