CN105824974B - 数据分析处理的方法和系统 - Google Patents

数据分析处理的方法和系统 Download PDF

Info

Publication number
CN105824974B
CN105824974B CN201610243600.XA CN201610243600A CN105824974B CN 105824974 B CN105824974 B CN 105824974B CN 201610243600 A CN201610243600 A CN 201610243600A CN 105824974 B CN105824974 B CN 105824974B
Authority
CN
China
Prior art keywords
data
analysis services
data analysis
newly built
built construction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610243600.XA
Other languages
English (en)
Other versions
CN105824974A (zh
Inventor
朱敏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN201610243600.XA priority Critical patent/CN105824974B/zh
Publication of CN105824974A publication Critical patent/CN105824974A/zh
Priority to KR1020187015128A priority patent/KR102133906B1/ko
Priority to PCT/CN2017/076293 priority patent/WO2017181786A1/zh
Priority to SG11201708941TA priority patent/SG11201708941TA/en
Priority to AU2017254506A priority patent/AU2017254506B2/en
Priority to US15/578,690 priority patent/US20180150530A1/en
Priority to EP17785272.0A priority patent/EP3279816A4/en
Priority to JP2017561743A priority patent/JP6397587B2/ja
Application granted granted Critical
Publication of CN105824974B publication Critical patent/CN105824974B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/254Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/283Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种数据分析处理的方法和系统。上述方法包括以下步骤:进入预先建立的数据分析处理新工程;在所述数据分析处理新工程中访问功能节点;读取目标文件并导入数据;根据需求信息生成数据计算处理脚本;在所述功能节点中调用所述数据计算处理脚本,对所述数据进行分析处理。上述数据分析处理的方法和系统,能够执行数据计算处理脚本,对复杂的数据进行分析处理,且所有的数据处理过程均在功能节点中完成,数据不需要在多个节点之间流转,数据处理过程简单,提高了数据处理效率。

Description

数据分析处理的方法和系统
技术领域
本发明涉及数据处理技术领域,特别是涉及一种数据分析处理的方法和系统。
背景技术
ETL,是英文Extract-Transform-Load的缩写,用来描述将数据从来源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程,常见的ETL工具可包括Datastage、kettle、OWB(Oracle Warehouse Builder)等。传统的ETL工具,不具有执行脚本的功能,不能执行现有的数据分析函数和第三方扩展库,无法对复杂的需要科学计算的数据进行分析处理。此外,传统的ETL工具,例如kettle,只能处理流式数据,在数据处理过程中,需要通过一个节点加载数据,然后通过下一个节点对数据进行转换、清洗,到最后流入到结束节点,需要经过一系列的节点,数据处理过程复杂繁琐,处理效率低。
发明内容
基于此,有必要提供一种数据分析处理的方法,能够对复杂的数据进行分析处理,且数据处理过程简单,提高数据处理效率。
此外,还有必要提供一种数据分析处理的系统,能够对复杂的数据进行分析处理,且数据处理过程简单,提高数据处理效率。
一种数据分析处理的方法,包括以下步骤:
进入预先建立的数据分析处理新工程;
在所述数据分析处理新工程中访问功能节点;
读取目标文件并导入数据;
根据需求信息生成数据计算处理脚本;
在所述功能节点中调用所述数据计算处理脚本,对所述数据进行分析处理。
在其中一个实施例中,在所述进入预先建立的数据分析处理新工程的步骤之前,还包括:
建立数据分析处理新工程;
所述建立数据分析处理新工程的步骤,包括:
获取数据分析源工程代码;
创建数据分析处理新工程,并在所述数据分析处理新工程中导入所述数据分析源工程代码;
在所述数据分析处理新工程中创建功能节点;
调用数据计算工具数据包,并根据预设的节点开发模板将所述数据计算工具数据包中的数据融入所述数据分析处理新工程;
存储所述数据分析处理新工程。
在其中一个实施例中,在所述存储所述数据分析处理新工程的步骤之前,还包括:
获取所述数据计算工具数据包中的科学计算扩展库;
在所述功能节点中建立所述科学计算扩展库与所述数据分析处理新工程的关联关系;
修改所述数据分析处理新工程的基础配置,并将所述功能节点打包。
在其中一个实施例中,在所述功能节点中调用所述数据计算处理脚本,对所述数据进行分析处理的步骤之后,还包括:
接收生成数据图表的操作请求;
根据所述操作请求调用所述科学计算扩展库中的图形处理扩展库的相关函数对处理后的数据进行分析,并生成对应的数据图表文件。
在其中一个实施例中,所述方法还包括:
获取距离最近的Hadoop集群,并将处理后的数据存储在所述距离最近的Hadoop集群中。
一种数据分析处理的系统,包括:
进入模块,用于进入预先建立的数据分析处理新工程;
访问模块,用于在所述数据分析处理新工程中访问功能节点;
读取模块,用于读取目标文件并导入数据;
生成脚本模块,用于根据需求信息生成数据计算处理脚本;
调用模块,用于在所述功能节点中调用所述数据计算处理脚本,对所述数据进行分析处理。
在其中一个实施例中,所述系统还包括:
建立模块,用于建立数据分析处理新工程;
所述建立模块包括:
获取单元,用于获取数据分析源工程代码;
导入单元,用于创建数据分析处理新工程,并在所述数据分析处理新工程中导入所述数据分析源工程代码;
创建单元,用于在所述数据分析处理新工程中创建功能节点;
调用单元,用于调用数据计算工具数据包,并根据预设的节点开发模板将所述数据计算工具数据包中的数据融入所述数据分析处理新工程;
存储单元,用于存储所述数据分析处理新工程。
在其中一个实施例中,所述获取单元还用于获取所述数据计算工具数据包中的科学计算扩展库;
所述建立模块还包括:
关联单元,用于在所述功能节点中建立所述科学计算扩展库与所述数据分析处理新工程的关联关系;
修改单元,用于修改所述数据分析处理新工程的基础配置,并将所述功能节点打包。
在其中一个实施例中,所述系统还包括:
接收模块,用于接收生成数据图表的操作请求;
生成图表模块,用于根据所述操作请求调用所述科学计算扩展库中的图形处理扩展库的相关函数对处理后的数据进行分析,并生成对应的数据图表文件。
在其中一个实施例中,所述系统还包括:
存储模块,用于获取距离最近的Hadoop集群,并将处理后的数据存储在所述距离最近的Hadoop集群中。
上述数据分析处理的方法和系统,在数据分析处理新工程中访问功能节点,读取目标文件导入数据后,可调用根据需求信息生成的数据计算处理脚本对数据进行处理,能够执行数据计算处理脚本,对复杂的数据进行分析处理,且所有的数据处理过程均在功能节点中完成,数据不需要在多个节点之间流转,数据处理过程简单,提高了数据处理效率。
附图说明
图1为一个实施例中数据分析处理的方法的流程示意图;
图2为一个实施例中建立数据分析处理新工程的流程示意图;
图3为一个实施例中生成数据图表的流程示意图;
图4为一个实施例中数据分析处理的系统的结构示意图;
图5为另一个实施例中数据分析处理的系统的结构示意图;
图6为一个实施例中建立模块的内部结构示意图;
图7为另一个实施例中数据分析处理的系统的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
如图1所示,一种数据分析处理的方法,包括以下步骤:
步骤S110,进入预先建立的数据分析处理新工程。
具体的,数据分析处理新工程指的是在ETL(Extract-Transform-Load)工具中融入科学计算功能所建立的新工程。ETL工具负责将分布的、异构数据源中的数据如关系数据、平面数据文件等抽取到临时中间层后进行清洗、转换、集成,最后加载到数据仓库或数据集市中,成为联机分析处理、数据挖掘的基础。常见的ETL工具可包括Datastage、kettle(水壶)、OWB(Oracle Warehouse Builder)等,其中,Datastage是一种数据集成软件平台,具有满足最苛刻的数据集成需求所需的功能性、灵活性和可伸缩性;kettle是由纯java编写的一款开源的ETL工具,可以在Windows、Linux、Unix上运行,主要用于数据的抽取,具有高效稳定的特点;OWB是Oracle的一个综合工具,它提供对ETL、完全集成的关系和维度建模、数据质量、数据审计,以及数据和元数据的整个生命周期的管理。在本实施例中,可在ETL工具kettle中融入python的科学计算功能,python是一种面向对象、解释型计算机程序设计语言,它具有丰富的扩展库,可以对数据进行科学计算,帮助完成各种高级的数据分析任务。科学计算指的是为解决科学和工程中的数学问题利用计算机进行的数值计算,主要包括建立数学模型、建立求解的计算方法和计算机实现三个阶段,常用的科学计算语言、软件包括FORTRANALGOL、MATLAB等,可以理解地,也可以使用其它具有科学计算功能的语言与ETL工具结合,不限于此。
步骤S120,在数据分析处理新工程中访问功能节点。
具体的,在kettle中融入python的科学计算功能,并开发生成功能节点,该功能节点可提供多种科学计算功能,例如执行python代码、调用python的科学计算扩展库进行数据分析运算等,python的科学计算扩展库可包括NumPy、ScriPy和matplotlib等,分别提供快速数组处理、数值运算以及绘图功能。在数据分析处理新工程中访问功能节点,可使用功能节点中的多种科学计算功能。
步骤S130,读取目标文件并导入数据。
具体的,目标文件可存储在本地或是分布式存储系统的服务器集群上。访问功能节点后,可从本地或分布式存储系统的服务器集群中选择所需的目标文件,读取该目标文件并导入需要处理的数据。
步骤S140,根据需求信息生成数据计算处理脚本。
具体的,需求信息指的是对数据所需作出的分析处理需求,例如需要调用NumPy扩展库中的矢量处理函数对数据中的数组进行处理,或是需要对导入的数据进行批量处理等。可根据不同的需求信息生成对应的python数据计算处理脚本,并存储生成的数据计算处理脚本,使下次进行数据处理时可直接调用该数据计算处理脚本,无需重新生成。
步骤S150,在功能节点中调用数据计算处理脚本,对数据进行分析处理。
具体的,在功能节点中可直接执行根据需求信息生成的python数据计算处理脚本,并根据python数据计算处理脚本对数据进行分析处理,例如数据抽取、数据清洗、数据转换、数值运算等操作,其中,数据清洗指的是对数据进行重新审查和校验的过程,目的在于删除重复信息、纠正存在的错误,并提供数据一致性,数据转换指的是将数据从一种表示形式变为另一种表现形式的过程。也可通过python数据计算处理脚本调用科学计算扩展库中的函数,对数据进行科学计算。在其它的实施例中,在功能节点中可直接读取具有目标后缀的脚本文件,例如执行后缀为.py的脚本文件。
上述数据分析处理的方法,在数据分析处理新工程中访问功能节点,读取目标文件导入数据后,可调用根据需求信息生成的数据计算处理脚本对数据进行处理,能够执行数据计算处理脚本,对复杂的数据进行分析处理,且所有的数据处理过程均在功能节点中完成,数据不需要在多个节点之间流转,数据处理过程简单,提高了数据处理效率。
在另一个实施例中,在步骤S110进入预先建立的数据分析处理新工程之前,还包括:建立数据分析处理新工程。
如图2所示,在一个实施例中,建立数据分析处理新工程的步骤,包括:
步骤S202,获取数据分析源工程代码。
具体的,数据分析源工程代码指的是ETL工具的工程源码,例如kettle的工程源码等。获取数据分析源工程代码后,可对数据分析源工程代码进行解压,得到对应的工程文件。
步骤S204,创建数据分析处理新工程,并在数据分析处理新工程中导入数据分析源工程代码。
具体的,可在Eclipse等开发环境中以新工程的形式导入数据分析源工程代码,即在Eclipse等开发环境中创建新工程作为数据分析处理新工程,并将解压得到的ETL工具,例如kettle的工程源码导入数据分析处理新工程。
步骤S206,在数据分析处理新工程中创建功能节点。
具体的,可在数据分析处理新工程中创建功能节点,并根据kettle工具提供的多个接口开发该功能节点,例如利用TemplateStepDialog对话框类实现功能节点的功能界面等。在数据分析处理新工程中创建功能节点相当于在kettle工具原有的流程处理节点中重新定制的一个流程处理节点,功能节点也可看作kettle工具新开发的一个插件,该重新定制开发的功能节点主要用于处理需要进行科学计算或是复杂分析的数据。
步骤S208,调用数据计算工具数据包,并根据预设的节点开发模板将数据计算工具数据包中的数据融入数据分析处理新工程。
具体的,数据计算工具数据包可包括python代码及python自带的丰富的扩展库数据包,例如NumPy、ScriPy和matplotlib等科学计算扩展库的数据包。可在kettle工具的源码的插件式节点开发的基础上,根据kettle中原有的节点开发模板将数据计算工作数据包融入到数据分析处理新工程中,利用kettle工具中的四大类实现功能节点编辑、执行、保存python数据计算处理脚本的功能,其中,四大类分别为TemplateStep步骤类、TemplateStepData数据类、TemplateStepMeta元数据类及TemplateStepDialog对话框类。不同的类提供不同的接口,可调用各个接口融入数据计算工具数据包中的数据使功能节点具有编辑、执行、保存python数据计算处理脚本等功能。
步骤S210,获取数据计算工具数据包中的科学计算扩展库。
具体的,数据计算工具数据包中可包括NumPy、ScriPy和matplotlib等科学计算扩展库的数据,NumPy可用来存储和处理大型矩阵,ScriPy可用于抓取web站点并从页面中提取结构化的数据,matplotlib可用于提供图表生成等。python的科学计算功能相比起其它的科学计算软件或语言来说,具有更加丰富的扩展库,且扩展库均是开源,python可提供各种调用接口用于分析处理数据,语言更为简单易读,容易维护,可轻松完成各种数据处理的高级任务。
步骤S212,在功能节点中建立科学计算扩展库与数据分析处理新工程的关联关系。
具体的,在功能节点中建立NumPy、ScriPy和matplotlib等科学计算扩展库与数据分析处理新工程的关联关系,在功能节点中通过执行python数据计算处理脚本,调用python提供的对应的接口,即可使用科学计算扩展库中的科学计算功能,分析处理数据。
步骤S214,修改数据分析处理新工程的基础配置,并将功能节点打包。
具体的,可在plugin.xml等配置文件中修改数据分析处理新工程的基础配置,例如添加功能节点对应的名称及描述等,但不限于此。修改完基础配置后,可将功能节点打包,并存储在kettle的插件文件夹中。
步骤S216,存储数据分析处理新工程。
具体的,开发完成数据分析处理新工程的功能节点后,可在本地或分布式存储系统的服务器集群中存储数据分析处理新工程。在本地或分布式存储系统的服务器集群中可使用数据分析处理新工程并发处理多项数据,提高数据处理效率。
上述数据分析处理的方法,通过在数据分析处理新工程中创建并开发功能节点,使功能节点提供编辑、执行、保存数据计算处理脚本等功能,并能在功能节点中调用科学计算扩展库分析处理复杂的数据,在ETL数据分析工具中融入科学计算功能,使ETL数据分析工具可以用更简单的方式,进行更加复杂的数据处理,并提高数据处理效率。
如图3所示,在另一个实施例中,在步骤S150在功能节点中调用数据计算处理脚本,对数据进行分析处理之后,还包括:
步骤S302,接收生成数据图表的操作请求。
具体的,在数据分析处理新工程的功能节点中,可设置有生成数据图表的按钮,当用户点击该按钮,可接收到生成数据图表的操作请求。
步骤S304,根据操作请求调用科学计算扩展库中的图形处理扩展库中的相关函数对处理后的数据进行分析,并生成对应的数据图表文件。
具体的,可在python数据计算处理脚本中调用相应的接口,使用科学计算扩展库中的matplotlib等图形处理扩展库中的相关函数,对处理后的数据进行分析,并生成对应的图形、表格等,以可视化的形式进行展示,使用户能更直接地观看数据的分析结果。生成的数据图表文件可保存在本地或分布式存储系统的服务器集群中,存储在分布式存储系统的服务器集群中可减轻服务器的压力。
上述数据分析处理的方法,可调用科学计算扩展库中的图形处理扩展库中的相关函数对处理后的数据进行分析,使处理后的数据以图形、表格等形式展示,更直观地反映数据分析处理结果。
在一个实施例中,上述数据分析处理的方法,还包括:获取距离最近的Hadoop集群,并将处理后的数据存储在所述距离最近的Hadoop集群中。
具体的,Hadoop(Hadoop Distributed File System,HDFS)是一个分布式文件存储系统,具有高容错性的特点,提供高吞吐量来访问应用程序的数据,适合那些有着超大数据集的应用程序。可获取距离当前分析处理数据的服务器最近的Hadoop集群服务器,并将处理后的数据及生成的图表文件等存储在距离最近的Hadoop集群服务器中,可减少网络传输消耗,节约网络资源。
上述数据分析处理的方法,可将数据存储在距离最近的Hadoop集群中,减少了网络传输消耗,节约网络资源。
如图4所示,一种数据分析处理的系统,包括进入模块410、访问模块420、读取模块430、生成脚本模块440及调用模块450。
进入模块410,用于进入预先建立的数据分析处理新工程。
具体的,数据分析处理新工程指的是在ETL工具中融入科学计算功能所建立的新工程。ETL工具负责将分布的、异构数据源中的数据如关系数据、平面数据文件等抽取到临时中间层后进行清洗、转换、集成,最后加载到数据仓库或数据集市中,成为联机分析处理、数据挖掘的基础。常见的ETL工具可包括Datastage、kettle、OWB等,其中,Datastage是一种数据集成软件平台,具有满足最苛刻的数据集成需求所需的功能性、灵活性和可伸缩性;kettle是由纯java编写的一款开源的ETL工具,可以在Windows、Linux、Unix上运行,主要用于数据的抽取,具有高效稳定的特点;OWB是Oracle的一个综合工具,它提供对ETL、完全集成的关系和维度建模、数据质量、数据审计,以及数据和元数据的整个生命周期的管理。在本实施例中,可在ETL工具kettle中融入python的科学计算功能,python是一种面向对象、解释型计算机程序设计语言,它具有丰富的扩展库,可以对数据进行科学计算,帮助完成各种高级的数据分析任务。科学计算指的是为解决科学和工程中的数学问题利用计算机进行的数值计算,主要包括建立数学模型、建立求解的计算方法和计算机实现三个阶段,常用的科学计算语言、软件包括FORTRANALGOL、MATLAB等,可以理解地,也可以使用其它具有科学计算功能的语言与ETL工具结合,不限于此。
访问模块420,用于在数据分析处理新工程中访问功能节点。
具体的,在kettle中融入python的科学计算功能,并开发生成功能节点,该功能节点可提供多种科学计算功能,例如执行python代码、调用python的科学计算扩展库进行数据分析运算等,python的科学计算扩展库可包括NumPy、ScriPy和matplotlib等,分别提供快速数组处理、数值运算以及绘图功能。在数据分析处理新工程中访问功能节点,可使用功能节点中的多种科学计算功能。
读取模块430,用于读取目标文件并导入数据。
具体的,目标文件可存储在本地或是分布式存储系统的服务器集群上。访问功能节点后,可从本地或分布式存储系统的服务器集群中选择所需的目标文件,读取该目标文件并导入需要处理的数据。
生成脚本模块440,用于根据需求信息生成数据计算处理脚本。
具体的,需求信息指的是对数据所需作出的分析处理需求,例如需要调用NumPy扩展库中的矢量处理函数对数据中的数组进行处理,或是需要对导入的数据进行批量处理等。可根据不同的需求信息生成对应的python数据计算处理脚本,并存储生成的数据计算处理脚本,使下次进行数据处理时可直接调用该数据计算处理脚本,无需重新生成。
调用模块450,用于在功能节点中调用所述数据计算处理脚本,对数据进行分析处理。
具体的,在功能节点中可直接执行根据需求信息生成的python数据计算处理脚本,并根据python数据计算处理脚本对数据进行分析处理,例如数据抽取、数据清洗、数据转换、数值运算等操作,其中,数据清洗指的是对数据进行重新审查和校验的过程,目的在于删除重复信息、纠正存在的错误,并提供数据一致性,数据转换指的是将数据从一种表示形式变为另一种表现形式的过程。也可通过python数据计算处理脚本调用科学计算扩展库中的函数,对数据进行科学计算。在其它的实施例中,在功能节点中可直接读取具有目标后缀的脚本文件,例如执行后缀为.py的脚本文件。
上述数据分析处理的系统,在数据分析处理新工程中访问功能节点,读取目标文件导入数据后,可调用根据需求信息生成的数据计算处理脚本对数据进行处理,能够执行数据计算处理脚本,对复杂的数据进行分析处理,且所有的数据处理过程均在功能节点中完成,数据不需要在多个节点之间流转,数据处理过程简单,提高了数据处理效率。
如图5所示,在另一个实施例中,上述数据分析处理的系统,除了包括进入模块410、访问模块420、读取模块430、生成脚本模块440及调用模块450,还包括建立模块460。
建立模块460,用于建立数据分析处理新工程。
如图6所示,在一个实施例中,建立模块460包括获取单元602、导入单元604、创建单元606、调用单元608、关联单元610、修改单元612及存储单元614。
获取单元602,用于获取数据分析源工程代码。
具体的,数据分析源工程代码指的是ETL工具的工程源码,例如kettle的工程源码等。获取数据分析源工程代码后,可对数据分析源工程代码进行解压,得到对应的工程文件。
导入单元604,用于创建数据分析处理新工程,并在数据分析处理新工程中导入数据分析源工程代码。
具体的,可在Eclipse等开发环境中以新工程的形式导入数据分析源工程代码,即在Eclipse等开发环境中创建新工程作为数据分析处理新工程,并将解压得到的ETL工具,例如kettle的工程源码导入数据分析处理新工程。
创建单元606,用于在数据分析处理新工程中创建功能节点。
具体的,可在数据分析处理新工程中创建功能节点,并根据kettle工具提供的多个接口开发该功能节点,例如利用TemplateStepDialog对话框类实现功能节点的功能界面等。在数据分析处理新工程中创建功能节点相当于在kettle工具原有的流程处理节点中重新定制的一个流程处理节点,功能节点也可看作kettle工具新开发的一个插件,该重新定制开发的功能节点主要用于处理需要进行科学计算或是复杂分析的数据。
调用单元608,用于调用数据计算工具数据包,并根据预设的节点开发模板将数据计算工具数据包中的数据融入数据分析处理新工程。
具体的,数据计算工具数据包可包括python代码及python自带的丰富的扩展库数据包,例如NumPy、ScriPy和matplotlib等科学计算扩展库的数据包。可在kettle工具的源码的插件式节点开发的基础上,根据kettle中原有的节点开发模板将数据计算工作数据包融入到数据分析处理新工程中,利用kettle工具中的四大类实现功能节点编辑、执行、保存python数据计算处理脚本的功能,其中,四大类分别为TemplateStep步骤类、TemplateStepData数据类、TemplateStepMeta元数据类及TemplateStepDialog对话框类。不同的类提供不同的接口,可调用各个接口融入数据计算工具数据包中的数据使功能节点具有编辑、执行、保存python数据计算处理脚本等功能。
获取单元602还用于获取数据计算工具数据包中的科学计算扩展库。
具体的,数据计算工具数据包中可包括NumPy、ScriPy和matplotlib等科学计算扩展库的数据,NumPy可用来存储和处理大型矩阵,ScriPy可用于抓取web站点并从页面中提取结构化的数据,matplotlib可用于提供图表生成等。python的科学计算功能相比起其它的科学计算软件或语言来说,具有更加丰富的扩展库,且扩展库均是开源,python可提供各种调用接口用于分析处理数据,语言更为简单易读,容易维护,可轻松完成各种数据处理的高级任务。
关联单元610,用于在功能节点中建立科学计算扩展库与数据分析处理新工程的关联关系。
具体的,在功能节点中建立NumPy、ScriPy和matplotlib等科学计算扩展库与数据分析处理新工程的关联关系,在功能节点中通过执行python数据计算处理脚本,调用python提供的对应的接口,即可使用科学计算扩展库中的科学计算功能,分析处理数据。
修改单元612,用于修改数据分析处理新工程的基础配置,并将功能节点打包。
具体的,可在plugin.xml等配置文件中修改数据分析处理新工程的基础配置,例如添加功能节点对应的名称及描述等,但不限于此。修改完基础配置后,可将功能节点打包,并存储在kettle的插件文件夹中。
存储单元614,用于存储数据分析处理新工程。
具体的,开发完成数据分析处理新工程的功能节点后,可在本地或分布式存储系统的服务器集群中存储数据分析处理新工程。在本地或分布式存储系统的服务器集群中可使用数据分析处理新工程并发处理多项数据,提高数据处理效率。
上述数据分析处理的系统,通过在数据分析处理新工程中创建并开发功能节点,使功能节点提供编辑、执行、保存数据计算处理脚本等功能,并能在功能节点中调用科学计算扩展库分析处理复杂的数据,在ETL数据分析工具中融入科学计算功能,使ETL数据分析工具可以用更简单的方式,进行更加复杂的数据处理,并提高数据处理效率。
如图7所示,在另一个实施例中,上述数据分析处理的系统,除了包括进入模块410、访问模块420、读取模块430、生成脚本模块440、调用模块450及建立模块460,还包括接收模块470及生成图表模块480。
接收模块470,用于接收生成数据图表的操作请求。
具体的,在数据分析处理新工程的功能节点中,可设置有生成数据图表的按钮,当用户点击该按钮,可接收到生成数据图表的操作请求。
生成图表模块480,用于根据操作请求调用科学计算扩展库中的图形处理扩展库的相关函数对处理后的数据进行分析,并生成对应的数据图表文件。
具体的,可在python数据计算处理脚本中调用相应的接口,使用科学计算扩展库中的matplotlib等图形处理扩展库中的相关函数,对处理后的数据进行分析,并生成对应的图形、表格等,以可视化的形式进行展示,使用户能更直接地观看数据的分析结果。生成的数据图表文件可保存在本地或分布式存储系统的服务器集群中,存储在分布式存储系统的服务器集群中可减轻服务器的压力。
上述数据分析处理的系统,可调用科学计算扩展库中的图形处理扩展库中的相关函数对处理后的数据进行分析,使处理后的数据以图形、表格等形式展示,更直观地反映数据分析处理结果。
在另一个实施例中,上述数据分析处理的系统,还包括存储模块。
存储模块,用于获取距离最近的Hadoop集群,并将处理后的数据存储在距离最近的Hadoop集群中。
具体的,Hadoop是一个分布式文件存储系统,具有高容错性的特点,提供高吞吐量来访问应用程序的数据,适合那些有着超大数据集的应用程序。可获取距离当前分析处理数据的服务器最近的Hadoop集群服务器,并将处理后的数据及生成的图表文件等存储在距离最近的Hadoop集群服务器中,可减少网络传输消耗,节约网络资源。
上述数据分析处理的系统,可将数据存储在距离最近的Hadoop集群中,减少了网络传输消耗,节约网络资源。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (8)

1.一种数据分析处理的方法,其特征在于,包括以下步骤:
建立数据分析处理新工程;
所述建立数据分析处理新工程的步骤,包括:
获取数据分析源工程代码;
创建数据分析处理新工程,并在所述数据分析处理新工程中导入所述数据分析源工程代码;
在所述数据分析处理新工程中创建功能节点;
调用数据计算工具数据包,并根据预设的节点开发模板将所述数据计算工具数据包中的数据融入所述数据分析处理新工程;
存储所述数据分析处理新工程;
进入预先建立的数据分析处理新工程;
在所述数据分析处理新工程中访问功能节点;
读取目标文件并导入数据;
根据需求信息生成数据计算处理脚本;
在所述功能节点中调用所述数据计算处理脚本,对所述数据进行分析处理。
2.根据权利要求1所述的数据分析处理的方法,其特征在于,在所述存储所述数据分析处理新工程的步骤之前,还包括:
获取所述数据计算工具数据包中的科学计算扩展库;
在所述功能节点中建立所述科学计算扩展库与所述数据分析处理新工程的关联关系;
修改所述数据分析处理新工程的基础配置,并将所述功能节点打包。
3.根据权利要求2所述的数据分析处理的方法,其特征在于,在所述功能节点中调用所述数据计算处理脚本,对所述数据进行分析处理的步骤之后,还包括:
接收生成数据图表的操作请求;
根据所述操作请求调用所述科学计算扩展库中的图形处理扩展库的相关函数对处理后的数据进行分析,并生成对应的数据图表文件。
4.根据权利要求1所述的数据分析处理的方法,其特征在于,所述方法还包括:
获取距离最近的Hadoop集群,并将处理后的数据存储在所述距离最近的Hadoop集群中。
5.一种数据分析处理的系统,其特征在于,包括:
建立模块,用于建立数据分析处理新工程;
所述建立模块包括:
获取单元,用于获取数据分析源工程代码;
导入单元,用于创建数据分析处理新工程,并在所述数据分析处理新工程中导入所述数据分析源工程代码;
创建单元,用于在所述数据分析处理新工程中创建功能节点;
调用单元,用于调用数据计算工具数据包,并根据预设的节点开发模板将所述数据计算工具数据包中的数据融入所述数据分析处理新工程;
存储单元,用于存储所述数据分析处理新工程;
进入模块,用于进入预先建立的数据分析处理新工程;
访问模块,用于在所述数据分析处理新工程中访问功能节点;
读取模块,用于读取目标文件并导入数据;
生成脚本模块,用于根据需求信息生成数据计算处理脚本;
调用模块,用于在所述功能节点中调用所述数据计算处理脚本,对所述数据进行分析处理。
6.根据权利要求5所述的数据分析处理的系统,其特征在于,所述获取单元还用于获取所述数据计算工具数据包中的科学计算扩展库;
所述建立模块还包括:
关联单元,用于在所述功能节点中建立所述科学计算扩展库与所述数据分析处理新工程的关联关系;
修改单元,用于修改所述数据分析处理新工程的基础配置,并将所述功能节点打包。
7.根据权利要求6所述的数据分析处理的系统,其特征在于,所述系统还包括:
接收模块,用于接收生成数据图表的操作请求;
生成图表模块,用于根据所述操作请求调用所述科学计算扩展库中的图形处理扩展库的相关函数对处理后的数据进行分析,并生成对应的数据图表文件。
8.根据权利要求5所述的数据分析处理的系统,其特征在于,所述系统还包括:
存储模块,用于获取距离最近的Hadoop集群,并将处理后的数据存储在所述距离最近的Hadoop集群中。
CN201610243600.XA 2016-04-19 2016-04-19 数据分析处理的方法和系统 Active CN105824974B (zh)

Priority Applications (8)

Application Number Priority Date Filing Date Title
CN201610243600.XA CN105824974B (zh) 2016-04-19 2016-04-19 数据分析处理的方法和系统
AU2017254506A AU2017254506B2 (en) 2016-04-19 2017-03-10 Method, apparatus, computing device and storage medium for data analyzing and processing
PCT/CN2017/076293 WO2017181786A1 (zh) 2016-04-19 2017-03-10 数据分析处理的方法、装置、计算机设备及存储介质
SG11201708941TA SG11201708941TA (en) 2016-04-19 2017-03-10 Method, apparatus, computing device and storage medium for data analyzing and processing
KR1020187015128A KR102133906B1 (ko) 2016-04-19 2017-03-10 데이터 분석 및 처리 방법, 장치, 컴퓨터 장치 및 저장 매체
US15/578,690 US20180150530A1 (en) 2016-04-19 2017-03-10 Method, Apparatus, Computing Device and Storage Medium for Analyzing and Processing Data
EP17785272.0A EP3279816A4 (en) 2016-04-19 2017-03-10 Data analysis processing method, apparatus, computer device, and storage medium
JP2017561743A JP6397587B2 (ja) 2016-04-19 2017-03-10 データ分析処理のプログラム、コンピュータデバイス及び記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610243600.XA CN105824974B (zh) 2016-04-19 2016-04-19 数据分析处理的方法和系统

Publications (2)

Publication Number Publication Date
CN105824974A CN105824974A (zh) 2016-08-03
CN105824974B true CN105824974B (zh) 2019-03-26

Family

ID=56527124

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610243600.XA Active CN105824974B (zh) 2016-04-19 2016-04-19 数据分析处理的方法和系统

Country Status (8)

Country Link
US (1) US20180150530A1 (zh)
EP (1) EP3279816A4 (zh)
JP (1) JP6397587B2 (zh)
KR (1) KR102133906B1 (zh)
CN (1) CN105824974B (zh)
AU (1) AU2017254506B2 (zh)
SG (1) SG11201708941TA (zh)
WO (1) WO2017181786A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105824974B (zh) * 2016-04-19 2019-03-26 平安科技(深圳)有限公司 数据分析处理的方法和系统
CN106547865A (zh) * 2016-11-01 2017-03-29 广西电网有限责任公司电力科学研究院 一种大数据便捷分布式计算支持系统
CN106651560A (zh) * 2016-12-01 2017-05-10 四川弘智远大科技有限公司 一种政府补贴数据监管系统
CN110020018B (zh) * 2017-12-20 2023-08-29 阿里巴巴集团控股有限公司 数据可视化展示方法及装置
CN110716968A (zh) * 2019-09-22 2020-01-21 南京信易达计算技术有限公司 一种大气科学计算容器包系统及方法
CN111506543A (zh) * 2020-04-22 2020-08-07 北京奕为汽车科技有限公司 一种m文件生成方法及装置
CN112179346B (zh) * 2020-09-15 2024-02-27 国营芜湖机械厂 一种无人小车的室内导航系统及其使用方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101908191A (zh) * 2010-08-03 2010-12-08 深圳市她秀时尚电子商务有限公司 应用于电子商务的数据分析方法及系统
CN103425762A (zh) * 2013-08-05 2013-12-04 南京邮电大学 基于Hadoop平台的电信运营商海量数据处理方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7877421B2 (en) * 2001-05-25 2011-01-25 International Business Machines Corporation Method and system for mapping enterprise data assets to a semantic information model
US7739267B2 (en) * 2006-03-10 2010-06-15 International Business Machines Corporation Classification and sequencing of mixed data flows
US8560568B2 (en) * 2008-08-26 2013-10-15 Zeewise, Inc. Remote data collection systems and methods using read only data extraction and dynamic data handling
US8736613B2 (en) * 2011-11-02 2014-05-27 International Business Machines Corporation Simplified graphical analysis of multiple data series
US9031902B2 (en) * 2011-11-10 2015-05-12 International Business Machines Corporation Slowly changing dimension attributes in extract, transform, load processes
US8577833B2 (en) * 2012-01-04 2013-11-05 International Business Machines Corporation Automated data analysis and transformation
US9489379B1 (en) * 2012-12-20 2016-11-08 Emc Corporation Predicting data unavailability and data loss events in large database systems
CN105824974B (zh) * 2016-04-19 2019-03-26 平安科技(深圳)有限公司 数据分析处理的方法和系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101908191A (zh) * 2010-08-03 2010-12-08 深圳市她秀时尚电子商务有限公司 应用于电子商务的数据分析方法及系统
CN103425762A (zh) * 2013-08-05 2013-12-04 南京邮电大学 基于Hadoop平台的电信运营商海量数据处理方法

Also Published As

Publication number Publication date
AU2017254506A1 (en) 2017-11-23
AU2017254506B2 (en) 2019-08-15
EP3279816A1 (en) 2018-02-07
US20180150530A1 (en) 2018-05-31
JP2018523203A (ja) 2018-08-16
CN105824974A (zh) 2016-08-03
EP3279816A4 (en) 2018-11-14
KR102133906B1 (ko) 2020-07-22
JP6397587B2 (ja) 2018-09-26
WO2017181786A1 (zh) 2017-10-26
KR20180133375A (ko) 2018-12-14
SG11201708941TA (en) 2017-11-29

Similar Documents

Publication Publication Date Title
CN105824974B (zh) 数据分析处理的方法和系统
CN102033748B (zh) 一种数据处理流程代码的生成方法
CN108984155B (zh) 数据处理流程设定方法和装置
CN104573063A (zh) 一种基于大数据的数据分析方法
CN112287015B (zh) 画像生成系统及其方法、电子设备及存储介质
CN105550268A (zh) 大数据流程建模分析引擎
CN112199086A (zh) 自动编程控制系统、方法、装置、电子设备及存储介质
CN115858205B (zh) 基于内存黑板机制的仿真组件交互方法、装置和设备
CN111784000A (zh) 数据处理方法、装置和服务器
Kuderu et al. Relational database to NoSQL conversion by schema migration and mapping
CN112860412B (zh) 业务数据处理方法、装置、电子设备及存储介质
de Souza Ramos et al. Watershed: A high performance distributed stream processing system
KR20200103133A (ko) 하둡 기반의 빅데이터 시스템에서 etl 절차를 수행하는 방법 및 장치
CN112507725B (zh) 金融信息的静态发布方法、装置、设备及存储介质
CN114047926A (zh) 数组计算表达语言的转换方法、装置、设备及存储介质
CN112287396A (zh) 一种基于隐私保护的数据处理方法及装置
CN113760240A (zh) 一种生成数据模型的方法和装置
CN114365151A (zh) 神经网络模型转化方法、装置、服务器及存储介质
CN108491437A (zh) 一种基于Hadoop的海量Web数据挖掘遗传方法
CN112818406B (zh) 一种评分卡模型的预测方法及装置
CN107291954B (zh) 一种基于MapReduce的OCL并行查询方法
CN114860805A (zh) 用于物联网设备的数据挖掘分析系统和分析方法
CN118012501A (zh) 一种基于图搜索网络和具象语法树的前端框架迁移方法
CN115544182A (zh) 数据处理方法、装置以及计算机可读存储介质
CN117492722A (zh) 代码生成方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant