WO2017181786A1 - 数据分析处理的方法、装置、计算机设备及存储介质 - Google Patents

数据分析处理的方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
WO2017181786A1
WO2017181786A1 PCT/CN2017/076293 CN2017076293W WO2017181786A1 WO 2017181786 A1 WO2017181786 A1 WO 2017181786A1 CN 2017076293 W CN2017076293 W CN 2017076293W WO 2017181786 A1 WO2017181786 A1 WO 2017181786A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
data analysis
new project
analysis processing
processing
Prior art date
Application number
PCT/CN2017/076293
Other languages
English (en)
French (fr)
Inventor
朱敏
Original Assignee
平安科技(深圳)有限公司
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 平安科技(深圳)有限公司 filed Critical 平安科技(深圳)有限公司
Priority to AU2017254506A priority Critical patent/AU2017254506B2/en
Priority to SG11201708941TA priority patent/SG11201708941TA/en
Priority to KR1020187015128A priority patent/KR102133906B1/ko
Priority to US15/578,690 priority patent/US20180150530A1/en
Priority to EP17785272.0A priority patent/EP3279816A4/en
Priority to JP2017561743A priority patent/JP6397587B2/ja
Publication of WO2017181786A1 publication Critical patent/WO2017181786A1/zh

Links

Classifications

    • 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
    • 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

