基于分析服务池和动态虚拟数据集的并发数据分析方法转让专利

申请号 : CN201610928392.7

文献号 : CN106446279B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陆俊钱锋陆鑫

申请人 : 南京南瑞继保电气有限公司

摘要 :

本发明公开了基于分析服务池和动态虚拟数据集的并发数据分析方法:步骤1、构建分析服务池;步骤2、客户端收到用户的分析请求后,向分析服务池申请分析服务连接并获取一个空闲的分析服务连接:其中,当出现多个分析请求时,每个分析请求依次从分析服务池中获取分析服务连接;步骤3、客户端通过分析服务连接向在线分析服务发送分析请求;步骤4、在线分析服务进行分析处理。克服现有在线分析技术中存在的无法处理分散数据集和并发分析困难的问题,支持来自分散数据集的数据源并支持同时对此数据源进行分析。

权利要求 :

1.基于分析服务池和动态虚拟数据集的并发数据分析方法,其特征在于,包括如下步骤:步骤1、构建分析服务池:

101、读取分析服务池的配置信息;

102、设置分析服务池支持的并发数;

103、针对每个分析服务连接创建虚拟数据集的配置信息;

步骤2、客户端收到用户的分析请求后,向分析服务池申请分析服务连接并获取一个空闲的分析服务连接:其中,当出现多个分析请求时,每个分析请求依次从分析服务池中获取分析服务连接;

步骤3、客户端通过分析服务连接向在线分析服务发送分析请求;

步骤4、在线分析服务进行分析处理:

401、解析用户请求获取要进行处理的目标数据范围;

402、创建为本服务配置中指定的动态虚拟数据集;

403、将用户请求转化为分析语句提交并进行在线分析;

404、将分析结果通过标准格式返回给用户;

步骤402中,通过解析用户分析请求中的输入,结合所在系统的数据存储特征,动态创建分析目标的虚拟数据集。

2.根据权利要求1所述的基于分析服务池和动态虚拟数据集的并发数据分析方法,其特征在于,步骤404之后,判断用户请求是否为一次性处理,若是,则将分析服务连接返还给分析服务池。

3.根据权利要求1所述的基于分析服务池和动态虚拟数据集的并发数据分析方法,其特征在于,步骤4中,输入和输出的数据格式均为JSON格式。

说明书 :

基于分析服务池和动态虚拟数据集的并发数据分析方法

技术领域

[0001] 本发明涉及一种基于分析服务池和动态虚拟数据集的并发数据分析方法。

背景技术

[0002] 随着企业信息化水平的高速发展,企业内部进行生产、监控、资源管理及办公自动化等方面的应用系统不断涌现,形成了由多个子系统组成的企业信息化复杂系统。随着时间的推移,复杂系统的存储系统中积累了大量的多维模型数据和业务数据。由于业务数据过于庞大,单张数据表存储的查询处理效率大大降低,故众多系统采用了按时间周期、模型对象类别、对象产生顺序等方式进行数据分表,这样就形成了一个复杂的企业级离散数据集。
[0003] 在线分析技术是一种针对关系数据库或数据仓库数据集的实时数据查询分析手段,其根据分析人员或管理决策人员的要求快速、灵活地进行大量数据的复杂查询和分析处理,其特点是可在短时间内响应复杂的查询要求。在利用在线分析技术进行业务数据分析时,不同用户可以从不同的角度来审视业务,根据不同的分析角度及角度的组合生成不同的报表。
[0004] 目前基于复杂系统进行在线分析存在如下问题:
[0005] 第一、数据分布在多个分表中,在线分析难以支持可灵活定义的查询条件。
[0006] 第二、由于复杂系统数据的复杂性及现有分析技术的特点,在线分析并发性不足,难以支持多个用户同时进行复杂查询。

发明内容

[0007] 针对上述问题,本发明提供一种基于分析服务池和动态虚拟数据集的并发数据分析方法,克服现有在线分析技术中存在的无法处理分散数据集和并发分析困难的问题,支持来自分散数据集的数据源并支持同时对此数据源进行分析。
[0008] 为实现上述技术目的,达到上述技术效果,本发明通过以下技术方案实现:
[0009] 基于分析服务池和动态虚拟数据集的并发数据分析方法,其特征在于,包括如下步骤:
[0010] 步骤1、构建分析服务池:
[0011] 101、读取分析服务池的配置信息;
[0012] 102、设置分析服务池支持的并发数;
[0013] 103、针对每个分析服务连接创建虚拟数据集的配置信息;
[0014] 步骤2、客户端收到用户的分析请求后,向分析服务池申请分析服务连接并获取一个空闲的分析服务连接:其中,当出现多个分析请求时,每个分析请求依次从分析服务池中获取分析服务连接;
[0015] 步骤3、客户端通过分析服务连接向在线分析服务发送分析请求;
[0016] 步骤4、在线分析服务进行分析处理:
[0017] 401、解析用户请求获取要进行处理的目标数据范围;
[0018] 402、创建为本服务配置中指定的动态虚拟数据集;
[0019] 403、将用户请求转化为分析语句提交并进行在线分析;
[0020] 404、将分析结果通过标准格式返回给用户。
[0021] 优选,步骤404之后,判断用户请求是否为一次性处理,若是,则将分析服务连接返还给分析服务池。
[0022] 优选,步骤4中,输入和输出的数据格式均为JSON格式。
[0023] 优选,步骤402中,通过解析用户分析请求中的输入,结合所在系统的数据存储特征,动态创建分析目标的虚拟数据集。
[0024] 本发明的有益效果是:
[0025] 预先根据配置设定的并发数创建多个分析服务连接,当出现多个分析请求时,每个请求依次从分析服务池中获取分析服务连接,并发开展数据分析。每个分析服务连接在分析开始前,首先根据请求的内容创建虚拟数据集,其次在此数据集上通过分析算法获得结果,最后将结果格式化为标准格式后返回给请求客户端。实现了对离散数据集的在线并发分析功能,使得在线分析工具可以支持采用不同数据存储方案的企业进行并发数据分析,达到了同时分析获得多个分析条件结果的效果,节省了依次分析等待的时间,提高了企业的运转效率,为高层决策提供更多的支持。

附图说明

[0026] 图1是本发明基于分析服务池和动态虚拟数据集的并发数据分析方法的流程示意图;
[0027] 图2是本发明创建分析服务池的流程图;
[0028] 图3是本发明在线分析服务的流程图。

具体实施方式

[0029] 下面结合附图和具体的实施例对本发明技术方案作进一步的详细描述,以使本领域的技术人员可以更好的理解本发明并能予以实施,但所举实施例不作为对本发明的限定。
[0030] 基于分析服务池和动态虚拟数据集的并发数据分析方法,整个分析方法的流程图如图1所示,与传统的基于特定数据集进行数据分析的方法对比,本发明方法引入了分析服务池和虚拟数据集,分别解决了并发分析问题和数据分布不连续问题。
[0031] 具体包括如下步骤:
[0032] 步骤1、构建分析服务池,如图2所示:
[0033] 101、读取分析服务池的配置信息(配置文件或可在线获取的配置源),包括:获取数据库驱动、数据库连接地址、登录信息、配置文件目录以及配置文件命名格式等信息。
[0034] 102、设置分析服务池支持的并发数,即根据配置信息进行分析服务池的设定,设定支持的并发数(即分析服务连接的数量)。
[0035] 103、针对每个分析服务连接创建虚拟数据集的配置信息:创建与并发数相同的配置信息(文件或配置源),每个配置信息包含如下信息:与该配置一一对应的虚拟数据集名、需要分析的模型结构以及相关算子等。
[0036] 通过池化技术实现支持并发访问的分析服务池,并发的分析请求依次从分析服务池中获取分析服务连接,通过分析服务连接完成分析,实现了对离散数据集的在线并发分析功能。分析服务池技术根据配置设定的并发数创建多个分析服务连接,当出现多个分析请求时,每个请求依次从分析服务池中获取分析服务连接,并发开展数据分析。
[0037] 比如,可采用Java编辑分析服务池接口,如表1所示:
[0038] 表1 分析服务池接口表
[0039]函数名 功能
instance 创建分析服务池
initParams 初始化服务池参数
getConnection 获取服务链接
getConnectionCount 获取服务数量
returnConnection 归还服务链接
clear 清理服务池
[0040] 步骤2、客户端收到用户的分析请求后,向分析服务池申请分析服务连接并获取一个空闲的分析服务连接:其中,当出现多个分析请求时,每个分析请求依次从分析服务池中获取分析服务连接。
[0041] 步骤3、客户端通过分析服务连接向在线分析服务发送分析请求。
[0042] 步骤4、在线分析服务进行分析处理,如图3所示:
[0043] 401、解析用户请求获取要进行处理的目标数据范围,比如,解析用户请求中的分析目标、条件等信息,从中获取目标数据范围。
[0044] 402、创建为本服务配置中指定的动态虚拟数据集:优选,通过解析用户分析请求中的输入,结合所在系统的数据存储特征,从中提取出创建虚拟数据集的要素(如时间段、表列表等),根据要素动态创建分析目标的虚拟数据集。
[0045] 针对系统数据存储的特征,将目标数据范围解析为创建本分析服务数据集的创建语句,动态创建为本服务配置中指定的虚拟数据集。例如对于以时间区间为单位分表的存储系统,根据输入中的开始和结束时间以及数据源中的建模规则,解析出包含的数据表名称,再通过创建包含这些表的视图方式创建目标虚拟数据集。
[0046] 403、将用户请求转化为分析语句提交并进行在线分析。
[0047] 404、将分析结果通过标准格式返回给用户。
[0048] 分析服务连接在分析开始前,首先根据请求的内容创建虚拟数据集,其次在此数据集上通过分析算法获得结果,最后将结果格式化为标准格式后返回给请求客户端,本发明针对数据分析定义了如下输入、输出数据格式,其中采用了以JSON(JavaScript Object Notation,一种轻量级的数据交换格式)结构的数据组织形式,支持自定义扩展,易于推广使用。
[0049] 输入格式:
[0050] {“Id”:“BeginTime”:“EndTime”:“Alg”}
[0051] 其中,Id(唯一编码)、BeginTime(开始时间)、EndTime(结束时间)为可选在参数,Alg(统计目标名)为必选参数,比如:
[0052] {“123456”:“2015-01-01 00:00:00”:“2015-01-15 00:00:00”:[“group_generating_capacity”,“group_radiance”]}
[0053] 输出格式:
[0054] {“Success”:“Data”}
[0055] 其中,Success表示取数结果,Data表示结果数据,比如:
[0056] {“Success”:true,“Data”:[{“Object”:“新能源电站7”,“MaxLoss”:“900”},{“Object”:“新能源电站8”,“MaxLoss”:“196”},{“Oobject”:“新能源电站0”,“MaxLoss”:“10”}]}
[0057] 步骤404之后,判断用户请求是否为一次性处理,若是,则将分析服务连接返还给分析服务池,即释放连接。
[0058] 预先根据配置设定的并发数创建多个分析服务连接,当出现多个分析请求时,每个请求依次从分析服务池中获取分析服务连接,并发开展数据分析。每个分析服务连接在分析开始前,首先根据请求的内容创建虚拟数据集,其次在此数据集上通过分析算法获得结果,最后将结果格式化为标准格式后返回给请求客户端。实现了对离散数据集的在线并发分析功能,使得在线分析工具可以支持采用不同数据存储方案的企业进行并发数据分析,达到了同时分析获得多个分析条件结果的效果,节省了依次分析等待的时间,提高了企业的运转效率,为高层决策提供更多的支持。
[0059] 以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或者等效流程变换,或者直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。