一种基于分布式数据挖掘算法的可视化管理系统
技术领域
本发明属于计算机技术领域,涉及一种可视化管理系统,尤其是涉及一种基于分布式数据挖掘算法的可视化管理系统。
背景技术
现阶段大数据应用越来越广泛,电力系统的各业务部门也越发重视大数据的研究及应用。电力系统也建立了大数据平台,但平台的构建与应用的落地依然存在一定的距离。目前,基于大数据平台的使用方法主要存在以下两个方面的问题:
(1)各个业务应用都要开发一套各自的数据挖掘算法,存在冗余开发与重复工作,耗费大量的人力和时间。实际上,业务应用的建设存在共用同一种数据挖掘算法的情况,并不需要重复建设。
(2)针对大数据的定义和特点,对数据的分析、挖掘和展示工作,需要开发人员、业务人员和数据分析师的配合。就目前而言,在项目的建设过程中,业务人员、数据分析师和开发人员缺一不可,需要花费大量的时间进行业务需求的确认、模型的建设与算法实现,开发效率低下。
上述大数据平台的使用方法问题严重影响了电力公司的成本控制、管理与跟踪以及开发效率等方面。因此,对大数据平台进行数据挖掘算法的可视化管理是推动电力企业大数据应用提能增效,更快更好发展的前提和保障。
发明内容
针对上述大数据应用算法开发冗余和各专业人才协同开发效率低下的问题,本发明的目的是提供一种基于分布式数据挖掘算法的可视化管理系统,简化大数据应用的开发难度,降低甚至屏蔽大数据专业知识的门槛,让业务人员及数据分析师能够方便快速的参与大数据的分析和数据挖掘工作,以满足快速构建业务应用场景需求。
一种基于分布式数据挖掘算法的可视化管理系统,其特征在于:该系统包括数据接入分析模块、数据处理模块、可视化算法库模块和数据输出模块;数据接入分析模块是数据输入的源头,接入不同来源的数据;数据处理模块对接入的数据进行数据的清洗与处理;对处理好的数据,通过可视化算法库模块进行分布式数据挖掘算法的调用,建立业务应用模型;通过数据输出模块,对经过可视化算法库模块的数据结果进行数据输出。
进一步,所述数据接入分析模块,用于接入不同电网业务源头系统数据,包括结构化数据、非结构化数据和实时流数据。数据接入分析模块提供了丰富的数据接入方式,屏蔽了数据接入的差异性,并提供统一的数据接口,方便数据源管理。
所述数据处理模块为了数据分析挖掘的需要,用于对接入的数据进行统一的数据处理与操作。数据处理模块包括数据清洗、数据集成、数据转换和数据规约等过程。数据清洗是指发现并纠正数据中的脏数据、无效值和缺失值,并且检查数据的一致性;数据集成是指把不同来源、格式的数据在逻辑上集中,从而实现数据共享;数据转换是指将数据从一种表现形式转变为另一种表现形式的过程;数据规约是指在尽可能保持数据原来特性的前提下,最大限度地精简数据量,有属性选择和数据采样两种方式。
所述可视化算法库模块,对基于Spark框架的分布式数据挖掘算法(KMeans、Apriori、DecisionTree等)进行封装,形成算法库,并提供可视化操作界面。可视化算法库针对不同的数据挖掘算法,规定输入和输出格式,并提供用户友好的调用方式。用户可以根据不同的业务场景,进行有效的模型训练,降低了算法开发的门槛。
所述数据输出模块用于对计算处理的结果数据进行统一的输出处理。输出的结果和数据接入分析模块对应,也包括结构化数据、非结构化数据和实时流数据的输出。数据输出模块也提供了丰富的数据输出方式,并提供统一的数据输出接口。
本发明为电力系统大数据应用提供数据采集、数据存储、数据处理、数据分析与数据展示,构建了基于分布式数据挖掘算法的可视化管理系统,实现了大数据应用及数据挖掘的可视化开发管理。
本发明的有益效果在于:解决了电网业务大数据平台的使用问题,节省了电力公司大量的人力、物力和财力投入,避免了程序的重复开发;让业务人员和数据分析师能够方便快速地参与大数据应用项目的开发,降低开发门槛,提高工作效率,满足了快速构建大数据业务应用的场景需求。
附图说明
图1为本发明实施中所构建的基于分布式数据挖掘算法的可视化管理系统的结构框图。
具体实施方式
为进一步解释本发明的技术方案,下面结合附图详细说明本发明。
如图1所示,一种基于分布式数据挖掘算法的可视化管理系统,该系统包括数据源接入分析模块、数据处理模块、可视化算法库模块和数据输出模块。首先,数据接入分析模块是该管理系统数据输入的源头,接入不同来源的数据。接入不同业务源头系统的数据之后,通过数据处理模块进行数据的清洗与处理。接下来,对处理好的数据,通过可视化算法库模块进行分布式数据挖掘算法的调用,并建立业务应用模型。最后,通过数据输出模块,对经过可视化算法库模块的数据结果进行数据输出.
数据接入分析模块,用于接入不同电网业务源头系统数据,包括结构化数据、非结构化数据和实时流数据。数据源模块提供了丰富的数据接入方式,屏蔽了数据接入的差异性,并提供统一的数据接口,方便数据源管理。
数据处理模块,为了数据分析挖掘的需要,用于对接入的数据进行统一的数据处理与操作。数据处理模块包括数据清洗、数据集成、数据转换和数据规约等过程。数据清洗是指发现并纠正数据中的脏数据、无效值和缺失值,并且检查数据的一致性;数据集成是指把不同来源、格式的数据在逻辑上集中,从而实现数据共享;数据转换是指将数据从一种表现形式转变为另一种表现形式的过程;数据规约是指在尽可能保持数据原来特性的前提下,最大限度地精简数据量,有属性选择和数据采样两种方式。
可视化算法库模块,依据基于Spark框架的分布式数据挖掘算法(KMeans、Apriori、DecisionTree),封装成可视化算法库。可视化算法库针对不同的数据挖掘算法,规定输入和输出格式,并提供用户友好的调用方式,降低了算法开发的门槛。
目前可视化算法库模块实现了基于Spark框架的KMeans算法、Apriori算法和DecisionTree算法。
(1)KMeans算法的基本思想:以空间中K个点为中心进行聚类,对最靠近中心点的对象进行归类。通过迭代的方法,逐次更新各聚类中心的值,直到中心点不再更新为止。判定对象所属类别的依据为Euclidean Distance:
(2)Apriori算法的基本思想是:第一轮迭代,扫描数据集,生成频繁-1项集;第k轮迭代,通过关联计算,从频繁-(k-1)项集生成候选-k项集;接下来,通过比较最小支持度阈值MinSup,从候选-k项集中得到频繁-k项集。依次迭代,直到不能生成频繁-k项集为止。
(3)DecisionTree算法的基本思想:决策树是一种树结构,每个非叶节点表示一个特征属性,每个分支代表这个特征属性在值阈上的输出,每个叶节点存放一个类别。属性选择采用自顶向下递归分治法,计算每个属性的增益率,选择分裂后信息增益最大的属性进行分裂。设D为用类别对训练元组进行的划分,则D的熵(Entropy)表示为:其中pi表示第i个类别在整个训练元组中出现的概率,可以用属于此类别元素的数量除以训练元组元素总数量作为估计。熵的实际意义表示是D中元组的类标号所需要的平均信息量。假设将训练元组D按属性A进行划分,则A对D划分的期望信息为:而信息增益即为两者的差值:
gain(A)=info(D)-infoA(D)。
数据输出模块,用于对计算处理的结果数据进行统一的输出处理。输出的结果和数据源模块对应,也包括文本格式数据输出(Excel、CSV、Text)、分布式系统数据输出(HDFS、HBase、Hive)和关系型数据库数据输出。数据输出模块也提供了丰富的数据输出方式,并提供统一的数据输出接口。
本发明为电力系统大数据应用提供数据采集、数据存储、数据处理、数据分析与数据展示,构建了基于分布式数据挖掘算法的可视化管理系统,实现了大数据应用及数据挖掘的可视化开发管理。