Definitions

  • the present invention relates to the field of data processing technologies, and in particular, to a data analysis processing method, apparatus, computer device, and storage medium.
  • ETL Extract-Transform-Load
  • Common ETL tools can include Datastage, Kettle, and OWB (Oracle). Warehouse Builder) and so on.
  • Traditional ETL tools do not have the ability to execute scripts. They cannot execute existing data analysis functions and third-party extension libraries, and cannot analyze and process complex data that requires scientific calculations.
  • traditional ETL tools such as kettle, can only process streaming data. In the data processing process, data needs to be loaded through one node, then the data is converted and cleaned by the next node, and finally flows to the end node. After a series of nodes, the data processing process is complicated and cumbersome, and the processing efficiency is low.
  • a method, apparatus, computer device, and storage medium for data analysis processing are provided.
  • a method of data analysis processing comprising:
  • the data calculation processing script is called in the function node, and the data is analyzed and processed.
  • a device for data analysis processing comprising:
  • Entry module for entering a pre-established data analysis and processing new project
  • An access module configured to access a function node in the data analysis processing new project
  • a reading module for reading a target file and importing data
  • a calling module configured to invoke the data calculation processing script in the function node, and perform analysis processing on the data.
  • a computer device comprising a memory and a processor, the memory storing computer executable instructions, the computer executable instructions being executed by the processor, such that the processor performs the following steps:
  • the data calculation processing script is called in the function node, and the data is analyzed and processed.
  • One or more non-volatile readable storage media storing computer-executable instructions, when executed by one or more processors, cause the one or more processors to perform the following steps:
  • the data calculation processing script is called in the function node, and the data is analyzed and processed.
  • Figure 1 is a block diagram of a computer device in one embodiment
  • FIG. 2 is a flow chart of a method of data analysis processing in an embodiment
  • 3 is a flow chart of establishing a new project of data analysis processing in one embodiment
  • FIG. 4 is a flow chart of generating a data chart in one embodiment
  • Figure 5 is a functional block diagram of an apparatus for data analysis processing in an embodiment
  • FIG. 6 is a functional block diagram of an apparatus for data analysis processing in another embodiment
  • Figure 7 is a functional block diagram of a module in an embodiment
  • Figure 8 is a functional block diagram of an apparatus for data analysis processing in another embodiment.
  • the computer device includes a processor coupled through a system bus, a non-volatile storage medium, an internal memory, a network interface, a display screen, and an input device.
  • the non-volatile storage medium of the computer device stores an operating system and computer-executable instructions for implementing a data analysis processing method applicable to the computer device provided in the embodiment of the present application.
  • the processor is used to provide computing and control capabilities to support the operation of the entire computer device.
  • the internal memory in the computer device provides an environment for operating the operating system and computer executable instructions in the non-volatile storage medium for network communication with other computer devices, such as sending processed data to the server for storage. Wait.
  • the computer device may include a user interaction device including an input device and an output device.
  • the output device may be a display screen of the computer device for displaying data information, wherein the display screen may be a liquid crystal display or An electronic ink display or the like;
  • the input device is used for data input, wherein the input device may be a touch layer covered on the display screen, or may be a button, a trackball or a touchpad provided on a computer device casing, or may be an external device. Keyboard, trackpad or mouse.
  • the computer device can be a mobile phone, a tablet, a PC (personal The terminal such as computer) may be a server or the like. It will be understood by those skilled in the art that the structure shown in FIG.
  • 1 is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation of the computer device to which the solution of the present application is applied. It includes more or fewer components than those shown in the figures, or some components are combined, or have different component arrangements.
  • a method of data analysis processing is provided, which is applicable to a computer device as shown in FIG. 1, and the method includes the following steps:
  • Step S210 entering a pre-established data analysis processing new project.
  • the data analysis processing new project refers to a new project created by incorporating scientific computing functions into an ETL (Extract-Transform-Load) tool.
  • the ETL tool is responsible for extracting data from distributed, heterogeneous data sources, such as relational data and flat data files, to a temporary intermediate layer for cleaning, conversion, integration, and finally loading into a data warehouse or data mart to become an online analytical process.
  • Common ETL tools can include Datastage, kettle (kettle), OWB (Oracle Warehouse Builder), etc.
  • Datastage is a data integration software platform with the functionality, flexibility and scalability required to meet the most demanding data integration requirements
  • kettle is an open source ETL tool written in pure java.
  • Python is A comprehensive tool from Oracle that provides ETL, fully integrated relationship and dimensional modeling, data quality, data auditing, and management of the entire lifecycle of data and metadata.
  • Python's scientific computing function can be integrated into the ETL tool kettle. Python is an object-oriented, interpreted computer programming language. It has a rich extension library that can perform scientific calculations on data and help to complete each An advanced data analysis task. Scientific computing refers to the use of computer numerical calculations to solve mathematical problems in science and engineering. It mainly includes three stages: establishing mathematical models, establishing calculation methods for solving and computer implementation. Commonly used scientific computing languages and software include FORTRANALGOL and MATLAB. Etc., it can be understood that other languages with scientific computing functions can also be combined with ETL tools, and are not limited thereto.
  • Step S220 accessing the function node in the data analysis processing new project.
  • python's scientific computing functions are integrated into the kettle, and a function node is developed, which provides various scientific computing functions, such as executing python code, calling python's scientific computing extension library for data analysis operations, etc.
  • Python's scientific computing extension library can include NumPy, ScriPy, and matplotlib to provide fast array processing, numerical operations, and drawing functions, respectively. Accessing functional nodes in a new project for data analysis and processing can use a variety of scientific computing functions in the functional nodes.
  • step S230 the target file is read and the data is imported.
  • the target files can be stored on a server cluster of a local or distributed storage system. After accessing the functional node, you can select the desired target file from the server cluster of the local or distributed storage system, read the target file, and import the data that needs to be processed.
  • Step S240 generating a data calculation processing script according to the demand information.
  • the demand information refers to the analysis processing requirements required for the data, such as calling a vector processing function in the NumPy extension library to process the array in the data, or performing batch processing on the imported data. Wait.
  • the corresponding python data calculation processing script can be generated according to different demand information, and the generated data calculation processing script can be stored, so that the data calculation processing script can be directly called when the data processing is performed next time, without re-generation.
  • step S250 the data calculation processing script is called in the function node, and the data is analyzed and processed.
  • the python data calculation processing script generated according to the demand information may be directly executed in the function node, and the data is analyzed and processed according to the python data calculation processing script, such as data extraction, data cleaning, data conversion, numerical calculation, and the like.
  • data cleaning refers to the process of re-examining and verifying data
  • the purpose is to delete duplicate information, correct existing errors, and provide data consistency.
  • Data conversion refers to changing data from a representation. Another process of expression.
  • the data in the scientific computing extension library can also be called by the python data calculation processing script to perform scientific calculation on the data.
  • a script file with a target suffix can be directly read in the function node, such as a script file with a .py suffix.
  • the above data analysis processing method accesses the function node in the data analysis processing new project, and after reading the target file import data, the data calculation processing script generated according to the demand information can be called to process the data, and the data calculation processing script can be executed. Complex data is analyzed and processed, and all data processing processes are completed in the function nodes. The data does not need to flow between multiple nodes, and the data processing process is simple, which improves the data processing efficiency.
  • the method before entering the pre-established data analysis processing new project in step S210, the method further includes: establishing a new data analysis processing project.
  • the steps of establishing a new process for data analysis processing include:
  • Step S302 acquiring a data analysis source engineering code.
  • the data analysis source engineering code refers to the engineering source code of the ETL tool, such as Kettle's engineering source code. After obtaining the data analysis source engineering code, the data analysis source engineering code can be decompressed to obtain the corresponding project file.
  • Step S304 creating a new data analysis processing project, and importing the data analysis source engineering code in the data analysis processing new project.
  • the data analysis source engineering code can be imported in the form of a new project in a development environment such as Eclipse, that is, a new project is created in a development environment such as Eclipse as a data analysis processing new project, and the decompressed ETL tool is obtained.
  • a development environment such as Eclipse
  • Kettle's project source code imports data analysis and processing new projects.
  • Step S306 creating a function node in the data analysis processing new project.
  • the function node can be created in the data analysis processing new project, and the function node is developed according to multiple interfaces provided by the kettle tool, for example, the function interface of the function node is implemented by using the TemplateStepDialog dialog class.
  • Creating a function node in the data analysis processing new project is equivalent to re-customizing a process processing node in the original process processing node of the kettle tool, and the function node can also be regarded as a plug-in newly developed by the kettle tool, and the function of the re-customization development Nodes are primarily used to process data that requires scientific or complex analysis.
  • Step S308 invoking a data calculation tool data packet, and integrating the data in the data calculation tool data packet into the data analysis processing new project according to the preset node development template.
  • the data calculation tool data package may include python code and a rich extended library data package that comes with Python, such as data packages of scientific computing extension libraries such as NumPy, ScriPy, and matplotlib.
  • Python such as data packages of scientific computing extension libraries such as NumPy, ScriPy, and matplotlib.
  • the data calculation work package is integrated into the new data analysis and processing project according to the original node development template in the kettle, and the function nodes are edited by using four categories in the kettle tool.
  • the functions of the python data calculation processing script are executed, and the four categories are the TemplateStep step class, the TemplateStepData data class, the TemplateStepMeta metadata class, and the TemplateStepDialog dialog class.
  • Different classes provide different interfaces, and each interface can be called into the data in the data calculation tool package to enable the function node to edit, execute, and save python data calculation processing scripts.
  • Step S310 acquiring a scientific calculation extension library in the data calculation tool data package.
  • the data calculation tool data package may include data of scientific computing extension libraries such as NumPy, ScriPy, and matplotlib, which can be used to store and process large matrices, and ScriPy can be used to crawl web sites and extract structured from pages.
  • the data, matplotlib can be used to provide chart generation and more.
  • Python's scientific computing function has a richer library than other scientific computing software or languages, and the extended library is open source. Python can provide various calling interfaces for analyzing and processing data, and the language is simpler. Read, easy to maintain, and easily complete advanced tasks for various data processing.
  • Step S312 establishing a relationship between the scientific computing extension library and the data analysis processing new project in the function node.
  • the association between the scientific computing extension library such as NumPy, ScriPy, and matplotlib and the new data analysis processing project is established in the function node, and the corresponding interface provided by Python is invoked by executing the python data calculation processing script in the function node. You can use the scientific computing functions in the scientific computing extension library to analyze and process the data.
  • Step S314 modifying the basic configuration of the data analysis processing new project, and packaging the function node.
  • the basic configuration of the data analysis processing new project may be modified in a configuration file such as plugin.xml, for example, adding a name and a description corresponding to the function node, but is not limited thereto.
  • the function nodes can be packaged and stored in the plugin folder of Kettle.
  • Step S316 storing data analysis processing new project.
  • the new data analysis processing project can be stored in the server cluster of the local or distributed storage system.
  • data analysis can be used to process new projects concurrently to process multiple data, improving data processing efficiency.
  • the function node by creating and developing a function node in a new data analysis processing project, provides functions such as editing, executing, and saving a data calculation processing script, and can call the scientific calculation extended library in the function node to analyze and process the complex.
  • the data the integration of scientific computing functions into ETL data analysis tools, enables ETL data analysis tools to perform more complex data processing and improve data processing efficiency in a simpler way.
  • the data calculation processing script is invoked in the function node in step S250, and after analyzing the data, the method further includes:
  • Step S402 receiving an operation request for generating a data chart.
  • a button for generating a data chart may be set, and when the user clicks the button, an operation request for generating a data chart may be received.
  • Step S404 calling the correlation function in the graphics processing extension library in the scientific computing extension library according to the operation request, analyzing the processed data, and generating a corresponding data chart file.
  • the corresponding interface may be invoked in the python data calculation processing script, and the related functions in the extended library are processed by using a pattern such as matplotlib in the scientific computing extension library, and the processed data is analyzed, and corresponding graphics are generated. , tables, etc., displayed in a visual form, allowing users to more directly view the analysis results of the data.
  • the generated data chart files can be saved in a server cluster of a local or distributed storage system, and stored in a server cluster of a distributed storage system can alleviate the pressure on the server.
  • the related function in the graphics processing extension library in the scientific computing extension library can be called to analyze the processed data, so that the processed data is displayed in the form of graphs, tables, etc., and the data analysis processing is more intuitively reflected. result.
  • the method for data analysis processing further includes: acquiring a Hadoop cluster with the closest distance, and storing the processed data in the Hadoop cluster with the closest distance.
  • Hadoop Hadoop Distributed File System, HDFS
  • HDFS Hadoop Distributed File System
  • the Hadoop cluster server closest to the computer device that currently analyzes the processed data can be obtained, and the processed data and the generated chart file are stored in the nearest Hadoop cluster server, which can reduce network transmission consumption and save network resources.
  • data can be stored in the nearest Hadoop cluster, which reduces network transmission consumption and saves network resources.
  • an apparatus for data analysis processing including an entry module 510, an access module 520, a read module 530, a generate script module 540, and a call module 550.
  • the entry module 510 is configured to enter a pre-established data analysis processing new project.
  • the data analysis process new project refers to the new project established by incorporating scientific computing functions into the ETL tool.
  • the ETL tool is responsible for extracting data from distributed, heterogeneous data sources, such as relational data and flat data files, to a temporary intermediate layer for cleaning, conversion, integration, and finally loading into a data warehouse or data mart to become an online analytical process.
  • the basis of data mining is responsible for extracting data from distributed, heterogeneous data sources, such as relational data and flat data files, to a temporary intermediate layer for cleaning, conversion, integration, and finally loading into a data warehouse or data mart to become an online analytical process.
  • ETL tools can include Datastage, kettle, OWB, etc.
  • Datastage is a data integration software platform with the functionality, flexibility and scalability required to meet the most demanding data integration requirements; kettle is made of pure java
  • An open source ETL tool can be run on Windows, Linux, Unix, mainly for data extraction, with high efficiency and stability;
  • OWB is A comprehensive tool from Oracle that provides ETL, fully integrated relationship and dimensional modeling, data quality, data auditing, and management of the entire lifecycle of data and metadata.
  • Python's scientific computing function can be integrated into the ETL tool kettle. Python is an object-oriented, interpreted computer programming language. It has a rich extension library that can perform scientific calculations on data and help to complete each An advanced data analysis task.
  • Scientific computing refers to the use of computer numerical calculations to solve mathematical problems in science and engineering. It mainly includes three stages: establishing mathematical models, establishing calculation methods for solving and computer implementation. Commonly used scientific computing languages and software include FORTRANALGOL and MATLAB. Etc., it can be understood that other languages with scientific computing functions can also be combined with ETL tools, and are not limited thereto.
  • the access module 520 is configured to access the function node in the data analysis processing new project.
  • python's scientific computing functions are integrated into the kettle, and a function node is developed, which provides various scientific computing functions, such as executing python code, calling python's scientific computing extension library for data analysis operations, etc.
  • Python's scientific computing extension library can include NumPy, ScriPy, and matplotlib to provide fast array processing, numerical operations, and drawing functions, respectively. Accessing functional nodes in a new project for data analysis and processing can use a variety of scientific computing functions in the functional nodes.
  • the reading module 530 is configured to read the target file and import the data.
  • the target files can be stored on a server cluster of a local or distributed storage system. After accessing the functional node, you can select the desired target file from the server cluster of the local or distributed storage system, read the target file, and import the data that needs to be processed.
  • the generating script module 540 is configured to generate a data calculation processing script according to the demand information.
  • the demand information refers to the analysis processing requirements required for the data, such as calling a vector processing function in the NumPy extension library to process the array in the data, or performing batch processing on the imported data. Wait.
  • the corresponding python data calculation processing script can be generated according to different demand information, and the generated data calculation processing script can be stored, so that the data calculation processing script can be directly called when the data processing is performed next time, without re-generation.
  • the calling module 550 is configured to invoke the data calculation processing script in the function node to perform analysis processing on the data.
  • the python data calculation processing script generated according to the demand information may be directly executed in the function node, and the data is analyzed and processed according to the python data calculation processing script, such as data extraction, data cleaning, data conversion, numerical calculation, and the like.
  • data cleaning refers to the process of re-examining and verifying data
  • the purpose is to delete duplicate information, correct existing errors, and provide data consistency.
  • Data conversion refers to changing data from a representation. Another process of expression.
  • the data in the scientific computing extension library can also be called by the python data calculation processing script to perform scientific calculation on the data.
  • a script file with a target suffix can be directly read in the function node, such as a script file with a .py suffix.
  • the device for analyzing the data described above accesses the function node in the new data analysis processing project, and after reading the target file import data, the data calculation processing script generated based on the demand information can be called to process the data, and the data calculation processing script can be executed. Complex data is analyzed and processed, and all data processing processes are completed in the function nodes. The data does not need to flow between multiple nodes, and the data processing process is simple, which improves the data processing efficiency.
  • the apparatus for data analysis processing includes an entry module 510, an access module 520, a read module 530, a generate script module 540, and a call module 550.
  • a module 560 is created for establishing a new project for data analysis processing.
  • the setup module 560 includes an acquisition unit 702, an import unit 704, a creation unit 706, a call unit 708, an association unit 710, a modification unit 712, and a storage unit 714.
  • the obtaining unit 702 is configured to obtain a data analysis source engineering code.
  • the data analysis source engineering code refers to the engineering source code of the ETL tool, such as Kettle's engineering source code. After obtaining the data analysis source engineering code, the data analysis source engineering code can be decompressed to obtain the corresponding project file.
  • the import unit 704 is configured to create a new data analysis processing project, and import the data analysis source engineering code in the data analysis processing new project.
  • the data analysis source engineering code can be imported in the form of a new project in a development environment such as Eclipse, that is, a new project is created in a development environment such as Eclipse as a data analysis processing new project, and the decompressed ETL tool is obtained.
  • a development environment such as Eclipse
  • Kettle's project source code imports data analysis and processing new projects.
  • the creating unit 706 is configured to create a function node in the data analysis processing new project.
  • the function node can be created in the data analysis processing new project, and the function node is developed according to multiple interfaces provided by the kettle tool, for example, the function interface of the function node is implemented by using the TemplateStepDialog dialog class.
  • Creating a function node in the data analysis processing new project is equivalent to re-customizing a process processing node in the original process processing node of the kettle tool, and the function node can also be regarded as a plug-in newly developed by the kettle tool, and the function of the re-customization development Nodes are primarily used to process data that requires scientific or complex analysis.
  • the calling unit 708 is configured to invoke the data calculation tool data packet, and integrate the data in the data calculation tool data packet into the data analysis processing new project according to the preset node development template.
  • the data calculation tool data package may include python code and a rich extended library data package that comes with Python, such as data packages of scientific computing extension libraries such as NumPy, ScriPy, and matplotlib.
  • Python such as data packages of scientific computing extension libraries such as NumPy, ScriPy, and matplotlib.
  • the data calculation work package is integrated into the new data analysis and processing project according to the original node development template in the kettle, and the function nodes are edited by using four categories in the kettle tool.
  • the functions of the python data calculation processing script are executed, and the four categories are the TemplateStep step class, the TemplateStepData data class, the TemplateStepMeta metadata class, and the TemplateStepDialog dialog class.
  • Different classes provide different interfaces, and each interface can be called into the data in the data calculation tool package to enable the function node to edit, execute, and save python data calculation processing scripts.
  • the obtaining unit 702 is further configured to acquire a scientific computing extension library in the data calculation tool data package.
  • the data calculation tool data package may include data of scientific computing extension libraries such as NumPy, ScriPy, and matplotlib, which can be used to store and process large matrices, and ScriPy can be used to crawl web sites and extract structured from pages.
  • the data, matplotlib can be used to provide chart generation and more.
  • Python's scientific computing function has a richer library than other scientific computing software or languages, and the extended library is open source. Python can provide various calling interfaces for analyzing and processing data, and the language is simpler. Read, easy to maintain, and easily complete advanced tasks for various data processing.
  • the associating unit 710 is configured to establish, in the function node, an association relationship between the scientific computing extension library and the data analysis processing new project.
  • the association between the scientific computing extension library such as NumPy, ScriPy, and matplotlib and the new data analysis processing project is established in the function node, and the corresponding interface provided by Python is invoked by executing the python data calculation processing script in the function node. You can use the scientific computing functions in the scientific computing extension library to analyze and process the data.
  • the modifying unit 712 is configured to modify a basic configuration of the data analysis processing new project, and package the function node.
  • the basic configuration of the data analysis processing new project may be modified in a configuration file such as plugin.xml, for example, adding a name and a description corresponding to the function node, but is not limited thereto.
  • the function nodes can be packaged and stored in the plugin folder of Kettle.
  • the storage unit 714 is configured to store a new process of data analysis processing.
  • the new data analysis processing project can be stored in the server cluster of the local or distributed storage system.
  • data analysis can be used to process new projects concurrently to process multiple data, improving data processing efficiency.
  • the function node by creating and developing a function node in a new data analysis processing project, provides functions such as editing, executing, and saving a data calculation processing script, and can call the scientific calculation extended library in the function node to analyze and process the complex.
  • the data the integration of scientific computing functions into ETL data analysis tools, enables ETL data analysis tools to perform more complex data processing and improve data processing efficiency in a simpler way.
  • the apparatus for data analysis processing includes, in addition to the entry module 510, the access module 520, the read module 530, the generation script module 540, the calling module 550, and the setup module 560, Module 570 and generation chart module 580.
  • the receiving module 570 is configured to receive an operation request for generating a data chart.
  • a button for generating a data chart may be set, and when the user clicks the button, an operation request for generating a data chart may be received.
  • the generating chart module 580 is configured to call the related function of the graphic processing extended library in the scientific computing extended library according to the operation request to analyze the processed data, and generate a corresponding data chart file.
  • the corresponding interface may be invoked in the python data calculation processing script, and the related functions in the extended library are processed by using a pattern such as matplotlib in the scientific computing extension library, and the processed data is analyzed, and corresponding graphics are generated. , tables, etc., displayed in a visual form, allowing users to more directly view the analysis results of the data.
  • the generated data chart files can be saved in a server cluster of a local or distributed storage system, and stored in a server cluster of a distributed storage system can alleviate the pressure on the server.
  • the related function in the graphics processing extension library in the scientific computing extension library can be called to analyze the processed data, so that the processed data is displayed in the form of graphs, tables, etc., and the data analysis processing is more intuitively reflected. result.
  • the apparatus for data analysis processing further includes a storage module.
  • a storage module that acquires the closest Hadoop cluster and stores the processed data in the nearest Hadoop cluster.
  • Hadoop is a distributed file storage system that is highly fault tolerant and provides high throughput to access application data for applications with very large data sets.
  • the Hadoop cluster server closest to the computer device that currently analyzes the processed data can be obtained, and the processed data and the generated chart file are stored in the nearest Hadoop cluster server, which can reduce network transmission consumption and save network resources.
  • data can be stored in the nearest Hadoop cluster, which reduces network transmission consumption and saves network resources.
  • the calling module 550 can analyze and process the data by using a function node to call a data calculation processing script by using a processor of the computer device, where the processor can be a central processing unit (CPU) or a microprocessor.
  • the storage module can send the processed data and the generated chart file to the nearest Hadoop cluster server through the network interface of the computer device, and store the processed data and the generated chart file in the closest Hadoop cluster server.
  • the network interface may be an Ethernet card, a wireless network card, or the like.
  • Each of the above modules may be embedded in or independent of the processor of the computer device in hardware, or may be stored in the memory of the computer device in software, so that the processor can invoke the operations corresponding to the above modules.
  • the storage medium may be a magnetic disk, an optical disk, or a read-only storage memory (Read-Only)
  • a nonvolatile storage medium such as a memory or a ROM, or a random access memory (RAM).

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

