一种基于云计算的数据挖掘方法、系统及装置的制作方法

文档序号:7898161阅读:138来源:国知局
专利名称:一种基于云计算的数据挖掘方法、系统及装置的制作方法
技术领域
本发明涉及数据挖掘技术领域,尤其涉及一种基于云计算的数据挖掘方法、系统及装置。
背景技术
数据挖掘(data mining)是从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中,提取隐含在其中的事先不知道但又潜在有用的信息的过程。数据挖掘过程通常包括数据预处理(ETL)、数据挖掘算法实现、结果展示、模型固化上线四个主要步骤。现有的数据挖掘过程一般都在单机节点上实现,并且单机节点在进行数据挖掘的过程中采用串行方式实现。在单机节点上进行数据挖掘时,由于数据预处理据挖掘算法实现、结果展示、模型固化上线都在该单机节点上实现,进行数据挖掘的数据量及算法的复杂度都依赖于该单机节点的性能,因此单机节点实现数据挖掘中单节节点的性能直接影响了数据挖掘的深度和广度。另外在单机节点实现数据挖掘的过程由于采用串行方式实现,即在进行数据挖掘的过程中,整个数据挖掘任务按照顺序依次执行,因此在进行数据挖掘的过程中效率较低, 并且由于在进行数据挖掘的过程中每个数据挖掘任务都要按照顺序依次执行,影响该数据挖掘过程能够处理的数据量,从而进一步影响了数据挖掘的效率。随着行业用户规模的迅速增大,数据挖掘所面临的数据量越来越大,而现有的数据挖掘方法受限于单机节点的处理能力以及串行方式的限制,导致现有传统的单机节点串行方式的数据挖掘的处理效率低,不能满足海量数据处理的需求。

发明内容
有鉴于此,本发明实施例提供一种基于云计算的数据挖掘方法、系统及装置,用以解决现有数据挖掘过程中效率低,无法满足海量数据处理需求的问题。本发明实施例提供的一种基于云计算的数据挖掘系统,包括Web服务器,用于将发起的数据挖掘任务拆分为多个子任务,并根据每个子任务间的执行逻辑,将每个子任务发送到并行数据挖掘PDM服务器的相应接口,并将PDM服务器提供的数据返回用户;并行数据挖掘PDM服务器,用于针对接收到的每个子任务,根据保存的并行算法, 确定每个子任务对应的并行作业任务,向云平台集群控制节点发送该并行作业任务,将接收到的云平台集群控制节点返回的挖掘数据进行整合后提供个web服务器;云平台集群控制节点,用于将接收到的每个并行作业任务,分发给每个计算节点进行数据挖掘,并将挖掘的数据提供给PDM服务器。本发明实施例提供的一种基于云计算的数据挖掘方法,包括并行数据挖掘PDM服务器接收Web服务器发送的每个子任务,其中该每个子任务为web服务器将发起的数据挖掘任务拆分获得的;
根据保存的并行算法,确定每个子任务对应的并行作业任务,向云平台集群控制节点发送该并行作业任务,通过云平台集群控制节点将每个并行作业任务分发给每个计算节点进行数据的挖掘,并将挖掘的数据通过web服务器提供给用户。本发明实施例提供的一种基于云计算的数据挖掘装置,包括第一接收模块,用于接收Web服务器发送的每个子任务,其中该每个子任务为web 服务器将发起的数据挖掘任务拆分获得的;任务下发模块,用于据保存的并行算法,确定每个子任务对应的并行作业任务,向云平台集群控制节点发送该并行作业任务,通过平台集群控制节点将每个并行作业任务分发给每个计算节点进行数据的挖掘,并将挖掘的数据通过web服务器提供给用户。本发明实施例提供的一种基于云计算的数据挖掘装置,包括发起拆分模块,用于发起数据挖掘任务,并将该数据挖掘任务拆分为多个子任务;发送模块,用于根据每个子任务间的执行逻辑,将每个子任务发送到并行数据挖掘PDM服务器的相应接口,并将所述PDM服务器返回的挖掘数据提供给用户。本发明实施例提供了一种基于云计算的数据挖掘方法、系统及装置,该系统中当 PDM服务器接收到web服务器拆分后的用户的数据挖掘请求对应的每个子任务后,根据保存的并行算法,确定每个子任务对应的并行作业任务,向云平台集群控制节点发送该并行作业任务,将接收到的云平台集群控制节点返回的挖掘数据进行整合后提供个web服务器。由于在本发明实施例中该数据挖掘的过程通过web方式实现,因此该数据挖掘的方法可以同时为多个用户提供,并且该数据挖掘的过程中基于并行作业任务进行挖掘,因此有效的提高了数据挖掘的效率。


图1为本发明实施例提供的基于云计算的数据挖掘系统的结构示意图;图2为本发明实施例提供的基于云计算的并行数据挖掘的过程;图3为本发明实施例提供的基于云计算的并行数据挖掘的过程;图4为本发明实施例提供的基于云计算的并行数据挖掘的另一详细实施过程;图5为本发明实施例提供的基于云计算的并行数据挖掘的再一详细实施过程;图6A为本发明实施例提供的基于云计算的并行数据挖掘系统的详细架构图;图6B本发明实施例提供的在具体的上述系统中的每个装置中部署的相应功能;图7为本发明实施例提供的一种基于云计算的数据挖掘装置结构示意图;图8为本发明实施例提供的一种基于云计算的数据挖掘装置结构示意图。
具体实施例方式本发明实施例为了有效的提高数据挖掘的效率,扩大数据挖掘方法的使用范围, 提供了一种基于云计算的数据挖掘方法、系统及装置,该方法中通过web方式实现,并在执行数据挖掘任务时采用并行的方式,有效的提高了数据挖掘的效率。 下面结合说明书附图,对本发明实施例进行详细说明。 图1为本发明实施例提供的基于云计算的数据挖掘系统的结构示意图,该系统包括=Web服务器11、并行数据挖掘(Parallel Data Miner, PDM)服务器12以及云平台集群控制节点13,其中,Web服务器11,用于将发起的数据挖掘任务拆分为多个子任务,并根据每个子任务间的执行逻辑,将每个子任务发送到PDM服务器的相应接口,并将PDM服务器提供的数据返回用户;PDM服务器12,用于针对接收到的每个子任务,根据保存的并行算法,确定每个子任务对应的并行作业任务,向云平台集群控制节点发送该并行作业任务,将接收到的云平台集群控制节点返回的挖掘数据进行整合后提供个web服务器;云平台集群控制节点13,用于将接收到的每个并行作业任务,分发给每个计算节点进行数据的挖掘,并将挖掘的数据提供给PDM服务器。具体的在本发明实施例中用户基于其所在的web客户端向web服务器发送数据挖掘请求,该web客户端支持用户通过web浏览器利用http协议向web服务器发起数据挖掘请求。web服务器实现对用户发送的数据挖掘请求的解析、执行、管理、调度功能。PDM服务器提供并行的数据挖掘子任务,并根据每个子任务向云计算平台提交并行作业任务。图2为本发明实施例提供的基于云计算的并行数据挖掘的过程,该过程包括以下步骤S201 =Web服务器发起数据挖掘任务,将、该数据挖掘任务拆分为多个子任务。所述web服务器发起数据挖掘任务包括接收用户发送的数据挖掘请求,根据保存的该用户的数据挖掘请求与数据挖掘任务的对应关系,获取该数据挖掘请求对应的数据挖掘任务,发起该数据挖掘任务;或,根据保存的每个数据挖掘任务对应的触发条件,该触发条件满足时发起该数据挖掘任务。S202 =Web服务器根据保存的该用户的数据挖掘请求与数据挖掘任务的对应关系,获取该数据挖掘请求对应的数据挖掘任务,将获取的该数据挖掘任务拆分为多个子任务。S203:根据每个子任务间的执行逻辑,将每个子任务发送到PDM服务器的相应接口,并将所述PDM服务器返回的挖掘数据提供给用户。S204 =PDM服务器接收Web服务器发送的每个子任务。S205 根据保存的并行算法,确定每个子任务对应的并行作业任务,向云平台集群控制节点发送该并行作业任务,通过云平台集群控制节点将每个并行作业任务分发给每个计算节点进行数据的挖掘,并将挖掘的数据通过web服务器提供给用户。在本发明实施例中web服务器中保存了每个用户其设置的数据挖掘请求对应的数据挖掘任务,具体的每个用户在设置自身的每个数据挖掘请求对应的数据挖掘任务时 web服务器接收用户发送的数据挖掘请求的创建请求,根据自身保存的权限信息,向用户提供其可用的每个子任务的信息,并根据用户确定的每个子任务,以及每个子任务的顺序,生成数据挖掘任务,并对应该用户保存该数据挖掘请求与该数据挖掘任务的对应关系。具体的,当用户设置其每个数据挖掘请求对应的数据挖掘任务时,用户首先需要向web服务器发送数据挖掘请求的创建请求,其中在该创建请求中携带该用户的用户名和密码信息。web服务器根据该创建请求中携带的用户名和密码信息对该用户进行鉴权,当鉴权通过时,根据保存的该用户的权限,将对应该权限信息的每个子任务的信息,作为该用户可用的每个任务的信息提供给用户。在本发明实施例中由于每个子任务保存在PDM服务器,web服务器在向用户提供其可用的每个子任务的信息时,需要与PDM服务器进行交互,获取该权限信息对应的每个子任务是否可用的信息,将该权限信息对应的每个子任务中可用的每个子任务的信息提供给用户。当将每个子任务提供给用户后,用户可以直接在web服务器提供的可用的每个子任务的信息中进行选择,确定其数据挖掘请求对应的每个子任务,在进行子任务的选择时可以采用拖拽的方式,或者用户还可以直接根据web客户端保存的操作流创建服务模块, 注入相应的脚本,web客户端将用户注入的相应脚本发送给web服务器,web服务器根据web 客户端发送的相应的用户注入的脚本,确定该脚本对应的子任务,将该子任务作为用户确定的子任务。另外,web服务器还用于,根据接收的用户发送的针对每个子任务的参数配置信息,将保存的参数配置原数据信息提供给用户,并保存用户针对每个子任务确定的参数配直fe息。具体的用户在针对每个子任务进行参数信息的配置时,用户通过其所在的web客户端向web服务器发送针对每个子任务的参数配置信息,web服务器接收到该参数配置信息后,将将保存的参数原数据信息提供给用户,并保存用户针对每个子任务确定的参数配
直fe息。Web服务器根据用户输出的数据挖掘请求的创建请求,及用户确定的每个子任务, 或者还包括每个子任务对应的参数配置信息后,web服务器根据用户确定的每个子任务的顺序,依据该顺序生成数据挖掘任务,并针对该用户保存该数据挖掘请求与该数据挖掘任务的对应关系。并且当用户创建了自身的每个数据挖掘请求对应的数据挖掘任务后,还可以通过自身所在的web客户端向该web服务器发送对已创建的数据挖掘任务的修改请求,web服务器根据该请求,将用户已创建的数据挖掘任务提供给用户,并根据用户的修改,针对该数据挖掘请求保存该修改后的数据挖掘任务,该修改包括对数据挖掘任务的增加或删除。另外,用户还可以通过自身所在的web客户端,从web服务器下载、上传数据挖掘任务,获共享数据挖掘任务,web服务器根据用户的相应操作,提供相应的服务。图3为本发明实施例提供的基于云计算的并行数据挖掘的过程,该过程包括以下步骤S301 :web服务器接收用户发送的数据挖掘请求的创建请求。S302 根据自身保存的权限信息,向用户提供其可用的每个子任务的信息,并根据用户确定的每个子任务,以及每个子任务的顺序,生成数据挖掘任务。S303 :web服务器对应该用户保存该数据挖掘请求与该数据挖掘任务的对应关系。S304 =Web服务器接收用户发送的数据挖掘请求,根据保存的该用户的数据挖掘请求与数据挖掘任务的对应关系,获取该数据挖掘请求对应的数据挖掘任务,将获取的该数据挖掘任务拆分为多个子任务。
S305 =Web服务器根据保存的该用户的数据挖掘请求与数据挖掘任务的对应关系,获取该数据挖掘请求对应的数据挖掘任务,将获取的该数据挖掘任务拆分为多个子任务。S306:根据每个子任务间的执行逻辑,将每个子任务发送到PDM服务器的相应接□。S307 :PDM服务器接收Web服务器发送的每个子任务。S308:针对每个子任务,根据保存的并行算法,确定每个子任务对应的并行作业任务,向云平台集群控制节点发送该并行作业任务,通过平台集群控制节点将每个并行作业任务分发给每个计算节点进行数据的挖掘,并将挖掘的数据通过web服务器提供给用户。当用户在web服务器中设置了相应的数据挖掘任务后,也可以设置该数据挖掘任务触发条件,当该数据挖掘任务的触发条件满足时,web服务器自动发起该数据挖掘任务。在本发明实施例中PDM服务器可以进行ETL操作和数据挖掘算法的并行计算。具体的该PDM服务器提供各种基于统计分析技术的数据探索分析算法的并行实现,例如,描述性统计量计算、单变量和多变量相关性分析、显著性检验等。其中在PDM服务器保存的ETL算法集的功能包括,提供对数据进行抽取、转换所需的各种操作的并行实现。可以包括清洗类(数据类型检查、外键约束、主键约束、缺值处理、 值域约束、去重、去极值)、转换类(CaseWhen、计数区间化、字段类型转换、数值区间化、归一化、逆归一化、添加ID、属性交换、关联规则数据生成、PCA)、集成类(delete、join、维表 join、sort, where, select)、计算类(计算生成列、Groupby、统计)、抽样类(分层抽样、随机采样、数据集分割)、集合类(集合差、集合交并)、更新类(update、Insertupdate)等对应操作的并行计算能力。在PDM服务器保存了大量的并行挖掘算法,包括提供数据挖掘技术中分类、聚类、关联规则等常用挖掘算法的并行实现。分类算法包括C45决策树、K-近邻、朴素贝叶斯、神经网络、LR逻辑回归、聚类算法包括K-均值、DBSCAN、Clara)和关联规则算法包括 Apriori, FPGrowth, Awfits、时序关联等挖掘算法。并且还提供并行社会交往圈分析算法提供社会交往圈分析所涉及的基本特征计算(结点相关特征、边相关特征、网络基本特征)、重叠和非重叠社区发现算法、社区演化算法的并行实现。并且PDM服务器提供并行SQL 支持,其可以调用底层云平台集群提供的JDBC接口,完成各种类SQL语句的并行执行作业提交。由于在本发明实施例中PDM服务器中保存了大量的并行挖掘算法,其中每个算法对应一个接口,针对PDM服务器接收到的每个子任务,针对每个子任务、依据相应的并行算法保存了对应的并行作业任务。因此当确定了该子任务依据相应的并行算法对应的并行作业任务后,将并行作业任务提交该云平台集群控制节点,由云平台集群控制节点将并行作业任务提交给每个计算节点进行数据挖掘。云平台集群控制节点接收到PDM计算服务器提交的并行作业任务后,按照云平台内分布式数据存储和任务分配机制(如MapReduce并行计算机制),将并行作业任务分发给云平台集群内相应的PC计算节点,进行分布式并行数据挖掘,并将数据挖掘结果提供给云平台集群控制节点。另外,在本发明实施例中该PDM服务器还用于,监听平台集群控制节点收集的各并行作业任务的进度信息,将监听的每个进度信息通过web服务器返回用户。具体的PDM服务器采用MapReduce进行进度监控调用并封装云平台集群中作业执行进度相关的api接口,实现所有并行执行作业的当前状态和进度实时监控。图4为本发明实施例提供的基于云计算的并行数据挖掘的另一详细实施过程,该过程包括以下步骤S401 =Web服务器接收用户发送的数据挖掘请求,根据保存的该用户的数据挖掘请求与数据挖掘任务的对应关系,获取该数据挖掘请求对应的数据挖掘任务,将获取的该数据挖掘任务拆分为多个子任务。S402 =Web服务器根据保存的该用户的数据挖掘请求与数据挖掘任务的对应关系,获取该数据挖掘请求对应的数据挖掘任务,将获取的该数据挖掘任务拆分为多个子任务。S403:根据每个子任务间的执行逻辑,将每个子任务发送到PDM服务器的相应接□。S404 =PDM服务器接收Web服务器发送的每个子任务。S405:针对每个子任务,根据保存的并行算法,确定每个子任务对应的并行作业任务,向云平台集群控制节点发送并行作业任务,通过平台集群控制节点将每个并行作业任务分发给每个计算节点进行数据的挖掘。S406 =PDM服务器监听平台集群控制节点收集的各并行作业任务的进度信息,将监听的每个进度信息通过web服务器返回用户。S407 当监听到数据挖掘处理结束时,获取挖掘数据并将挖掘数据通过web服务器提供给用户。PDM服务器监听到数据挖掘处理结束时,根据自身保存的CWM标准和PMML标准输出结果到Web服务器或自身存储后发送给web服务器返回用户。当web服务器接收到PDM 服务器返回的挖掘数据时,将该数据提供给web客户端,web客户端的数据探索呈现、历史结果查看、结果展示等服务,将结果转换为图形化或表格方式呈现。或者在向用户返回挖掘数据时,也可以采用被动方式,即当用户需要查看挖掘结果时,向web服务器发送查看请求,web服务器将PDM服务器返回的挖掘数据提供给用户。在本发明实施例中当用户需要导出或交换挖掘后的数据时,所述web服务器还用于,接收用户发送的数据交换请求,并将该数据交换请求发送到PDM服务器,并将PDM服务器发送的交换数据提供给用户;PDM服务器还用于,根据接收到的数据交换请求,判断本地是否保存该待交换的数据,当本地保存该待交换的数据时,将该交换后的数据提供给所述web服务器,否则,将该数据交换请求发送到数据交换服务器;所述系统还包括数据交换服务器,用于根据接收的数据交换请求,与平台集群控制节点建立数据传输通道,进行数据交换,并将交换后的数据提供给PDM服务器。图5为本发明实施例提供的基于云计算的并行数据挖掘的再一详细实施过程,该过程包括以下步骤S501 =Web服务器接收用户发送的数据挖掘请求,根据保存的该用户的数据挖掘请求与数据挖掘任务的对应关系,获取该数据挖掘请求对应的数据挖掘任务,将获取的该数据挖掘任务拆分为多个子任务。S502 =Web服务器根据保存的该用户的数据挖掘请求与数据挖掘任务的对应关系,获取该数据挖掘请求对应的数据挖掘任务,将获取的该数据挖掘任务拆分为多个子任务。S503:根据每个子任务间的执行逻辑,将每个子任务发送到PDM服务器的相应接□。S504 =PDM服务器接收Web服务器发送的每个子任务。S505:针对每个子任务,根据保存的并行算法,确定每个子任务对应的并行作业任务,向云平台集群控制节点发送该并行作业任务,通过平台集群控制节点将每个并行作业任务分发给每个计算节点进行数据的挖掘。S506 =PDM服务器监听平台集群控制节点收集的各并行作业任务的进度信息,将监听的每个进度信息通过web服务器返回用户。S507 当监听到数据挖掘处理结束时,获取挖掘数据并将挖掘数据通过web服务器提供给用户。S508 =PDM服务器接收用户通过web服务器发送的数据交换请求,并将该数据交换请求发送到数据交换服务器。S509 数据交换服务器根据该数据交换请求,确定进行数据交换的源端和目的端, 建立源端与目的端的数据传输通道,源端和目的端通过建立的传输通道进行数据的交换, 并且当数据交换服务器确定需要在本地缓存该交换的数据时,将传输通道中传输的交换数据在本地缓存。由于在本发明实施例中该数据挖掘的过程通过web方式实现,因此该数据挖掘的方法可以同时为多个用户提供,并且该数据挖掘的过程中基于并行作业任务进行挖掘,因此有效的提高了数据挖掘的效率。图6A为本发明实施例提供的基于云计算的并行数据挖掘系统的详细架构图,在该系统中包括web客户端、web服务器、PDM服务器、云平台集群以及数据交换服务器。图6B在具体的上述系统中的每个装置中部署的相应功能,该功能模块的描述是以其实现的具体功能进行描述的,只是对本发明实施例进行详细描述的一种具体实施方式
。在该系统中web客户端可以实现在参数配置信息设置时的脚本注入,具体通过操作流创建、SQL与Shell脚本注入服务等功能实现SQL脚本注入或SHELL脚本注入,web服务器可以实现用户权限管理功能,可用组件维护与管理、操作流管理与调度、操作流执行引擎、 业务模板管理、数据探索呈现、结果展示以及历史结果查看功能。接口封装和核心功能层位于PDM服务器中,该接口封装包括JAVA api接口集、命令行接口集、XML/web service接口集可以实现通过相应接口的接入。在核心功能层中包括数据交换功能、并行ETL算法集、并行挖掘算法集、PMML模型输出、mapreduce进度监控,并行SQL支持、元数据输出、并行数据探索算法集、并行社会交往分析算法集等功能,云平台集群包括分布式文件系统HDFS以及 mapreduce的才目1 倉旨。基于上述系统对本发明实施例进行详细说明。用户创建每个数据挖掘任务,以及对数据挖掘任务进行修改的过程。
用户通过Web客户端向web服务器发送数据挖掘请求的创建请求,Web服务器上的用户权限管理模块根据用户发送的创建请求中携带的用户名和密码,完成用户鉴权。当鉴权通过后,根据保存的该用户的授权信息,获取保存的该用户的数据,即该用户被授权的挖掘服务和工作目录,根据保存的该权限信息,获取该权限对应的每个可用组件(子程序) 的信息。然后由同层的可用组件维护与管理模块,从PDM服务器上的接口层获取组件可用与否的信息,同时由PDM服务器上核心功能层的数据查看与管理模块向云计算平台集群总控节点获取分布式存储环境中用户工作目录下文件列表及各数据对应的元信息,将这些信息由Web服务器整合后,返回给Web客户端。用户根据提供的信息,确定相应的组件时,用户通过Web客户端的操作流创建、 SQL与Shell脚本注入服务模块进行脚本注入,或者根据web服务器提供给的组件进行拖拽,确定相应的组件。并且用户针对组件进行参数信息的配置时,会向Web服务器提出参数配置信息,由Web服务器上Web服务层的用户数据管理模块返回参数配置需要的元信息,供用户使用,并对用户针对组件配置后的参数信息进行合法性检验。用户在对已创建的数据挖掘任务进行修改时,用户通过Web客户端端向Web服务器发起挖掘应用的增、删、上传、下载、共享、分类管理、按计划调度等请求时,由Web服务器上Web服务层的操作流管理与调度模块提供服务对数据挖掘任务进行格式化描述、保存、 分目录存储及定义调度触发条件。当创建了每个数据挖掘任务后,进行数据挖掘的过程包括用户所在的web客户端利用http协议向web服务器发起数据挖掘请求,Web服务器接收到该数据挖掘请求后,根据保存的该用户的数据挖掘请求与数据挖掘任务的对应关系,获取相应的数据挖掘任务,或者也可以是该数据挖掘任务满足相应的触发条件时,该 web服务器主动发起该数据挖掘任务。由于该数据挖掘任务由基本的组件构成,web服务层的操作流执行引擎模块解析该数据挖掘任务为基本组件,同时获取该用户对应每个组件配置的参数信息,为随后向PDM 服务器提交并行挖掘操作做准备。此外,第三方SDK执行环境,解析执行用户利用SDK开发的挖掘应用程序时,也会向Web服务器的ffeb service接口服务支持模块提交执行请求。Web服务器上Web服务层的工作流执行引擎模块,按照分解后各组件间的执行控制逻辑,通过PDM服务器的接口层中相应执行接口,为每个组件向PDM服务器上核心功能层相应的并行挖掘操作算法提交操作执行请求。PDM服务器上核心功能层中并行ETL算法集、 并行挖掘算法集、并行社会交往圈分析算法集、并行数据探索算法集、并行SQL支持等功能模块中每种并行算法程序作为并行挖掘操作作业提交的客户端,向云平台集群的总控节点提交并行程序作业。云平台集群总控节点,按照云平台内分布式数据存储和任务分配机制(如 MapReduce并行计算机制),将并行程序分发给集群内相应的PC计算节点(计算节点),进行分布式并行计算,并将结果写入云计算集群的分布式存储环境中。这一过程中,PDM计算服务器上核心功能层的MapReduce进度监控模块,不间断监听云平台集群总控节点的进度查询接口,获取各并行作业的实时进度。监听进度同时,当某个ETL操作算法或数据挖掘算法执行结束后,PDM服务器上核心功能层的技术元数据输出和PMML模型输出模块,分别按照CWM标准和PMML标准输出结果到Web服务器或PDM服务器存储。PDM服务器将获得的进度信息通过接口封装层同时传送给Web服务器,并由Web浏览器获得这些进度信息并展示。当挖掘应用执行结束,云平台集群输出结果到分布式文件系统HDFS,并将其他信息经PDM服务器返回给Web服务器后,用户通过web客户端,发起查看结果的请求,则Web 客户端上Web服务层中数据探索呈现、历史结果查看、结果展示等服务响应用户请求,将结果转换为图形化或表格方式,在Web客户端呈现。用户请求数据的过程用户在Web浏览器端创建数据加载导出或数据交换等数据交换请求,Web服务器接收web客户端发送的数据交换请求,由Web服务层的工作流执行引擎向PDM服务器上接口封装层提交数据交换请求,例如该数据交换请求为数据交换请求,然后PDM服务器上核心功能层的数据加载和导出模块调用数据交换模块,或直接调用数据交换模块向数据交换服务器发起数据交换任务。其中该数据交换请求包括数据的导入请求和数据的导出请求。数据交互服务器上数据交换模块与现网系统接口机或数据仓库,以及云平台集群总控节点,建立连接,获取该交换数据所在的文件系统,然后依据用户的数据交换请求,确定数据交换的源端和目标端,以及数据是否需要在交互服务器上缓存的信息。若数据交换服务器确定,数据无需在数据交换服务器缓存,则通过云平台集群总控节点,使云计算集群中存储了分布式数据的PC节点与接口机或数据仓库直接建立数据传输通道,进行数据交换;若数据交换服务器确定数据需要在交换服务器缓存,则源端将数据传输到数据交换服务器,然后由数据交换服务器传给目标端,其中云平台集群数据导入和导出都需要由总控节点与数据交换服务器进行数据传输,各PC节点不会直接与现网系统接口机或数据仓库建立传输连接。图7为本发明实施例提供的一种基于云计算的数据挖掘装置结构示意图,所述装置包括第一接收模块71,用于接收Web服务器发送的每个子任务,其中该每个子任务为 web服务器将发起的数据挖掘任务拆分获得的;任务下发模块72,用于据保存的并行算法,确定每个子任务对应的并行作业任务, 向云平台集群控制节点发送该并行作业任务,通过平台集群控制节点将每个并行作业任务分发给每个计算节点进行数据的挖掘,并将挖掘的数据通过web服务器提供给用户。所述装置还包括监听模块73,用于监听云平台集群控制节点收集的各并行作业任务的进度信息, 将监听的每个进度信息通过web服务器返回用户。所述装置中,所述任务下发模块72还用于,接收用户通过web服务器发送的数据交换请求,并将该数据交换请求发送到数据交换服务器,通过数据交换服务器确定数据交换的源端及目的端,建立源端与目的端的传输通道,使源端与目的端进行数据的交换。图8为本发明实施例提供的一种基于云计算的数据挖掘装置结构示意图,所述装置包括发起拆分模块81,用于发起数据挖掘任务,并将该数据挖掘任务拆分为多个子任务;
发送模块82,用于根据每个子任务间的执行逻辑,将每个子任务发送到PDM服务器的相应接口,并将所述PDM服务器返回的挖掘数据提供给用户。发起拆分模块81具体用于,接收用户发送的数据挖掘请求,根据保存的该用户的数据挖掘请求与数据挖掘任务的对应关系,获取该数据挖掘请求对应的数据挖掘任务,将获取的该数据挖掘任务拆分为多个子任务,或,根据保存的每个数据挖掘任务对应的触发条件,该触发条件满足时发起该数据挖掘任务,并将该数据挖掘任务拆分为多个子任务。所述装置还包括接收模块83,用于接收用户发送的数据挖掘请求的创建请求;生成保存模块84,用于根据自身保存的该用户的权限信息,向用户提供其可用的每个子任务的信息,并根据用户确定的每个子任务,以及每个子任务的顺序,生成数据挖掘任务,对应该用户保存该数据挖掘请求与该数据挖掘任务的对应关系。所述生成保存模块84还用于,接收的用户发送的针对每个子任务的参数配置信息,根据该参数配置信息,将保存的参数配置原数据信息提供给用户,并保存用户针对每个子任务确定的参数配置信息。本发明实施例提供了一种基于云计算的数据挖掘方法、系统及装置,该系统中当 PDM服务器接收到web服务器拆分后的用户的数据挖掘请求对应的每个子任务后,根据保存的并行算法,确定每个子任务对应的并行作业任务,向云平台集群控制节点发送该并行作业任务,将接收到的云平台集群控制节点返回的挖掘数据进行整合后提供个web服务器。由于在本发明实施例中该数据挖掘的过程通过web方式实现,因此该数据挖掘的方法可以同时为多个用户提供,并且该数据挖掘的过程中基于并行作业任务进行挖掘,因此有效的提高了数据挖掘的效率。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
权利要求
1.一种基于云计算的数据挖掘系统,其特征在于,包括Web服务器,用于将发起的数据挖掘任务拆分为多个子任务,并根据每个子任务间的执行逻辑,将每个子任务发送到并行数据挖掘PDM服务器的相应接口,并将PDM服务器提供的数据返回用户;并行数据挖掘PDM服务器,用于针对接收到的每个子任务,根据保存的并行算法,确定每个子任务对应的并行作业任务,向云平台集群控制节点发送该并行作业任务,将接收到的云平台集群控制节点返回的挖掘数据进行整合后提供个web服务器;云平台集群控制节点,用于将接收到的每个并行作业任务,分发给每个计算节点进行数据挖掘,并将挖掘的数据提供给PDM服务器。
2.如权利要求1所述的系统,其特征在于,所述web服务器具体用于,接收用户发送的数据挖掘请求,根据保存的该用户的数据挖掘请求与数据挖掘任务的对应关系,获取该数据挖掘请求对应的数据挖掘任务,将获取的该数据挖掘任务拆分为多个子任务,或,根据保存的每个数据挖掘任务对应的触发条件,该触发条件满足时发起该数据挖掘任务,并将该数据挖掘任务拆分为多个子任务。
3.如权利要求2所述的系统,其特征在于,所述web服务器还用于,接收用户发送的数据挖掘请求的创建请求,根据自身保存的该用户的权限信息,向用户提供其可用的每个子任务的信息,并根据用户确定的每个子任务,以及每个子任务的顺序,生成数据挖掘任务, 并对应该用户保存该数据挖掘请求与该数据挖掘任务的对应关系。
4.如权利要求3所述的系统,其特征在于,所述web服务器还用于,根据接收的用户发送的针对每个子任务的参数配置信息,将保存的参数配置原数据信息提供给用户,并保存用户针对每个子任务确定的参数配置信息。
5.如权利要求1或4所述的系统,其特征在于,所述PDM服务器还用于,监听云平台集群控制节点收集的各并行作业任务的进度信息,将监听的每个进度信息通过web服务器返回用户。
6.如权利要求1所述的系统,其特征在于,所述系统中,所述web服务器还用于,接收用户发送的数据交换请求,并将该数据交换请求发送到 PDM服务器;PDM服务器还用于,将接收到的数据交换请求发送给数据交换服务器;所述系统还包括数据交换服务器,用于根据接收的数据交换请求,确定数据交换的源端及目的端,建立源端与目的端的传输通道,使源端与目的端进行数据的交换。
7.如权利要求6所述的系统,其特征在于,所述数据交换服务器还用于,根据该数据交换请求,将源端与目的端进行交换的数据在本地保存。
8.一种基于云计算的数据挖掘方法,其特征在于,所述方法包括并行数据挖掘PDM服务器接收Web服务器发送的每个子任务,其中该每个子任务为web 服务器将发起的数据挖掘任务拆分获得的;根据保存的并行算法,确定每个子任务对应的并行作业任务,向云平台集群控制节点发送该并行作业任务,通过云平台集群控制节点将每个并行作业任务分发给每个计算节点进行数据的挖掘,并将挖掘的数据通过web服务器提供给用户。
9.如权利要求8所述的方法,其特征在于,所述web服务器发起数据挖掘任务包括 接收用户发送的数据挖掘请求,根据保存的该用户的数据挖掘请求与数据挖掘任务的对应关系,获取该数据挖掘请求对应的数据挖掘任务,发起该数据挖掘任务;或,根据保存的每个数据挖掘任务对应的触发条件,该触发条件满足时发起该数据挖掘任务。
10.如权利要求9所述的方法,其特征在于,用户发送数据挖掘请求之前,所述方法还包括web服务器接收用户发送的数据挖掘请求的创建请求;根据自身保存的权限信息,向用户提供其可用的每个子任务的信息,并根据用户确定的每个子任务,以及每个子任务的顺序,生成数据挖掘任务;对应该用户保存该数据挖掘请求与该数据挖掘任务的对应关系。
11.如权利要求10所述的方法,其特征在于,用户确定每个子任务包括选择提供的每个子任务作为确定的子任务,或采用脚本注入的方式,确定每个子任务。
12.如权利要求10所述的方法,其特征在于,所述向用户提供其可用的每个子任务的信息时,还包括接收用户发送的针对每个子任务的参数配置信息;根据该参数配置信息,将保存的参数原数据信息提供给用户,并保存用户针对每个子任务确定的参数配置信息。
13.如权利要求10或12所述的方法,其特征在于,所述根据保存的并行算法向云平台集群控制节点发送并行作业任务之后,所述方法还包括监听云平台集群控制节点收集的各并行作业任务的进度信息,将监听的每个进度信息通过web服务器返回用户。
14.如权利要求10所述的方法,其特征在于,所述方法还包括接收用户通过web服务器发送的数据交换请求,并将该数据交换请求发送到数据交换服务器,通过数据交换服务器确定数据交换的源端及目的端,建立源端与目的端的传输通道,使源端与目的端进行数据的交换。
15.一种基于云计算的数据挖掘装置,其特征在于,所述装置包括第一接收模块,用于接收Web服务器发送的每个子任务,其中该每个子任务为web服务器将发起的数据挖掘任务拆分获得的;任务下发模块,用于据保存的并行算法,确定每个子任务对应的并行作业任务,向云平台集群控制节点发送该并行作业任务,通过平台集群控制节点将每个并行作业任务分发给每个计算节点进行数据的挖掘,并将挖掘的数据通过web服务器提供给用户。
16.如权利要求15所述的装置,其特征在于,所述装置还包括监听模块,用于监听云平台集群控制节点收集的各并行作业任务的进度信息,将监听的每个进度信息通过web服务器返回用户。
17.如权利要求15或16所述的装置,其特征在于,所述装置中,所述任务下发模块还用于,接收用户通过web服务器发送的数据交换请求,并将该数据交换请求发送到数据交换服务器,通过数据交换服务器确定数据交换的源端及目的端, 建立源端与目的端的传输通道,使源端与目的端进行数据的交换。
18.一种基于云计算的数据挖掘装置,其特征在于,所述装置包括发起拆分模块,用于发起数据挖掘任务,并将该数据挖掘任务拆分为多个子任务;发送模块,用于根据每个子任务间的执行逻辑,将每个子任务发送到并行数据挖掘PDM 服务器的相应接口,并将所述PDM服务器返回的挖掘数据提供给用户。
19.如权利要求18所述的装置,其特征在于,发起拆分模块具体用于,接收用户发送的数据挖掘请求,根据保存的该用户的数据挖掘请求与数据挖掘任务的对应关系,获取该数据挖掘请求对应的数据挖掘任务,将获取的该数据挖掘任务拆分为多个子任务,或,根据保存的每个数据挖掘任务对应的触发条件,该触发条件满足时发起该数据挖掘任务,并将该数据挖掘任务拆分为多个子任务。
20.如权利要求19所述的装置,其特征在于,所述装置还包括接收模块,用于接收用户发送的数据挖掘请求的创建请求;生成保存模块,用于根据自身保存的该用户的权限信息,向用户提供其可用的每个子任务的信息,并根据用户确定的每个子任务,以及每个子任务的顺序,生成数据挖掘任务, 对应该用户保存该数据挖掘请求与该数据挖掘任务的对应关系。
21.如权利要求20所述的装置,其特征在于,所述生成保存模块还用于,接收的用户发送的针对每个子任务的参数配置信息,根据该参数配置信息,将保存的参数配置原数据信息提供给用户,并保存用户针对每个子任务确定的参数配置信息。
全文摘要
本发明公开了一种基于云计算的数据挖掘方法、系统及装置,用以解决现有数据挖掘过程中效率低,无法满足海量数据处理需求的问题。该系统当PDM服务器接收到web服务器拆分后的用户的数据挖掘请求对应的每个子任务后,根据保存的并行算法,确定每个子任务对应的并行作业任务,向云平台集群控制节点发送该并行作业任务,将接收到的云平台集群控制节点返回的挖掘数据进行整合后提供个web服务器。由于在本发明实施例中该数据挖掘的过程通过web方式实现,因此该数据挖掘的方法可以同时为多个用户提供,并且该数据挖掘的过程中基于并行作业任务进行挖掘,因此有效的提高了数据挖掘的效率。
文档编号H04L29/08GK102567396SQ20101061607
公开日2012年7月11日 申请日期2010年12月30日 优先权日2010年12月30日
发明者何鸿凌, 孙少陵, 徐萌, 段云峰, 江志雄, 罗治国, 邓超, 陶涛, 高丹 申请人:中国移动通信集团公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1