数据分析处理的方法、装置、计算机设备及存储介质
本申请要求于 2016 年 4 月 19 日提交中国专利局、申请号为 201610243600X 、发明名称为' 数据分析处理的方法和系统 '的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
【技术领域】
本发明涉及数据处理技术领域,特别是涉及一种数据分析处理的方法、装置、计算机设备及存储介质。
【背景技术】
ETL(Extract-Transform-Load),用来描述将数据从来源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程,常见的ETL工具可包括Datastage、kettle、OWB(Oracle Warehouse Builder)等。传统的ETL工具,不具有执行脚本的功能,不能执行现有的数据分析函数和第三方扩展库,无法对复杂的需要科学计算的数据进行分析处理。此外,传统的ETL工具,例如kettle,只能处理流式数据,在数据处理过程中,需要通过一个节点加载数据,然后通过下一个节点对数据进行转换、清洗,到最后流入到结束节点,需要经过一系列的节点,数据处理过程复杂繁琐,处理效率低。
【发明内容】
根据本申请的各种实施例,提供一种数据分析处理的方法、装置、计算机设备及存储介质。
一种数据分析处理的方法,包括:
进入预先建立的数据分析处理新工程;
在所述数据分析处理新工程中访问功能节点;
读取目标文件并导入数据;
根据需求信息生成数据计算处理脚本;及
在所述功能节点中调用所述数据计算处理脚本,对所述数据进行分析处理。
一种数据分析处理的装置,包括:
进入模块,用于进入预先建立的数据分析处理新工程;
访问模块,用于在所述数据分析处理新工程中访问功能节点;
读取模块,用于读取目标文件并导入数据;
生成脚本模块,用于根据需求信息生成数据计算处理脚本;及
调用模块,用于在所述功能节点中调用所述数据计算处理脚本,对所述数据进行分析处理。
一种计算机设备,包括存储器和处理器,所述存储器中储存有计算机可执行指令,所述计算机可执行指令被所述处理器执行时,使得所述处理器执行以下步骤:
进入预先建立的数据分析处理新工程;
在所述数据分析处理新工程中访问功能节点;
读取目标文件并导入数据;
根据需求信息生成数据计算处理脚本;及
在所述功能节点中调用所述数据计算处理脚本,对所述数据进行分析处理。
一个或多个存储有计算机可执行指令的非易失性可读存储介质,所述计算机可执行指令被一个或多个处理器执行时,使得所述一个或多个处理器执行以下步骤:
进入预先建立的数据分析处理新工程;
在所述数据分析处理新工程中访问功能节点;
读取目标文件并导入数据;
根据需求信息生成数据计算处理脚本;及
在所述功能节点中调用所述数据计算处理脚本,对所述数据进行分析处理。
本发明的一个或多个实施例的细节在下面的附图和描述中提出。本发明的其它特征、目的和优点将从说明书、附图以及权利要求书变得明显。
【附图说明】
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为一个实施例中计算机设备的框图;
图2为一个实施例中数据分析处理的方法的流程图;
图3为一个实施例中建立数据分析处理新工程的流程图;
图4为一个实施例中生成数据图表的流程图;
图5为一个实施例中数据分析处理的装置的功能模块图;
图6为另一个实施例中数据分析处理的装置的功能模块图;
图7为一个实施例中建立模块的功能模块图;
图8为另一个实施例中数据分析处理的装置的功能模块图。
【具体实施方式】
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
图1为一个实施例中计算机设备的框图。如图1所示,该计算机设备包括通过系统总线连接的处理器、非易失性存储介质、内存储器、网络接口、显示屏和输入装置。其中,计算机设备的非易失性存储介质存储有操作系统及计算机可执行指令,该计算机可执行指令用于实现本申请实施例中提供的适用于计算机设备的一种数据分析处理的方法。该处理器用于提供计算和控制能力,支撑整个计算机设备的运行。计算机设备中的内存储器为非易失性存储介质中的操作系统及计算机可执行指令的运行提供环境,网络接口用于与其它的计算机设备进行网络通信,如向服务器发送处理后的数据进行存储等。计算机设备可包括用户交互装置,用户交互装置包括输入装置及输出装置,在一个实施例中,输出装置可以是计算机设备的显示屏,用于显示数据信息,其中,显示屏可以是液晶显示屏或者电子墨水显示屏等;输入装置用于数据输入,其中,输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,也可以是外接的键盘、触控板或鼠标等。该计算机设备可以是手机、平板电脑、PC(personal computer)等终端,也可以是服务器等。本领域技术人员可以理解,图1中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体地计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
如图2所示,在一个实施例中,提供一种数据分析处理的方法,可适用于如图1所示的计算机设备,该方法包括以下步骤:
步骤S210,进入预先建立的数据分析处理新工程。
在一个实施例中,数据分析处理新工程指的是在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工具结合,不限于此。
步骤S220,在数据分析处理新工程中访问功能节点。
在一个实施例中,在kettle中融入python的科学计算功能,并开发生成功能节点,该功能节点可提供多种科学计算功能,例如执行python代码、调用python的科学计算扩展库进行数据分析运算等,python的科学计算扩展库可包括NumPy、ScriPy和matplotlib等,分别提供快速数组处理、数值运算以及绘图功能。在数据分析处理新工程中访问功能节点,可使用功能节点中的多种科学计算功能。
步骤S230,读取目标文件并导入数据。
在一个实施例中,目标文件可存储在本地或是分布式存储系统的服务器集群上。访问功能节点后,可从本地或分布式存储系统的服务器集群中选择所需的目标文件,读取该目标文件并导入需要处理的数据。
步骤S240,根据需求信息生成数据计算处理脚本。
在一个实施例中,需求信息指的是对数据所需作出的分析处理需求,例如需要调用NumPy扩展库中的矢量处理函数对数据中的数组进行处理,或是需要对导入的数据进行批量处理等。可根据不同的需求信息生成对应的python数据计算处理脚本,并存储生成的数据计算处理脚本,使下次进行数据处理时可直接调用该数据计算处理脚本,无需重新生成。
步骤S250,在功能节点中调用数据计算处理脚本,对数据进行分析处理。
在一个实施例中,在功能节点中可直接执行根据需求信息生成的python数据计算处理脚本,并根据python数据计算处理脚本对数据进行分析处理,例如数据抽取、数据清洗、数据转换、数值运算等操作,其中,数据清洗指的是对数据进行重新审查和校验的过程,目的在于删除重复信息、纠正存在的错误,并提供数据一致性,数据转换指的是将数据从一种表示形式变为另一种表现形式的过程。也可通过python数据计算处理脚本调用科学计算扩展库中的函数,对数据进行科学计算。在其它的实施例中,在功能节点中可直接读取具有目标后缀的脚本文件,例如执行后缀为.py的脚本文件。
上述数据分析处理的方法,在数据分析处理新工程中访问功能节点,读取目标文件导入数据后,可调用根据需求信息生成的数据计算处理脚本对数据进行处理,能够执行数据计算处理脚本,对复杂的数据进行分析处理,且所有的数据处理过程均在功能节点中完成,数据不需要在多个节点之间流转,数据处理过程简单,提高了数据处理效率。
在一个实施例中,在步骤S210进入预先建立的数据分析处理新工程之前,还包括:建立数据分析处理新工程。
如图3所示,在一个实施例中,建立数据分析处理新工程的步骤,包括:
步骤S302,获取数据分析源工程代码。
在一个实施例中,数据分析源工程代码指的是ETL工具的工程源码,例如kettle的工程源码等。获取数据分析源工程代码后,可对数据分析源工程代码进行解压,得到对应的工程文件。
步骤S304,创建数据分析处理新工程,并在数据分析处理新工程中导入数据分析源工程代码。
在一个实施例中,可在Eclipse等开发环境中以新工程的形式导入数据分析源工程代码,即在Eclipse等开发环境中创建新工程作为数据分析处理新工程,并将解压得到的ETL工具,例如kettle的工程源码导入数据分析处理新工程。
步骤S306,在数据分析处理新工程中创建功能节点。
在一个实施例中,可在数据分析处理新工程中创建功能节点,并根据kettle工具提供的多个接口开发该功能节点,例如利用TemplateStepDialog对话框类实现功能节点的功能界面等。在数据分析处理新工程中创建功能节点相当于在kettle工具原有的流程处理节点中重新定制的一个流程处理节点,功能节点也可看作kettle工具新开发的一个插件,该重新定制开发的功能节点主要用于处理需要进行科学计算或是复杂分析的数据。
步骤S308,调用数据计算工具数据包,并根据预设的节点开发模板将数据计算工具数据包中的数据融入数据分析处理新工程。
在一个实施例中,数据计算工具数据包可包括python代码及python自带的丰富的扩展库数据包,例如NumPy、ScriPy和matplotlib等科学计算扩展库的数据包。可在kettle工具的源码的插件式节点开发的基础上,根据kettle中原有的节点开发模板将数据计算工作数据包融入到数据分析处理新工程中,利用kettle工具中的四大类实现功能节点编辑、执行、保存python数据计算处理脚本的功能,其中,四大类分别为TemplateStep步骤类、TemplateStepData数据类、TemplateStepMeta元数据类及TemplateStepDialog对话框类。不同的类提供不同的接口,可调用各个接口融入数据计算工具数据包中的数据使功能节点具有编辑、执行、保存python数据计算处理脚本等功能。
步骤S310,获取数据计算工具数据包中的科学计算扩展库。
在一个实施例中,数据计算工具数据包中可包括NumPy、ScriPy和matplotlib等科学计算扩展库的数据,NumPy可用来存储和处理大型矩阵,ScriPy可用于抓取web站点并从页面中提取结构化的数据,matplotlib可用于提供图表生成等。python的科学计算功能相比起其它的科学计算软件或语言来说,具有更加丰富的扩展库,且扩展库均是开源,python可提供各种调用接口用于分析处理数据,语言更为简单易读,容易维护,可轻松完成各种数据处理的高级任务。
步骤S312,在功能节点中建立科学计算扩展库与数据分析处理新工程的关联关系。
在一个实施例中,在功能节点中建立NumPy、ScriPy和matplotlib等科学计算扩展库与数据分析处理新工程的关联关系,在功能节点中通过执行python数据计算处理脚本,调用python提供的对应的接口,即可使用科学计算扩展库中的科学计算功能,分析处理数据。
步骤S314,修改数据分析处理新工程的基础配置,并将功能节点打包。
在一个实施例中,可在plugin.xml等配置文件中修改数据分析处理新工程的基础配置,例如添加功能节点对应的名称及描述等,但不限于此。修改完基础配置后,可将功能节点打包,并存储在kettle的插件文件夹中。
步骤S316,存储数据分析处理新工程。
在一个实施例中,开发完成数据分析处理新工程的功能节点后,可在本地或分布式存储系统的服务器集群中存储数据分析处理新工程。在本地或分布式存储系统的服务器集群中可使用数据分析处理新工程并发处理多项数据,提高数据处理效率。
在本实施例中,通过在数据分析处理新工程中创建并开发功能节点,使功能节点提供编辑、执行、保存数据计算处理脚本等功能,并能在功能节点中调用科学计算扩展库分析处理复杂的数据,在ETL数据分析工具中融入科学计算功能,使ETL数据分析工具可以用更简单的方式,进行更加复杂的数据处理,并提高数据处理效率。
如图4所示,在一个实施例中,在步骤S250在功能节点中调用数据计算处理脚本,对数据进行分析处理之后,还包括:
步骤S402,接收生成数据图表的操作请求。
在一个实施例中,在数据分析处理新工程的功能节点中,可设置有生成数据图表的按钮,当用户点击该按钮,可接收到生成数据图表的操作请求。
步骤S404,根据操作请求调用科学计算扩展库中的图形处理扩展库中的相关函数对处理后的数据进行分析,并生成对应的数据图表文件。
在一个实施例中,可在python数据计算处理脚本中调用相应的接口,使用科学计算扩展库中的matplotlib等图形处理扩展库中的相关函数,对处理后的数据进行分析,并生成对应的图形、表格等,以可视化的形式进行展示,使用户能更直接地观看数据的分析结果。生成的数据图表文件可保存在本地或分布式存储系统的服务器集群中,存储在分布式存储系统的服务器集群中可减轻服务器的压力。
在本实施例中,可调用科学计算扩展库中的图形处理扩展库中的相关函数对处理后的数据进行分析,使处理后的数据以图形、表格等形式展示,更直观地反映数据分析处理结果。
在一个实施例中,上述数据分析处理的方法,还包括:获取距离最近的Hadoop集群,并将处理后的数据存储在所述距离最近的Hadoop集群中。
在一个实施例中,Hadoop(Hadoop Distributed File System,HDFS)是一个分布式文件存储系统,具有高容错性的特点,提供高吞吐量来访问应用程序的数据,适合那些有着超大数据集的应用程序。可获取距离当前分析处理数据的计算机设备最近的Hadoop集群服务器,并将处理后的数据及生成的图表文件等存储在距离最近的Hadoop集群服务器中,可减少网络传输消耗,节约网络资源。
在本实施例中,可将数据存储在距离最近的Hadoop集群中,减少了网络传输消耗,节约网络资源。
如图5所示,在一个实施例中,提供一种数据分析处理的装置,包括进入模块510、访问模块520、读取模块530、生成脚本模块540及调用模块550。
进入模块510,用于进入预先建立的数据分析处理新工程。
在一个实施例中,数据分析处理新工程指的是在ETL工具中融入科学计算功能所建立的新工程。ETL工具负责将分布的、异构数据源中的数据如关系数据、平面数据文件等抽取到临时中间层后进行清洗、转换、集成,最后加载到数据仓库或数据集市中,成为联机分析处理、数据挖掘的基础。常见的ETL工具可包括Datastage、kettle、OWB等,其中,Datastage是一种数据集成软件平台,具有满足最苛刻的数据集成需求所需的功能性、灵活性和可伸缩性;kettle是由纯java编写的一款开源的ETL工具,可以在Windows、Linux、Unix上运行,主要用于数据的抽取,具有高效稳定的特点;OWB是 Oracle 的一个综合工具,它提供对 ETL、完全集成的关系和维度建模、数据质量、数据审计,以及数据和元数据的整个生命周期的管理。在本实施例中,可在ETL工具kettle中融入python的科学计算功能,python是一种面向对象、解释型计算机程序设计语言,它具有丰富的扩展库,可以对数据进行科学计算,帮助完成各种高级的数据分析任务。科学计算指的是为解决科学和工程中的数学问题利用计算机进行的数值计算,主要包括建立数学模型、建立求解的计算方法和计算机实现三个阶段,常用的科学计算语言、软件包括FORTRANALGOL、MATLAB等,可以理解地,也可以使用其它具有科学计算功能的语言与ETL工具结合,不限于此。
访问模块520,用于在数据分析处理新工程中访问功能节点。
在一个实施例中,在kettle中融入python的科学计算功能,并开发生成功能节点,该功能节点可提供多种科学计算功能,例如执行python代码、调用python的科学计算扩展库进行数据分析运算等,python的科学计算扩展库可包括NumPy、ScriPy和matplotlib等,分别提供快速数组处理、数值运算以及绘图功能。在数据分析处理新工程中访问功能节点,可使用功能节点中的多种科学计算功能。
读取模块530,用于读取目标文件并导入数据。
在一个实施例中,目标文件可存储在本地或是分布式存储系统的服务器集群上。访问功能节点后,可从本地或分布式存储系统的服务器集群中选择所需的目标文件,读取该目标文件并导入需要处理的数据。
生成脚本模块540,用于根据需求信息生成数据计算处理脚本。
在一个实施例中,需求信息指的是对数据所需作出的分析处理需求,例如需要调用NumPy扩展库中的矢量处理函数对数据中的数组进行处理,或是需要对导入的数据进行批量处理等。可根据不同的需求信息生成对应的python数据计算处理脚本,并存储生成的数据计算处理脚本,使下次进行数据处理时可直接调用该数据计算处理脚本,无需重新生成。
调用模块550,用于在功能节点中调用所述数据计算处理脚本,对数据进行分析处理。
在一个实施例中,在功能节点中可直接执行根据需求信息生成的python数据计算处理脚本,并根据python数据计算处理脚本对数据进行分析处理,例如数据抽取、数据清洗、数据转换、数值运算等操作,其中,数据清洗指的是对数据进行重新审查和校验的过程,目的在于删除重复信息、纠正存在的错误,并提供数据一致性,数据转换指的是将数据从一种表示形式变为另一种表现形式的过程。也可通过python数据计算处理脚本调用科学计算扩展库中的函数,对数据进行科学计算。在其它的实施例中,在功能节点中可直接读取具有目标后缀的脚本文件,例如执行后缀为.py的脚本文件。
上述数据分析处理的装置,在数据分析处理新工程中访问功能节点,读取目标文件导入数据后,可调用根据需求信息生成的数据计算处理脚本对数据进行处理,能够执行数据计算处理脚本,对复杂的数据进行分析处理,且所有的数据处理过程均在功能节点中完成,数据不需要在多个节点之间流转,数据处理过程简单,提高了数据处理效率。
如图6所示,在另一个实施例中,上述数据分析处理的装置,除了包括进入模块510、访问模块520、读取模块530、生成脚本模块540及调用模块550,还包括建立模块560。
建立模块560,用于建立数据分析处理新工程。
如图7所示,在一个实施例中,建立模块560包括获取单元702、导入单元704、创建单元706、调用单元708、关联单元710、修改单元712及存储单元714。
获取单元702,用于获取数据分析源工程代码。
在一个实施例中,数据分析源工程代码指的是ETL工具的工程源码,例如kettle的工程源码等。获取数据分析源工程代码后,可对数据分析源工程代码进行解压,得到对应的工程文件。
导入单元704,用于创建数据分析处理新工程,并在数据分析处理新工程中导入数据分析源工程代码。
在一个实施例中,可在Eclipse等开发环境中以新工程的形式导入数据分析源工程代码,即在Eclipse等开发环境中创建新工程作为数据分析处理新工程,并将解压得到的ETL工具,例如kettle的工程源码导入数据分析处理新工程。
创建单元706,用于在数据分析处理新工程中创建功能节点。
在一个实施例中,可在数据分析处理新工程中创建功能节点,并根据kettle工具提供的多个接口开发该功能节点,例如利用TemplateStepDialog对话框类实现功能节点的功能界面等。在数据分析处理新工程中创建功能节点相当于在kettle工具原有的流程处理节点中重新定制的一个流程处理节点,功能节点也可看作kettle工具新开发的一个插件,该重新定制开发的功能节点主要用于处理需要进行科学计算或是复杂分析的数据。
调用单元708,用于调用数据计算工具数据包,并根据预设的节点开发模板将数据计算工具数据包中的数据融入数据分析处理新工程。
在一个实施例中,数据计算工具数据包可包括python代码及python自带的丰富的扩展库数据包,例如NumPy、ScriPy和matplotlib等科学计算扩展库的数据包。可在kettle工具的源码的插件式节点开发的基础上,根据kettle中原有的节点开发模板将数据计算工作数据包融入到数据分析处理新工程中,利用kettle工具中的四大类实现功能节点编辑、执行、保存python数据计算处理脚本的功能,其中,四大类分别为TemplateStep步骤类、TemplateStepData数据类、TemplateStepMeta元数据类及TemplateStepDialog对话框类。不同的类提供不同的接口,可调用各个接口融入数据计算工具数据包中的数据使功能节点具有编辑、执行、保存python数据计算处理脚本等功能。
获取单元702还用于获取数据计算工具数据包中的科学计算扩展库。
在一个实施例中,数据计算工具数据包中可包括NumPy、ScriPy和matplotlib等科学计算扩展库的数据,NumPy可用来存储和处理大型矩阵,ScriPy可用于抓取web站点并从页面中提取结构化的数据,matplotlib可用于提供图表生成等。python的科学计算功能相比起其它的科学计算软件或语言来说,具有更加丰富的扩展库,且扩展库均是开源,python可提供各种调用接口用于分析处理数据,语言更为简单易读,容易维护,可轻松完成各种数据处理的高级任务。
关联单元710,用于在功能节点中建立科学计算扩展库与数据分析处理新工程的关联关系。
在一个实施例中,在功能节点中建立NumPy、ScriPy和matplotlib等科学计算扩展库与数据分析处理新工程的关联关系,在功能节点中通过执行python数据计算处理脚本,调用python提供的对应的接口,即可使用科学计算扩展库中的科学计算功能,分析处理数据。
修改单元712,用于修改数据分析处理新工程的基础配置,并将功能节点打包。
在一个实施例中,可在plugin.xml等配置文件中修改数据分析处理新工程的基础配置,例如添加功能节点对应的名称及描述等,但不限于此。修改完基础配置后,可将功能节点打包,并存储在kettle的插件文件夹中。
存储单元714,用于存储数据分析处理新工程。
在一个实施例中,开发完成数据分析处理新工程的功能节点后,可在本地或分布式存储系统的服务器集群中存储数据分析处理新工程。在本地或分布式存储系统的服务器集群中可使用数据分析处理新工程并发处理多项数据,提高数据处理效率。
在本实施例中,通过在数据分析处理新工程中创建并开发功能节点,使功能节点提供编辑、执行、保存数据计算处理脚本等功能,并能在功能节点中调用科学计算扩展库分析处理复杂的数据,在ETL数据分析工具中融入科学计算功能,使ETL数据分析工具可以用更简单的方式,进行更加复杂的数据处理,并提高数据处理效率。
如图8所示,在一个实施例中,上述数据分析处理的装置,除了包括进入模块510、访问模块520、读取模块530、生成脚本模块540、调用模块550及建立模块560,还包括接收模块570及生成图表模块580。
接收模块570,用于接收生成数据图表的操作请求。
在一个实施例中,在数据分析处理新工程的功能节点中,可设置有生成数据图表的按钮,当用户点击该按钮,可接收到生成数据图表的操作请求。
生成图表模块580,用于根据操作请求调用科学计算扩展库中的图形处理扩展库的相关函数对处理后的数据进行分析,并生成对应的数据图表文件。
在一个实施例中,可在python数据计算处理脚本中调用相应的接口,使用科学计算扩展库中的matplotlib等图形处理扩展库中的相关函数,对处理后的数据进行分析,并生成对应的图形、表格等,以可视化的形式进行展示,使用户能更直接地观看数据的分析结果。生成的数据图表文件可保存在本地或分布式存储系统的服务器集群中,存储在分布式存储系统的服务器集群中可减轻服务器的压力。
在本实施例中,可调用科学计算扩展库中的图形处理扩展库中的相关函数对处理后的数据进行分析,使处理后的数据以图形、表格等形式展示,更直观地反映数据分析处理结果。
在一个实施例中,上述数据分析处理的装置,还包括存储模块。
存储模块,用于获取距离最近的Hadoop集群,并将处理后的数据存储在距离最近的Hadoop集群中。
在一个实施例中,Hadoop是一个分布式文件存储系统,具有高容错性的特点,提供高吞吐量来访问应用程序的数据,适合那些有着超大数据集的应用程序。可获取距离当前分析处理数据的计算机设备最近的Hadoop集群服务器,并将处理后的数据及生成的图表文件等存储在距离最近的Hadoop集群服务器中,可减少网络传输消耗,节约网络资源。
在本实施例中,可将数据存储在距离最近的Hadoop集群中,减少了网络传输消耗,节约网络资源。
上述数据分析处理的装置中的各个模块可全部或部分通过软件、硬件或其组合来实现。例如,在硬件实现上,上述调用模块550可通过计算机设备的处理器利用功能节点调用数据计算处理脚本,对数据进行分析处理,其中,该处理器可以为中央处理单元(CPU)、微处理器等;存储模块可通过计算机设备的网络接口向距离最近的Hadoop集群服务器发送处理后的数据及生成的图表文件等,将处理后的数据及生成的图表文件等存储在该距离最近的Hadoop集群服务器中,其中,网络接口可以是以太网卡、无线网卡等。上述各模块可以硬件形式内嵌于或独立于计算机设备的处理器中,也可以以软件形式存储于计算机设备的存储器中,以便于处理器调用执行以上各个模块对应的操作。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (20)

  1. 一种数据分析处理的方法,包括:
    进入预先建立的数据分析处理新工程;
    在所述数据分析处理新工程中访问功能节点;
    读取目标文件并导入数据;
    根据需求信息生成数据计算处理脚本;及
    在所述功能节点中调用所述数据计算处理脚本,对所述数据进行分析处理。
  2. 根据权利要求1所述的方法,其特征在于,在所述进入预先建立的数据分析处理新工程之前,所述方法还包括:
    建立数据分析处理新工程;
    所述建立数据分析处理新工程,包括:
    获取数据分析源工程代码;
    创建数据分析处理新工程,并在所述数据分析处理新工程中导入所述数据分析源工程代码;
    在所述数据分析处理新工程中创建功能节点;
    调用数据计算工具数据包,并根据预设的节点开发模板将所述数据计算工具数据包中的数据融入所述数据分析处理新工程;及
    存储所述数据分析处理新工程。
  3. 根据权利要求2所述的方法,其特征在于,在所述存储所述数据分析处理新工程之前,所述方法还包括:
    获取所述数据计算工具数据包中的科学计算扩展库;
    在所述功能节点中建立所述科学计算扩展库与所述数据分析处理新工程的关联关系;及
    修改所述数据分析处理新工程的基础配置,并将所述功能节点打包。
  4. 根据权利要求3所述的方法,其特征在于,在所述功能节点中调用所述数据计算处理脚本,对所述数据进行分析处理之后,所述方法还包括:
    接收生成数据图表的操作请求;及
    根据所述操作请求调用所述科学计算扩展库中的图形处理扩展库的相关函数对处理后的数据进行分析,并生成对应的数据图表文件。
  5. 根据权利要求1所述的方法,其特征在于,所述方法还包括:
    获取距离最近的Hadoop集群,并将处理后的数据存储在所述距离最近的Hadoop集群中。
  6. 一种数据分析处理的装置,包括:
    进入模块,用于进入预先建立的数据分析处理新工程;
    访问模块,用于在所述数据分析处理新工程中访问功能节点;
    读取模块,用于读取目标文件并导入数据;
    生成脚本模块,用于根据需求信息生成数据计算处理脚本;及
    调用模块,用于在所述功能节点中调用所述数据计算处理脚本,对所述数据进行分析处理。
  7. 根据权利要求6所述的装置,其特征在于,所述装置还包括:
    建立模块,用于建立数据分析处理新工程;
    所述建立模块包括:
    获取单元,用于获取数据分析源工程代码;
    导入单元,用于创建数据分析处理新工程,并在所述数据分析处理新工程中导入所述数据分析源工程代码;
    创建单元,用于在所述数据分析处理新工程中创建功能节点;
    调用单元,用于调用数据计算工具数据包,并根据预设的节点开发模板将所述数据计算工具数据包中的数据融入所述数据分析处理新工程;及
    存储单元,用于存储所述数据分析处理新工程。
  8. 根据权利要求7所述的装置,其特征在于,所述获取单元还用于获取所述数据计算工具数据包中的科学计算扩展库;
    所述建立模块还包括:
    关联单元,用于在所述功能节点中建立所述科学计算扩展库与所述数据分析处理新工程的关联关系;及
    修改单元,用于修改所述数据分析处理新工程的基础配置,并将所述功能节点打包。
  9. 根据权利要求8所述的装置,其特征在于,所述装置还包括:
    接收模块,用于接收生成数据图表的操作请求;及
    生成图表模块,用于根据所述操作请求调用所述科学计算扩展库中的图形处理扩展库的相关函数对处理后的数据进行分析,并生成对应的数据图表文件。
  10. 根据权利要求6所述的装置,其特征在于,所述装置还包括:
    存储模块,用于获取距离最近的Hadoop集群,并将处理后的数据存储在所述距离最近的Hadoop集群中。
  11. 一种计算机设备,包括存储器和处理器,所述存储器中储存有计算机可执行指令,所述计算机可执行指令被所述处理器执行时,使得所述处理器执行以下步骤:
    进入预先建立的数据分析处理新工程;
    在所述数据分析处理新工程中访问功能节点;
    读取目标文件并导入数据;
    根据需求信息生成数据计算处理脚本;及
    在所述功能节点中调用所述数据计算处理脚本,对所述数据进行分析处理。
  12. 根据权利要求11所述的计算机设备,其特征在于,所述计算机可执行指令被所述处理器执行时,还使得所述处理器在执行所述进入预先建立的数据分析处理新工程的步骤之前,还执行:
    建立数据分析处理新工程的步骤;
    所述建立数据分析处理新工程,包括:
    获取数据分析源工程代码;
    创建数据分析处理新工程,并在所述数据分析处理新工程中导入所述数据分析源工程代码;
    在所述数据分析处理新工程中创建功能节点;
    调用数据计算工具数据包,并根据预设的节点开发模板将所述数据计算工具数据包中的数据融入所述数据分析处理新工程;及
    存储所述数据分析处理新工程。
  13. 根据权利要求12所述的计算机设备,其特征在于,所述计算机可执行指令被所述处理器执行时,还使得所述处理器在执行所述存储所述数据分析处理新工程的步骤之前,还执行:
    获取所述数据计算工具数据包中的科学计算扩展库;
    在所述功能节点中建立所述科学计算扩展库与所述数据分析处理新工程的关联关系;及
    修改所述数据分析处理新工程的基础配置,并将所述功能节点打包的步骤。
  14. 根据权利要求13所述的计算机设备,其特征在于,所述计算机可执行指令被所述处理器执行时,还使得所述处理器在执行所述功能节点中调用所述数据计算处理脚本,对所述数据进行分析处理的步骤之后,还执行:
    接收生成数据图表的操作请求;及
    根据所述操作请求调用所述科学计算扩展库中的图形处理扩展库的相关函数对处理后的数据进行分析,并生成对应的数据图表文件的步骤。
  15. 根据权利要求11所述的计算机设备,其特征在于,所述计算机可执行指令被所述处理器执行时,还使得所述处理器执行:
    获取距离最近的Hadoop集群,并将处理后的数据存储在所述距离最近的Hadoop集群中的步骤。
  16. 一个或多个存储有计算机可执行指令的非易失性可读存储介质,所述计算机可执行指令被一个或多个处理器执行时,使得所述一个或多个处理器执行以下步骤:
    进入预先建立的数据分析处理新工程;
    在所述数据分析处理新工程中访问功能节点;
    读取目标文件并导入数据;
    根据需求信息生成数据计算处理脚本;及
    在所述功能节点中调用所述数据计算处理脚本,对所述数据进行分析处理。
  17. 根据权利要求16所述的非易失性可读存储介质,其特征在于,所述计算机可执行指令被一个或多个处理器执行时,还使得所述一个或多个处理器在执行所述进入预先建立的数据分析处理新工程的步骤之前,还执行:
    建立数据分析处理新工程的步骤;
    所述建立数据分析处理新工程,包括:
    获取数据分析源工程代码;
    创建数据分析处理新工程,并在所述数据分析处理新工程中导入所述数据分析源工程代码;
    在所述数据分析处理新工程中创建功能节点;
    调用数据计算工具数据包,并根据预设的节点开发模板将所述数据计算工具数据包中的数据融入所述数据分析处理新工程;及
    存储所述数据分析处理新工程。
  18. 根据权利要求17所述的非易失性可读存储介质,其特征在于,所述计算机可执行指令被一个或多个处理器执行时,还使得所述一个或多个处理器在执行所述存储所述数据分析处理新工程的步骤之前,还执行:
    获取所述数据计算工具数据包中的科学计算扩展库;
    在所述功能节点中建立所述科学计算扩展库与所述数据分析处理新工程的关联关系;及
    修改所述数据分析处理新工程的基础配置,并将所述功能节点打包的步骤。
  19. 根据权利要求18所述的非易失性可读存储介质,其特征在于,所述计算机可执行指令被一个或多个处理器执行时,还使得所述一个或多个处理器在执行所述功能节点中调用所述数据计算处理脚本,对所述数据进行分析处理的步骤之后,还执行:
    接收生成数据图表的操作请求;及
    根据所述操作请求调用所述科学计算扩展库中的图形处理扩展库的相关函数对处理后的数据进行分析,并生成对应的数据图表文件的步骤。
  20. 根据权利要求16所述的非易失性可读存储介质,其特征在于,所述计算机可执行指令被一个或多个处理器执行时,还使得所述一个或多个处理器执行:
    获取距离最近的Hadoop集群,并将处理后的数据存储在所述距离最近的Hadoop集群中的步骤。
PCT/CN2017/076293 2016-04-19 2017-03-10 数据分析处理的方法、装置、计算机设备及存储介质 WO2017181786A1 (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
AU2017254506A AU2017254506B2 (en) 2016-04-19 2017-03-10 Method, apparatus, computing device and storage medium for data analyzing and processing
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 (2)

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

Publications (1)

Publication Number Publication Date
WO2017181786A1 true WO2017181786A1 (zh) 2017-10-26

Family

ID=56527124

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/076293 WO2017181786A1 (zh) 2016-04-19 2017-03-10 数据分析处理的方法、装置、计算机设备及存储介质

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)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110716968A (zh) * 2019-09-22 2020-01-21 南京信易达计算技术有限公司 一种大气科学计算容器包系统及方法

Families Citing this family (6)

* 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 阿里巴巴集团控股有限公司 数据可视化展示方法及装置
CN111506543A (zh) * 2020-04-22 2020-08-07 北京奕为汽车科技有限公司 一种m文件生成方法及装置
CN112179346B (zh) * 2020-09-15 2024-02-27 国营芜湖机械厂 一种无人小车的室内导航系统及其使用方法

Citations (4)

* 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平台的电信运营商海量数据处理方法
US20140025625A1 (en) * 2012-01-04 2014-01-23 International Business Machines Corporation Automated data analysis and transformation
CN105824974A (zh) * 2016-04-19 2016-08-03 平安科技(深圳)有限公司 数据分析处理的方法和系统

Family Cites Families (6)

* 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
US9489379B1 (en) * 2012-12-20 2016-11-08 Emc Corporation Predicting data unavailability and data loss events in large database systems

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101908191A (zh) * 2010-08-03 2010-12-08 深圳市她秀时尚电子商务有限公司 应用于电子商务的数据分析方法及系统
US20140025625A1 (en) * 2012-01-04 2014-01-23 International Business Machines Corporation Automated data analysis and transformation
CN103425762A (zh) * 2013-08-05 2013-12-04 南京邮电大学 基于Hadoop平台的电信运营商海量数据处理方法
CN105824974A (zh) * 2016-04-19 2016-08-03 平安科技(深圳)有限公司 数据分析处理的方法和系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110716968A (zh) * 2019-09-22 2020-01-21 南京信易达计算技术有限公司 一种大气科学计算容器包系统及方法

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
CN105824974B (zh) 2019-03-26
CN105824974A (zh) 2016-08-03
EP3279816A4 (en) 2018-11-14
KR102133906B1 (ko) 2020-07-22
JP6397587B2 (ja) 2018-09-26
KR20180133375A (ko) 2018-12-14
SG11201708941TA (en) 2017-11-29

Similar Documents

Publication Publication Date Title
WO2017181786A1 (zh) 数据分析处理的方法、装置、计算机设备及存储介质
Chang et al. Asynchronous distributed ADMM for large-scale optimization—Part I: Algorithm and convergence analysis
WO2017190561A1 (zh) 通过虚拟键盘实现密码输入的方法、终端、服务器、系统和存储介质
WO2018149082A1 (zh) 合同生成方法、装置、服务器和存储介质
CN108027722A (zh) 在编译和部署中动态更新应用
WO2022179009A1 (zh) 设备批量测试方法、装置、计算机设备及介质
CN111324610A (zh) 一种数据同步的方法及装置
CN111078205B (zh) 一种模块化编程方法、装置、存储介质及电子设备
WO2020087981A1 (zh) 风控审核模型生成方法、装置、设备及可读存储介质
WO2018036160A1 (zh) 应用程序界面的显示方法和装置、终端和存储介质
WO2019153555A1 (zh) Er关系生成方法、装置、计算机设备及存储介质
WO2023124543A1 (zh) 用于大数据的数据处理方法和数据处理装置
CN114036183A (zh) 一种数据etl处理方法、装置、设备及介质
US20230259358A1 (en) Documentation enforcement during compilation
WO2018045610A1 (zh) 用于执行分布式计算任务的方法和装置
WO2017157125A1 (zh) 在云计算环境中删除云主机的方法、装置、服务器及存储介质
WO2017041544A1 (zh) Android系统中获取网页内容的方法及装置
CN112286557B (zh) 一种非覆盖式更新代码内容的方法和装置
WO2020215680A1 (zh) 自动生成pojo类的方法、装置及存储介质、计算机设备
WO2016108677A1 (ko) 웹 컨텐츠 출력 장치 및 방법
WO2021179636A1 (zh) Gdb数据动态扩展方法、装置及存储介质
CN111240665A (zh) 一种基于Spring MVC技术优化Vuejs用户界面的方法
JP3251382B2 (ja) データフロー図作成方法
WO2023219194A1 (ko) 워크플로우 생성을 위한 서비스 플랫폼 시스템 및 워크플로우 생성 방법
包航宇 et al. AIOps in Practice: Status Quo and Standardization

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 11201708941T

Country of ref document: SG

ENP Entry into the national phase

Ref document number: 2017254506

Country of ref document: AU

Date of ref document: 20170310

Kind code of ref document: A

Ref document number: 2017561743

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 15578690

Country of ref document: US

ENP Entry into the national phase

Ref document number: 20187015128

Country of ref document: KR

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE