WO2018036332A1 - 一种分布式数据etl处理方法及装置 - Google Patents

一种分布式数据etl处理方法及装置 Download PDF

Info

Publication number
WO2018036332A1
WO2018036332A1 PCT/CN2017/094267 CN2017094267W WO2018036332A1 WO 2018036332 A1 WO2018036332 A1 WO 2018036332A1 CN 2017094267 W CN2017094267 W CN 2017094267W WO 2018036332 A1 WO2018036332 A1 WO 2018036332A1
Authority
WO
WIPO (PCT)
Prior art keywords
etl
data
server
processing
processing task
Prior art date
Application number
PCT/CN2017/094267
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 中兴通讯股份有限公司
Publication of WO2018036332A1 publication Critical patent/WO2018036332A1/zh

Links

Images

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/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Definitions

  • the present disclosure relates to the field of data processing technologies, and in particular, to a distributed data ETL processing method and apparatus.
  • data ETL Extract-Transform-Load processing devices
  • data ETL processing devices are the basic functional components in various data-related applications, which provide data support for upper-layer applications, and the functions and performance of data ETL processing devices are The key elements that determine the success or failure of the upper application.
  • the stand-alone data ETL processing device cannot meet the requirements of high concurrency and massive data acquisition and processing.
  • Some distributed data ETL processing devices of some manufacturers distribute the job fragments to the cluster, which has high requirements for the processing of data ETL processing, slight job scheduling errors, and inaccurate data results;
  • the distributed data ETL processing device is a stacking of the stand-alone data ETL processing device, and the job scheduling flexibility is poor, and the data ETL processing efficiency is low.
  • the embodiment of the invention provides a distributed data ETL data processing method and device, which overcomes the defects of low efficiency of the distributed data ETL processing in the prior art and high requirements for the task of preparing the data ETL processing.
  • the distributed data ETL processing system includes a primary ETL server and a secondary ETL server, and the method includes:
  • the primary ETL server allocates data ETL processing tasks to the primary ETL server or the secondary ETL server in the distributed data ETL processing system;
  • the method further includes: the main ETL server dynamically controls the number of ETL servers in the distributed data ETL processing system.
  • the primary ETL server is a network server
  • the number of the slave ETL servers is one or more; the slave ETL server is a network server;
  • the primary ETL server interacts with the secondary ETL server via a web service web service message.
  • the method further includes:
  • the data ETL processing task allocated to the ETL server is compressed and packaged, and then the compressed and packed data is compressed.
  • the ETL processing task is assigned to the slave ETL server in the distributed data ETL processing system.
  • the method further includes:
  • the main ETL server monitors the data transmission amount of the data ETL processing task allocated to the ETL server, and monitors the data ETL processing task processing amount allocated from the ETL server;
  • the main ETL server queries the execution status of the data ETL processing task assigned to the ETL server, and queries the execution result of the data ETL processing task assigned to the ETL server.
  • the method further includes:
  • the primary ETL server processes the data ETL processing task with the big data computing storage platform before the primary ETL server allocates the data ETL processing task to the primary ETL server in the distributed data ETL processing system or from the ETL server ETL processing tasks are judged;
  • the primary ETL server allocates the data ETL processing task related to the big data computing storage platform to the big data computing storage platform;
  • the big data computing storage platform performs fragmented data ETL processing on the data ETL processing task related to the big data computing storage platform.
  • the primary ETL server processes the data to the primary ETL server or the secondary ETL server in the distributed data ETL processing system according to the reference information allocation data ETL;
  • the data ETL processing is performed according to the priority of the assigned data ETL processing task
  • the reference information includes: a priority of the data ETL processing task, or a priority of the data ETL processing task and a data ETL processing task that the primary ETL server and the ETL server have been assigned.
  • the embodiment of the present invention further provides a distributed data extraction-conversion-loading ETL processing device.
  • the distributed data ETL processing system includes a primary ETL server and a secondary ETL server, and the device is disposed on a primary ETL server, and the device includes :
  • An allocation module configured to allocate a data ETL processing task to a primary ETL server or a secondary ETL server in the distributed data ETL processing system;
  • the main processing module is configured to perform data ETL processing on the allocated data ETL processing task when being allocated to the data ETL processing task.
  • the device further includes:
  • Dynamic Control Module Used to dynamically control the number of ETL servers in a distributed data ETL processing system.
  • the primary ETL server is a network server
  • the number of the slave ETL servers is one or more; the slave ETL server is a network server;
  • the primary ETL server interacts with the secondary ETL server via a web service web service message.
  • the device further includes:
  • a compression module configured to compress and pack the data ETL processing task allocated to the ETL server, obtain a data ETL processing task compression package, and then distribute the compressed and packed data ETL processing task to the distributed data ETL processing system.
  • the ETL server In the ETL server.
  • the device further includes:
  • a monitoring module configured to monitor, after monitoring the data ETL processing task by the distribution module to the ETL server in the distributed data ETL processing system, monitoring the data transmission amount of the data ETL processing task allocated to the ETL server, and monitoring The data ETL processing task processing amount allocated from the ETL server; querying the execution status of the data ETL processing task allocated from the ETL server, and querying the execution result of the data ETL processing task allocated from the ETL server.
  • the device further includes:
  • a big data module configured to process the data ETL processing task with the big data computing storage platform before the data is processed by the distribution module to transfer the task to the primary ETL server in the distributed data ETL processing system or from the ETL server Relevant data ETL processing tasks are judged;
  • the big data computing storage platform performs fragmented data ETL processing on the data ETL processing task related to the big data computing storage platform.
  • an allocation module is configured to allocate a data ETL processing task according to the reference information to a primary ETL server or a secondary ETL server in the distributed data ETL processing system;
  • a main processing module configured to perform data ETL processing according to a priority of the allocated data ETL processing task when being allocated to the data ETL processing task;
  • the reference information includes: a priority of the data ETL processing task, or a priority of the data ETL processing task and a data ETL processing task that the primary ETL server and the ETL server have been assigned.
  • the embodiment of the present invention further provides a distributed data extraction-conversion-loading ETL processing method, where the distributed data ETL processing system includes a primary ETL server and a secondary ETL server, and the method includes:
  • Parallel data ETL processing is performed from the ETL server according to the assigned data ETL processing task.
  • the number of the ETL servers is one or more; the number of the ETL servers is dynamically controlled by the main ETL server;
  • the primary ETL server is a network server;
  • the slave ETL server is a network server;
  • the primary ETL server interacts with the secondary ETL server via a web service web service message.
  • the method further includes:
  • the ETL server After receiving the data ETL processing task allocated by the main ETL server from the ETL server, the ETL server first decompresses the data ETL processing task, and then performs data ETL processing on the decompressed data ETL processing task.
  • the embodiment of the present invention further provides a distributed data extraction-conversion-loading ETL processing device, wherein the distributed data ETL processing system includes a primary ETL server and a secondary ETL server, and the device is disposed on the secondary ETL server, the device ,include:
  • a receiving module configured to receive a data ETL processing task allocated by the main ETL server
  • the processing module is configured to perform parallel data ETL processing according to the allocated data ETL processing task.
  • the number of the ETL servers is one or more; the number of the ETL servers is dynamically controlled by the main ETL server;
  • the primary ETL server is a network server;
  • the slave ETL server is a network server;
  • the primary ETL server interacts with the secondary ETL server via a web service web service message.
  • the device further includes:
  • the decompression module is configured to decompress the data ETL processing task after receiving the data ETL processing task allocated by the main ETL server, and then perform parallel data ETL processing on the decompressed data ETL processing task.
  • the embodiment of the present invention has at least the following advantages:
  • the distributed data ETL processing method and apparatus provided by the embodiments of the present invention effectively improve the processing efficiency of distributed data ETL in a high concurrent and big data collection and processing scenario, and effectively enhance the number of ETL servers by dynamically controlling The rapid expansion capability of the data ETL processing system improves the fast processing capability of distributed data ETL.
  • FIG. 1 is a flowchart of a distributed data ETL processing method according to a first embodiment of the present invention
  • FIG. 2 is a flowchart of a distributed data ETL processing method according to a third embodiment of the present invention.
  • FIG. 3 is a flowchart of a distributed data ETL processing method according to a fourth embodiment of the present invention.
  • FIG. 4 is a flowchart of a distributed data ETL processing method according to a fifth embodiment of the present invention.
  • FIG. 5 is a schematic structural diagram of a distributed data ETL processing apparatus according to a sixth embodiment of the present invention.
  • FIG. 6 is a schematic structural diagram of a distributed data ETL processing apparatus according to a seventh embodiment of the present invention.
  • FIG. 7 is a schematic structural diagram of a distributed data ETL processing apparatus according to an eighth embodiment of the present invention.
  • FIG. 8 is a schematic structural diagram of a distributed data ETL processing apparatus according to a ninth embodiment of the present invention.
  • FIG. 9 is a schematic structural diagram of a distributed data ETL processing apparatus according to a tenth embodiment of the present invention.
  • FIG. 10 is a flowchart of a distributed data ETL processing method according to an eleventh embodiment of the present invention.
  • FIG. 11 is a flowchart of a distributed data ETL processing method according to a twelfth embodiment of the present invention.
  • FIG. 12 is a schematic structural diagram of a distributed data ETL processing apparatus according to a thirteenth embodiment of the present invention.
  • FIG. 13 is a schematic structural diagram of a distributed data ETL processing apparatus according to a fourteenth embodiment of the present invention.
  • a first embodiment of the present invention is a distributed data ETL processing method.
  • the distributed data ETL processing system includes a primary ETL server and a secondary ETL server. As shown in FIG. 1, the method includes the following specific steps:
  • Step S102 the primary ETL server allocates the data ETL processing task to the primary ETL server or the secondary ETL server in the distributed data ETL processing system.
  • step S102 includes:
  • the primary ETL server allocates data ETL processing tasks to the primary ETL server or the secondary ETL server in the distributed data ETL processing system according to the reference information.
  • the reference information includes: a priority of the data ETL processing task, or a priority of the data ETL processing task and a data ETL processing task that the primary ETL server and the ETL server have been allocated.
  • the main ETL server allocates the data ETL processing task to the main ETL server or the ETL server in the distributed data ETL processing system, which can effectively solve the data ETL processing problem in the high concurrent scenario.
  • the data ETL processing task assigned by the primary ETL server satisfies the requirements of high concurrency.
  • the main ETL server determines the sequence of assigning data ETL processing tasks according to the current main ETL server and the status of the ETL server, and sets a data ETL processing task queue for each active main ETL server or from the ETL server, and prioritizes the processing tasks according to the data ETL.
  • the orderly control data ETL handles the assignment of tasks, ensuring load balancing and load between the primary ETL server and the secondary ETL server.
  • the number of primary ETL servers is one or two; in the case where the number of primary ETL servers is two, one of the primary ETL servers is a redundant backup when another primary ETL server fails.
  • the main ETL server is a web (network) server.
  • the number of ETL servers is one or more; from the ETL server to the Web (network) server.
  • Each software version installed from the ETL server is the same as the software installed on the main ETL server.
  • the software is installed with a replication installation and uses a common configuration database.
  • the Web server can provide Web (network) service functions externally.
  • the primary ETL server interacts with the ETL server via a Web Service message.
  • Both the primary ETL server and the secondary ETL server are in a non-session state.
  • the coupling between the main ETL server and the ETL server can be effectively reduced, and the processing success rate of the data ETL processing task is greatly guaranteed.
  • Step S103 when the main ETL server is assigned to the data ETL processing task, the data ETL processing is performed on the allocated data ETL processing task.
  • step S103 includes:
  • the data ETL processing is performed on the assigned data ETL processing task according to the priority of the data ETL processing task.
  • the second embodiment of the present invention is a data ETL processing method.
  • the method in this embodiment is substantially the same as the first embodiment. The difference is that the method in this embodiment includes before or after step S103. The following specific steps:
  • the primary ETL server dynamically controls the number of ETL servers in the distributed data ETL processing system.
  • the main ETL server will be added to the data ETL processing system from the ETL server, and the main ETL server dynamically controls the number of ETL servers in the distributed data ETL processing system according to the data ETL processing task amount.
  • the third embodiment of the present invention is a data ETL processing method.
  • the method in this embodiment is substantially the same as the first embodiment. The difference is that, as shown in FIG. 2, the method in this embodiment is further before step S102. Including the following specific steps:
  • step S101-a the main ETL server compresses and packs the data ETL processing task assigned to the ETL server.
  • step S101-a includes:
  • the main ETL server compresses and packs the data ETL processing tasks assigned to the ETL server, and then distributes the compressed and packed data ETL processing tasks to the slave ETL servers in the distributed data ETL processing system.
  • the compression package includes: a main ETL server parsing data ETL processing task;
  • the main ETL server will be assigned to the data ETL processing task file from the ETL server, the data ETL processing task data file, the conversion file associated with the data ETL processing task, and the file path referenced in the data ETL processing task, and the file path will be changed. Change to the data ETL processing task path.
  • a fourth embodiment of the present invention is a data ETL processing method.
  • the method in this embodiment is substantially the same as the first embodiment. The difference is that, as shown in FIG. 3, the method in this embodiment is further after step S103. Including the following specific steps:
  • step S104 the main ETL server monitors related information of the data ETL processing task allocated from the ETL server.
  • step S104 includes:
  • the main ETL server monitors the data transfer amount to the data ETL processing task allocated from the ETL server, and monitors the data ETL processing task processing amount allocated from the ETL server;
  • the main ETL server queries the execution status of the data ETL processing task assigned to the ETL server, and queries the execution result of the data ETL processing task assigned to the ETL server.
  • a fifth embodiment of the present invention is a data ETL processing method.
  • the method in this embodiment is substantially the same as the first embodiment. The difference is that, as shown in FIG. 4, the method in this embodiment is further before step S102. Including the following specific steps:
  • Step S101-b the main ETL server determines whether the data ETL processing task is a data ETL processing task related to the big data computing storage platform.
  • the main ETL server allocates the data ETL processing task related to the big data computing storage platform to the big data computing storage platform; the big data computing storage platform performs the fragmented data ETL on the data ETL processing task related to the big data computing storage platform. deal with;
  • step S102 is performed.
  • the present embodiment describes a distributed data ETL processing apparatus.
  • the distributed data ETL processing system includes a main ETL server and a secondary ETL server, and the device is disposed on the main ETL server.
  • the device includes the following components:
  • an allocation module 200 for distributing data ETL processing tasks to a distributed data ETL processing system The primary ETL server or from the ETL server.
  • the distribution module 200 is configured to:
  • the task ETL processing task is based on the reference information to the primary ETL server or the secondary ETL server in the distributed data ETL processing system.
  • the reference information includes: a priority of the data ETL processing task, or a priority of the data ETL processing task and a data ETL processing task that the primary ETL server and the ETL server have been allocated.
  • the data ETL processing task assigned by the allocation module 200 satisfies the requirements of high concurrency.
  • the distribution module 200 determines a sequence of allocation data ETL processing tasks according to the current primary ETL server and the status of the ETL server, and sets a data ETL processing task queue for each active primary ETL server or from the ETL server, and prioritizes the processing tasks according to the data ETL.
  • the orderly control data ETL handles the assignment of tasks, ensuring load balancing and load between the primary ETL server and the secondary ETL server.
  • the number of primary ETL servers is one or two; in the case where the number of primary ETL servers is two, one of the primary ETL servers is a redundant backup when another primary ETL server fails.
  • the main ETL server is a web (network) server.
  • the number of ETL servers is one or more; from the ETL server to the Web (network) server.
  • Each software version installed from the ETL server is the same as the software installed on the main ETL server.
  • the software is installed with a replication installation and uses a common configuration database.
  • the Web server can provide Web (network) service functions externally.
  • the primary ETL server interacts with the ETL server via a Web Service message.
  • Both the primary ETL server and the secondary ETL server are in a non-session state.
  • the coupling between the main ETL server and the ETL server can be effectively reduced, and the processing success rate of the data ETL processing task is greatly guaranteed.
  • the main processing module 300 is configured to perform data ETL processing on the allocated data ETL processing task when being allocated to the data ETL processing task.
  • the main processing module 300 is configured to:
  • the assigned data ETL processing task is based on the data ETL
  • the priority of the task is processed by the data ETL.
  • a seventh embodiment of the present invention is a distributed data ETL processing device.
  • the method in this embodiment is substantially the same as the sixth embodiment.
  • the difference is that the device further includes a dynamic control module 100.
  • the device of the example further includes the following components:
  • the dynamic control module 100 is configured to dynamically control the number of ETL servers in the distributed data ETL processing system.
  • the dynamic control module 100 is configured to:
  • the data from the ETL server is added to the data ETL processing system, and the number of ETL servers in the distributed data ETL processing system is dynamically controlled according to the data ETL processing task amount;
  • the eighth embodiment of the present invention is a distributed data ETL processing device.
  • the method in this embodiment is substantially the same as the sixth embodiment.
  • the difference is that the device further includes a compression module 101.
  • the device also includes the following components:
  • the compression module 101 is configured to compress and package the data ETL processing task allocated to the ETL server to obtain a data ETL processing task compression package.
  • the compression package includes: parsing the data ETL processing task;
  • the referenced data ETL processing task file, the data ETL processing task data file, the data ETL processing task associated conversion file are compressed and packaged, and the file path referenced in the data ETL processing task is changed, and the file path is all changed to the data ETL processing task path. .
  • the ninth embodiment of the present invention is a distributed data ETL processing device.
  • the method in this embodiment is substantially the same as the sixth embodiment.
  • the difference is that the device further includes a monitoring module 400.
  • the device also includes the following components:
  • the monitoring module 400 is configured to monitor related information of the data ETL processing task allocated from the ETL server.
  • the monitoring module 400 is configured to:
  • the primary ETL server monitors the amount of data transferred to the data ETL processing task assigned from the ETL server, and Monitor the amount of data ETL processing task processing allocated from the ETL server;
  • the main ETL server queries the execution status of the data ETL processing task assigned to the ETL server, and queries the execution result of the data ETL processing task assigned to the ETL server.
  • a tenth embodiment of the present invention is a distributed data ETL processing device.
  • the method in this embodiment is substantially the same as the sixth embodiment.
  • the difference is that the device further includes a big data module 102.
  • the device of the example further includes the following components:
  • the big data module 102 is configured to determine whether the data ETL processing task is a data ETL processing task related to the big data computing storage platform.
  • the main ETL server allocates the data ETL processing task related to the big data computing storage platform to the big data computing storage platform; the big data computing storage platform performs the fragmented data ETL on the data ETL processing task related to the big data computing storage platform. deal with;
  • the data ETL processing task is sent to the distribution module 200.
  • An eleventh embodiment of the present invention is a distributed data ETL processing method.
  • the distributed data ETL processing system includes a main ETL server and a secondary ETL server. As shown in FIG. 10, the method includes the following specific steps:
  • Step S1101 Receive a data ETL processing task allocated by the main ETL server from the ETL server.
  • Receiving the data ETL processing task allocated by the main ETL server from the ETL server can effectively solve the data ETL processing problem in the high concurrent scenario.
  • the ETL processing task assigned by the main ETL server satisfies the high concurrency Requirements.
  • the number of ETL servers is one or more; from the ETL server to the Web (network) server.
  • Each software version installed from the ETL server is the same as the software installed on the main ETL server.
  • the software is installed with a replication installation and uses a common configuration database.
  • the Web server can provide Web (network) service functions externally.
  • the primary ETL server interacts with the ETL server via a Web Service message.
  • Both the primary ETL server and the secondary ETL server are in a non-session state.
  • the coupling between the main ETL server and the ETL server can be effectively reduced, and the processing success rate of the data ETL processing task is greatly guaranteed.
  • Step S1103 parallel data ETL processing is performed from the ETL server according to the assigned data ETL processing task.
  • step S1103 includes:
  • the assigned data ETL processing task performs parallel data ETL processing according to the priority of the data ETL processing task.
  • a twelfth embodiment of the present invention is a data ETL processing method.
  • the method in this embodiment is substantially the same as the first embodiment. The difference is that, as shown in FIG. 11, the method in this embodiment is preceded by step S1103. It also includes the following specific steps:
  • Step S1102 Decompress the allocated data ETL processing task from the ETL server.
  • step S1102 includes:
  • the ETL server decompresses the allocated data ETL processing task, assigns a unique task identifier to the data ETL processing task from the ETL server, and stores the task information and the task identifier into the ETL server memory.
  • the embodiment introduces a distributed data ETL processing device, which includes a main ETL server and a slave ETL server, and the device is disposed in the slave
  • the ETL server includes the following components:
  • the receiving module 1000 is configured to receive a data ETL processing task allocated by the main ETL server.
  • the receiving module 1000 receives the data ETL processing task allocated by the main ETL server, which can effectively solve the data ETL processing problem in the high concurrent scenario.
  • the ETL processing task is satisfied by the main ETL server. Concurrent requirements.
  • the number of ETL servers is one or more; from the ETL server to the Web (network) server.
  • Each software version installed from the ETL server is the same as the software installed on the main ETL server.
  • the software is installed with a replication installation and uses a common configuration database.
  • the Web server can provide Web (network) service functions externally.
  • the primary ETL server interacts with the ETL server via a Web Service message.
  • Both the primary ETL server and the secondary ETL server are in a non-session state.
  • the message interaction can effectively reduce the coupling between the main ETL server and the ETL server, and greatly guarantee the processing success rate of the data ETL processing task.
  • the processing module 3000 is configured to perform parallel data ETL processing according to the allocated data ETL processing task.
  • processing module 3000 specifically for:
  • the slave processing module 3000 is configured to perform parallel data ETL processing on the assigned data ETL processing task according to the priority of the data ETL processing task.
  • the fourteenth embodiment of the present invention is a distributed data ETL processing device.
  • the method in this embodiment is substantially the same as the sixth embodiment.
  • the difference is that the device further includes a decompression module 2000, as shown in FIG.
  • the apparatus of the embodiment further includes the following components:
  • the decompression module 2000 is configured to receive the data ETL processing task received by the module 1000 for decompression.
  • the decompression module 2000 is configured to:
  • Decompressing the allocated data ETL processing task assigning a unique task identifier to the data ETL processing task, and storing the task information and the task identifier into the memory of the ETL server;
  • the decompressed data ETL processing task is sent to the slave processing module 3000.
  • modules or steps of the above embodiments of the present invention can be implemented by a general computing device, which can be concentrated on a single computing device or distributed among multiple computing devices.
  • they may be implemented by program code executable by the computing device, such that they may be stored in a storage medium (ROM/RAM, disk, optical disk) by a computing device, and in some
  • the steps shown or described may be performed in an order different from that herein, or they may be separately fabricated into individual integrated circuit modules, or a plurality of the modules or steps may be implemented as a single integrated circuit module. Therefore, embodiments of the invention are not limited to any particular combination of hardware and software.
  • the technical solution provided by the embodiment of the present invention can be applied to the technical field of data processing.
  • Adopting the embodiment of the invention The distributed data ETL processing method and device provided effectively improve the processing efficiency of the distributed data ETL in the high concurrent and big data acquisition processing scenarios, and effectively enhance the data ETL processing system by dynamically controlling the number of ETL servers.
  • the rapid expansion capability has improved the fast processing capability of distributed data ETL.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Multi Processors (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种分布式ETL处理方法及装置,该方法包括:主ETL服务器分配数据ETL处理任务至分布式ETL处理系统中的主ETL服务器或从ETL服务器;当主ETL服务器分配到数据ETL处理任务时,对分配到的数据ETL处理任务进行数据处理。从ETL服务器接受主ETL服务器分配的数据ETL处理任务;从ETL服务器根据分配到的数据ETL处理任务进行并行数据ETL处理。该方法在高并发和大数据采集加工时,能有效提高分布式数据ETL处理效率,通过动态控制ETL服务器的数量,能有效增强数据ETL处理系统的快速扩展能力,提高分布式数据ETL快速处理能力。

Description

一种分布式数据ETL处理方法及装置 技术领域
本公开涉及数据处理技术领域,尤其涉及一种分布式数据ETL处理方法及装置。
背景技术
当前,数据ETL(Extract-Transform-Load,抽取-转换-装载)处理装置是各种与数据有关的应用中的基础功能组件,它为上层应用提供数据支撑,数据ETL处理装置的功能和性能是决定上层应用成败的关键要素。
随着数据越来越集中,数据量越来越大,单机版的数据ETL处理装置无法满足高并发和海量数据的采集加工需求。现有一些厂家的分布式数据ETL处理装置,是将作业分片分发到集群上处理,对编制数据ETL处理的任务要求高,稍有作业编排错误,数据结果便不准确;还有一些厂家的分布式数据ETL处理装置,是单机版数据ETL处理装置的堆砌,作业调度灵活性差,数据ETL处理效率低下。
发明内容
本发明实施例提供一种分布式数据ETL数据处理方法及装置,克服现有技术中分布式数据ETL处理效率低下和对编制数据ETL处理的任务要求高的缺陷。
本发明实施例的技术方案如下。
提供了一种分布式ETL处理方法,分布式数据ETL处理系统中包括主ETL服务器和从ETL服务器,所述方法,包括:
主ETL服务器分配数据ETL处理任务至所述分布式数据ETL处理系统中的主ETL服务器或从ETL服务器;
当主ETL服务器分配到数据ETL处理任务时,对分配到的数据ETL处理任务进行数据ETL处理。
进一步地,所述方法,还包括:主ETL服务器对分布式数据ETL处理系统中的从ETL服务器的数量进行动态控制。
进一步地,所述主ETL服务器为网络服务器;
所述从ETL服务器的数量为一个或多个;所述从ETL服务器为网络服务器;
所述主ETL服务器与所述从ETL服务器通过网络服务Web Service消息进行交互。
进一步地,所述方法,还包括:
在主ETL服务器分配数据ETL处理任务至所述分布式数据ETL处理系统中的从ETL服务器之前,先对分配至所述从ETL服务器的数据ETL处理任务进行压缩打包,再将经过压缩打包的数据ETL处理任务分配至所述分布式数据ETL处理系统中的从ETL服务器。
进一步地,所述方法,还包括:
在主ETL服务器分配数据ETL处理任务至所述分布式数据ETL处理系统中的从ETL服务器之后,
主ETL服务器监控向所述从ETL服务器分配的数据ETL处理任务的数据传输量,并监控所述从ETL服务器分配到的数据ETL处理任务处理量;
主ETL服务器查询向所述从ETL服务器分配的数据ETL处理任务的执行状态,查询向所述从ETL服务器分配的数据ETL处理任务的执行结果。
进一步地,所述方法,还包括:
在主ETL服务器分配数据ETL处理任务至所述分布式数据ETL处理系统中的主ETL服务器或从ETL服务器之前,主ETL服务器对所述数据ETL处理任务是否是与大数据计算存储平台相关的数据ETL处理任务进行判断;
若是,则主ETL服务器将大数据计算存储平台相关的数据ETL处理任务分配至大数据计算存储平台;
由所述大数据计算存储平台对与大数据计算存储平台相关的数据ETL处理任务进行分片数据ETL处理。
进一步地,主ETL服务器根据参考信息分配数据ETL处理任务至所述分布式数据ETL处理系统中的主ETL服务器或从ETL服务器;
当主ETL服务器分配到数据ETL处理任务时,根据分配到的数据ETL处理任务的优先级进行数据ETL处理;
所述参考信息,包括:数据ETL处理任务的优先级,或者,数据ETL处理任务的优先级以及主ETL服务器和从ETL服务器已分配到的数据ETL处理任务。
本发明实施例还提供一种分布式数据抽取-转换-装载ETL处理装置,分布式数据ETL处理系统中包括主ETL服务器和从ETL服务器,所述装置设置于主ETL服务器,所述装置,包括:
分配模块,用于分配数据ETL处理任务至所述分布式数据ETL处理系统中的主ETL服务器或从ETL服务器;
主处理模块,用于分配到数据ETL处理任务时,对分配到的数据ETL处理任务进行数据ETL处理。
进一步地,所述装置,还包括:
动态控制模块:用于对分布式数据ETL处理系统中的从ETL服务器的数量进行动态控制。
进一步地,所述主ETL服务器为网络服务器;
所述从ETL服务器的数量为一个或多个;所述从ETL服务器为网络服务器;
所述主ETL服务器与所述从ETL服务器通过网络服务Web Service消息进行交互。
进一步地,所述装置,还包括:
压缩模块,用于对分配至所述从ETL服务器的数据ETL处理任务进行压缩打包,得到数据ETL处理任务压缩包,再将经过压缩打包的数据ETL处理任务分配至所述分布式数据ETL处理系统中的从ETL服务器。
进一步地,所述装置,还包括:
监控模块,用于在通过分配模块分配数据ETL处理任务至所述分布式数据ETL处理系统中的从ETL服务器之后,监控向所述从ETL服务器分配的数据ETL处理任务的数据传输量,并监控所述从ETL服务器分配到的数据ETL处理任务处理量;查询所述从ETL服务器分配的数据ETL处理任务的执行状态,查询所述从ETL服务器分配的数据ETL处理任务的执行结果。
进一步地,所述装置,还包括:
大数据模块,用于在通过分配模块分配数据ETL处理任务至所述分布式数据ETL处理系统中的主ETL服务器或从ETL服务器之前,对所述数据ETL处理任务是否是与大数据计算存储平台相关的数据ETL处理任务进行判断;
若是,则将大数据计算存储平台相关的数据ETL处理任务分配至大数据计算存 储平台;
由所述大数据计算存储平台对与大数据计算存储平台相关的数据ETL处理任务进行分片数据ETL处理。
进一步地,分配模块,用于根据参考信息分配数据ETL处理任务至所述分布式数据ETL处理系统中的主ETL服务器或从ETL服务器;
主处理模块,用于当分配到数据ETL处理任务时,根据分配到的数据ETL处理任务的优先级进行数据ETL处理;
所述参考信息,包括:数据ETL处理任务的优先级,或者,数据ETL处理任务的优先级以及主ETL服务器和从ETL服务器已分配到的数据ETL处理任务。
本发明实施例还提供一种分布式数据抽取-转换-装载ETL处理方法,分布式数据ETL处理系统中包括主ETL服务器和从ETL服务器,所述方法,包括:
从ETL服务器接收主ETL服务器分配的数据ETL处理任务;
从ETL服务器根据分配到的数据ETL处理任务的进行并行数据ETL处理。
进一步地,所述从ETL服务器的数量为一个或多个;所述从ETL服务器的数量由主ETL服务器动态控制;
所述主ETL服务器为网络服务器;所述从ETL服务器为网络服务器;
所述主ETL服务器与所述从ETL服务器通过网络服务Web Service消息进行交互。
进一步地,所述方法,还包括:
所述从ETL服务器接收主ETL服务器分配的数据ETL处理任务之后,从ETL服务器先对所述数据ETL处理任务进行解压缩,再对解压缩后的数据ETL处理任务进行数据ETL处理。
本发明实施例还提供一种分布式数据抽取-转换-装载ETL处理装置,其中,分布式数据ETL处理系统中包括主ETL服务器和从ETL服务器,所述装置设置于从ETL服务器,所述装置,包括:
接收模块,用于接收主ETL服务器分配的数据ETL处理任务;
从处理模块,用于根据分配到的数据ETL处理任务进行并行数据ETL处理。
进一步地,所述从ETL服务器的数量为一个或多个;所述从ETL服务器的数量由主ETL服务器动态控制;
所述主ETL服务器为网络服务器;所述从ETL服务器为网络服务器;
所述主ETL服务器与所述从ETL服务器通过网络服务Web Service消息进行交互。
进一步地,所述装置,还包括:
解压缩模块,用于通过接收模块接收到主ETL服务器分配的数据ETL处理任务之后,先对所述数据ETL处理任务进行解压缩,再对解压缩后的数据ETL处理任务进行并行数据ETL处理。
采用上述技术方案,本发明实施例至少具有下列优点:
采用本发明实施例所提供的所述分布式数据ETL处理方法及装置,在高并发和大数据采集加工场景下,有效提高了分布式数据ETL处理效率,通过动态控制ETL服务器的数量,有效增强了数据ETL处理系统的快速扩展能力,提高了分布式数据ETL快速处理能力。
附图说明
图1为本发明第一实施例的分布式数据ETL处理方法流程图;
图2为本发明第三实施例的分布式数据ETL处理方法流程图;
图3为本发明第四实施例的分布式数据ETL处理方法流程图;
图4为本发明第五实施例的分布式数据ETL处理方法流程图;
图5为本发明第六实施例的分布式数据ETL处理装置组成结构示意图;
图6为本发明第七实施例的分布式数据ETL处理装置组成结构示意图;
图7为本发明第八实施例的分布式数据ETL处理装置组成结构示意图;
图8为本发明第九实施例的分布式数据ETL处理装置组成结构示意图;
图9为本发明第十实施例的分布式数据ETL处理装置组成结构示意图;
图10为本发明第十一实施例的分布式数据ETL处理方法流程图;
图11为本发明第十二实施例的分布式数据ETL处理方法流程图;
图12为本发明第十三实施例的分布式数据ETL处理装置组成结构示意图;
图13为本发明第十四实施例的分布式数据ETL处理装置组成结构示意图。
具体实施方式
为更进一步阐述本发明为达成预定目的所采取的技术手段及功效,以下结合附图及较佳实施例,对本发明进行详细说明如后。
本发明第一实施例,一种分布式数据ETL处理方法,分布式数据ETL处理系统中包括主ETL服务器和从ETL服务器,如图1所示,所述方法包括以下具体步骤:
步骤S102,主ETL服务器分配数据ETL处理任务至分布式数据ETL处理系统中的主ETL服务器或从ETL服务器。
具体的,步骤S102,包括:
主ETL服务器根据参考信息分配数据ETL处理任务至分布式数据ETL处理系统中的主ETL服务器或从ETL服务器。
其中,参考信息,包括:数据ETL处理任务的优先级,或者,数据ETL处理任务的优先级以及主ETL服务器和从ETL服务器已分配到的数据ETL处理任务。
通过主ETL服务器分配数据ETL处理任务至分布式数据ETL处理系统中的主ETL服务器或从ETL服务器,能够有效解决高并发场景下的数据ETL处理问题,当需要处理的数据ETL处理任务数量很多,由主ETL服务器分配数据ETL处理任务满足高并发的要求。
主ETL服务器根据当前主ETL服务器和从ETL服务器的状态决定分配数据ETL处理任务的序列,为每个活动的主ETL服务器或从ETL服务器设置一个数据ETL处理任务队列,根据数据ETL处理任务的优先级有序控制数据ETL处理任务的分配,保证主ETL服务器和从ETL服务器之间的负载均衡和负荷。
主ETL服务器的数量为一个或两个;主ETL服务器的数量为两个的情况下,其中一个主ETL服务器是另一个主ETL服务器故障时的冗余备份。
主ETL服务器为Web(网络)服务器。
从ETL服务器的数量为一个或多个;从ETL服务器为Web(网络)服务器。
每个从ETL服务器与主ETL服务器安装的软件版本一致,软件安装时采用复制式安装,使用共同的配置数据库。
Web(网络)服务器能够对外提供Web(网络)服务功能。
主ETL服务器与从ETL服务器通过Web Service(网络服务)消息进行交互。
主ETL服务器与从ETL服务器均是无会话状态。通过Web Service(网络服务)消息进行交互,能够有效降低主ETL服务器与从ETL服务器之间的耦合性,极大地保证了数据ETL处理任务的处理成功率。
步骤S103,当主ETL服务器分配到数据ETL处理任务时,对分配到的数据ETL处理任务进行数据ETL处理。
具体的,步骤S103,包括:
当主ETL服务器分配到数据ETL处理任务时,对分配到的数据ETL处理任务根据数据ETL处理任务的优先级进行数据ETL处理。
本发明第二实施例,一种数据ETL处理方法,本实施例所述方法与第一实施例大致相同,区别在于:本实施例的所述方法,在步骤S102之前或者在步骤S103之后还包括以下具体步骤:
主ETL服务器对分布式数据ETL处理系统中的从ETL服务器的数量进行动态控制。
具体的,当从ETL服务器启动后,向主ETL服务器发起注册消息时;
主ETL服务器将从ETL服务器加入数据ETL处理系统中,主ETL服务器根据数据ETL处理任务量对分布式数据ETL处理系统中的从ETL服务器的数量进行动态控制。
本发明第三实施例,一种数据ETL处理方法,本实施例所述方法与第一实施例大致相同,区别在于:如图2所示,本实施例的所述方法,在步骤S102之前还包括以下具体步骤:
步骤S101-a,主ETL服务器对分配至从ETL服务器的数据ETL处理任务进行压缩打包。
具体的,步骤S101-a,包括:
主ETL服务器对分配至从ETL服务器的数据ETL处理任务进行压缩打包,再将经过压缩打包的数据ETL处理任务分配至分布式数据ETL处理系统中的从ETL服务器。
其中,压缩打包,包括:主ETL服务器解析数据ETL处理任务;
主ETL服务器将分配至从ETL服务器的数据ETL处理任务文件、数据ETL处理任务数据文件,数据ETL处理任务关联的转换文件压缩打包,同时更改数据ETL处理任务中引用的文件路径,将文件路径全部更改为数据ETL处理任务路径。
本发明第四实施例,一种数据ETL处理方法,本实施例所述方法与第一实施例大致相同,区别在于,如图3所示,本实施例的所述方法,在步骤S103之后还包括以下具体步骤:
步骤S104,主ETL服务器监控向从ETL服务器分配的数据ETL处理任务的相关信息。
具体的,步骤S104,包括:
主ETL服务器监控向从ETL服务器分配的数据ETL处理任务的数据传输量,并监控从ETL服务器分配到的数据ETL处理任务处理量;
主ETL服务器查询向从ETL服务器分配的数据ETL处理任务的执行状态,查询向从ETL服务器分配的数据ETL处理任务的执行结果。
本发明第五实施例,一种数据ETL处理方法,本实施例所述方法与第一实施例大致相同,区别在于,如图4所示,本实施例的所述方法,在步骤S102之前还包括以下具体步骤:
步骤S101-b,主ETL服务器对数据ETL处理任务是否是与大数据计算存储平台相关的数据ETL处理任务进行判断。
若是,则主ETL服务器将大数据计算存储平台相关的数据ETL处理任务分配至大数据计算存储平台;由大数据计算存储平台对与大数据计算存储平台相关的数据ETL处理任务进行分片数据ETL处理;
若否,则执行步骤S102。
本发明第六实施例,与第一实施例对应,本实施例介绍一种分布式数据ETL处理装置,分布式数据ETL处理系统中包括主ETL服务器和从ETL服务器,该装置设置于主ETL服务器,如图,5所示,该装置包括以下组成部分:
1)分配模块200,用于分配数据ETL处理任务至分布式数据ETL处理系统中的 主ETL服务器或从ETL服务器。
具体的,分配模块200用于:
根据参考信息分配数据ETL处理任务至分布式数据ETL处理系统中的主ETL服务器或从ETL服务器。
其中,参考信息,包括:数据ETL处理任务的优先级,或者,数据ETL处理任务的优先级以及主ETL服务器和从ETL服务器已分配到的数据ETL处理任务。
通过分配模块200分配数据ETL处理任务至分布式数据ETL处理系统中的主ETL服务器或从ETL服务器,能够有效解决高并发场景下的数据ETL处理问题,当需要处理的数据ETL处理任务数量很多,由分配模块200分配数据ETL处理任务满足高并发的要求。
分配模块200根据当前主ETL服务器和从ETL服务器的状态决定分配数据ETL处理任务的序列,为每个活动的主ETL服务器或从ETL服务器设置一个数据ETL处理任务队列,根据数据ETL处理任务的优先级有序控制数据ETL处理任务的分配,保证主ETL服务器和从ETL服务器之间的负载均衡和负荷。
主ETL服务器的数量为一个或两个;主ETL服务器的数量为两个的情况下,其中一个主ETL服务器是另一个主ETL服务器故障时的冗余备份。
主ETL服务器为Web(网络)服务器。
从ETL服务器的数量为一个或多个;从ETL服务器为Web(网络)服务器。
每个从ETL服务器与主ETL服务器安装的软件版本一致,软件安装时采用复制式安装,使用共同的配置数据库。
Web(网络)服务器能够对外提供Web(网络)服务功能。
主ETL服务器与从ETL服务器通过Web Service(网络服务)消息进行交互。
主ETL服务器与从ETL服务器均是无会话状态。通过Web Service(网络服务)消息进行交互,能够有效降低主ETL服务器与从ETL服务器之间的耦合性,极大地保证了数据ETL处理任务的处理成功率。
2)主处理模块300,用于分配到数据ETL处理任务时,对分配到的数据ETL处理任务进行数据ETL处理。
具体的,主处理模块300用于:
当分配到数据ETL处理任务时,对分配到的数据ETL处理任务根据数据ETL处 理任务的优先级进行数据ETL处理。
本发明第七实施例,一种分布式数据ETL处理装置,本实施例所述方法与第六实施例大致相同,区别在于所述装置还包括动态控制模块100,如图6所示,本实施例的所述装置,还包括以下组成部分:
动态控制模块100,用于对分布式数据ETL处理系统中的从ETL服务器的数量进行动态控制。
具体的,动态控制模块100,用于:
当从ETL服务器启动后,向主ETL服务器发起注册消息时,
将从ETL服务器加入数据ETL处理系统中,根据数据ETL处理任务量对分布式数据ETL处理系统中的从ETL服务器的数量进行动态控制;
监控从ETL服务器的活动状态。
本发明第八实施例,一种分布式数据ETL处理装置,本实施例所述方法与第六实施例大致相同,区别在于所述装置还包括压缩模块101,如图7所示,本实施例的所述装置,还包括以下组成部分:
压缩模块101,用于对分配至从ETL服务器的数据ETL处理任务进行压缩打包,得到数据ETL处理任务压缩包。
其中,压缩打包,包括:解析数据ETL处理任务;
将引用的数据ETL处理任务文件、数据ETL处理任务数据文件,数据ETL处理任务关联的转换文件压缩打包,同时更改数据ETL处理任务中引用的文件路径,将文件路径全部更改为数据ETL处理任务路径。
本发明第九实施例,一种分布式数据ETL处理装置,本实施例所述方法与第六实施例大致相同,区别在于所述装置还包括监控模块400,如图8所示,本实施例的所述装置,还包括以下组成部分:
监控模块400,用于监控向从ETL服务器分配的数据ETL处理任务的相关信息。
具体的,监控模块400,用于:
主ETL服务器监控向从ETL服务器分配的数据ETL处理任务的数据传输量,并 监控从ETL服务器分配到的数据ETL处理任务处理量;
主ETL服务器查询向从ETL服务器分配的数据ETL处理任务的执行状态,查询向从ETL服务器分配的数据ETL处理任务的执行结果。
本发明第十实施例,一种分布式数据ETL处理装置,本实施例所述方法与第六实施例大致相同,区别在于所述装置还包括大数据模块102,如图9所示,本实施例的所述装置,还包括以下组成部分:
大数据模块102,用于对数据ETL处理任务是否是与大数据计算存储平台相关的数据ETL处理任务进行判断。
若是,则主ETL服务器将大数据计算存储平台相关的数据ETL处理任务分配至大数据计算存储平台;由大数据计算存储平台对与大数据计算存储平台相关的数据ETL处理任务进行分片数据ETL处理;
若否,则将数据ETL处理任务发送至分配模块200。
本发明第十一实施例,一种分布式数据ETL处理方法,分布式数据ETL处理系统中包括主ETL服务器和从ETL服务器,如图10所示,该方法包括以下具体步骤:
步骤S1101,从ETL服务器接收主ETL服务器分配的数据ETL处理任务。
从ETL服务器接收主ETL服务器分配的数据ETL处理任务,能够有效解决高并发场景下的数据ETL处理问题,当需要处理的数据ETL处理任务数量很多,由主ETL服务器分配数据ETL处理任务满足高并发的要求。
其中,从ETL服务器的数量为一个或多个;从ETL服务器为Web(网络)服务器。
每个从ETL服务器与主ETL服务器安装的软件版本一致,软件安装时采用复制式安装,使用共同的配置数据库。
Web(网络)服务器能够对外提供Web(网络)服务功能。
主ETL服务器与从ETL服务器通过Web Service(网络服务)消息进行交互。
主ETL服务器与从ETL服务器均是无会话状态。通过Web Service(网络服务)消息进行交互,能够有效降低主ETL服务器与从ETL服务器之间的耦合性,极大地保证了数据ETL处理任务的处理成功率。
步骤S1103,从ETL服务器根据分配到的数据ETL处理任务的进行并行数据ETL处理。
具体的,步骤S1103,包括:
当从ETL服务器分配到数据ETL处理任务时,对分配到的数据ETL处理任务根据数据ETL处理任务的优先级进行并行数据ETL处理。
本发明第十二实施例,一种数据ETL处理方法,本实施例所述方法与第一实施例大致相同,区别在于,如图11所示,本实施例的所述方法,在步骤S1103之前还包括以下具体步骤:
步骤S1102,从ETL服务器对分配的数据ETL处理任务进行解压缩。
具体的,步骤S1102,包括:
从ETL服务器对分配的数据ETL处理任务进行解压缩,从ETL服务器为数据ETL处理任务分配一个唯一的任务标识,并将任务信息和任务标识存入从ETL服务器内存中。
本发明第十三实施例,与第十一实施例对应,本实施例介绍一种分布式数据ETL处理装置,分布式数据ETL处理系统中包括主ETL服务器和从ETL服务器,该装置设置于从ETL服务器,如图12所示,该装置包括以下组成部分:
1)接收模块1000,用于接收主ETL服务器分配的数据ETL处理任务。
通过接收模块1000接收主ETL服务器分配的数据ETL处理任务,能够有效解决高并发场景下的数据ETL处理问题,当需要处理的数据ETL处理任务数量很多,由主ETL服务器分配数据ETL处理任务满足高并发的要求。
其中,从ETL服务器的数量为一个或多个;从ETL服务器为Web(网络)服务器。
每个从ETL服务器与主ETL服务器安装的软件版本一致,软件安装时采用复制式安装,使用共同的配置数据库。
Web(网络)服务器能够对外提供Web(网络)服务功能。
主ETL服务器与从ETL服务器通过Web Service(网络服务)消息进行交互。
主ETL服务器与从ETL服务器均是无会话状态。通过Web Service(网络服务) 消息进行交互,能够有效降低主ETL服务器与从ETL服务器之间的耦合性,极大地保证了数据ETL处理任务的处理成功率。
2)从处理模块3000,用于根据分配到的数据ETL处理任务进行并行数据ETL处理。
从处理模块3000,具体用于:
当接收模块1000分配到数据ETL处理任务时,从处理模块3000用于对分配到的数据ETL处理任务根据数据ETL处理任务的优先级进行并行数据ETL处理。
本发明第十四实施例,一种分布式数据ETL处理装置,本实施例所述方法与第六实施例大致相同,区别在于所述装置还包括解压缩模块2000,如图13所示,本实施例的所述装置,还包括以下组成部分:
解压缩模块2000,用于接收模块1000接收到的数据ETL处理任务进行解压缩。
具体的,解压缩模块2000,用于:
对分配的数据ETL处理任务进行解压缩,为数据ETL处理任务分配一个唯一的任务标识,并将任务信息和任务标识存入从ETL服务器内存中;
将解压缩后的数据ETL处理任务发送至从处理模块3000。
通过具体实施方式的说明,应当可对本发明为达成预定目的所采取的技术手段及功效得以更加深入且具体的了解,然而所附图示仅是提供参考与说明之用,并非用来对本发明加以限制。
显然,本领域的技术人员应该明白,上述本发明实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储介质(ROM/RAM、磁碟、光盘)中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。所以,本发明实施例不限制于任何特定的硬件和软件结合。
工业实用性
本发明实施例提供的技术方案可以适用于数据处理技术领域。采用本发明实施例 所提供的所述分布式数据ETL处理方法及装置,在高并发和大数据采集加工场景下,有效提高了分布式数据ETL处理效率,通过动态控制ETL服务器的数量,有效增强了数据ETL处理系统的快速扩展能力,提高了分布式数据ETL快速处理能力。

Claims (20)

  1. 一种分布式数据抽取-转换-装载ETL处理方法,其中,分布式数据ETL处理系统中包括主ETL服务器和从ETL服务器,所述方法,包括:
    主ETL服务器分配数据ETL处理任务至所述分布式数据ETL处理系统中的主ETL服务器或从ETL服务器;
    当主ETL服务器分配到数据ETL处理任务时,对分配到的数据ETL处理任务进行数据ETL处理。
  2. 根据权利要求1所述的分布式数据ETL处理方法,其中,所述方法,还包括:主ETL服务器对分布式数据ETL处理系统中的从ETL服务器的数量进行动态控制。
  3. 根据权利要求1所述的分布式数据ETL处理方法,其中,所述主ETL服务器为网络服务器;
    所述从ETL服务器的数量为一个或多个;所述从ETL服务器为网络服务器;
    所述主ETL服务器与所述从ETL服务器通过网络服务Web Service消息进行交互。
  4. 根据权利要求1所述的分布式数据ETL处理方法,其中,所述方法,还包括:
    在主ETL服务器分配数据ETL处理任务至所述分布式数据ETL处理系统中的从ETL服务器之前,先对分配至所述从ETL服务器的数据ETL处理任务进行压缩打包,再将经过压缩打包的数据ETL处理任务分配至所述分布式数据ETL处理系统中的从ETL服务器。
  5. 根据权利要求1所述的分布式数据ETL处理方法,其中,所述方法,还包括:
    在主ETL服务器分配数据ETL处理任务至所述分布式数据ETL处理系统中的从ETL服务器之后,
    主ETL服务器监控向所述从ETL服务器分配的数据ETL处理任务的数据传输量,并监控所述从ETL服务器分配到的数据ETL处理任务处理量;
    主ETL服务器查询向所述从ETL服务器分配的数据ETL处理任务的执行状态,查询向所述从ETL服务器分配的数据ETL处理任务的执行结果。
  6. 根据权利要求1所述的分布式数据ETL处理方法,其中,所述方法,还包括:
    在主ETL服务器分配数据ETL处理任务至所述分布式数据ETL处理系统中的主 ETL服务器或从ETL服务器之前,主ETL服务器对所述数据ETL处理任务是否是与大数据计算存储平台相关的数据ETL处理任务进行判断;
    若是,则主ETL服务器将大数据计算存储平台相关的数据ETL处理任务分配至大数据计算存储平台;
    由所述大数据计算存储平台对与大数据计算存储平台相关的数据ETL处理任务进行分片数据ETL处理。
  7. 根据权利要求1所述的分布式数据ETL处理方法,其中,主ETL服务器根据参考信息分配数据ETL处理任务至所述分布式数据ETL处理系统中的主ETL服务器或从ETL服务器;
    当主ETL服务器分配到数据ETL处理任务时,根据分配到的数据ETL处理任务的优先级进行数据ETL处理;
    所述参考信息,包括:数据ETL处理任务的优先级,或者,数据ETL处理任务的优先级以及主ETL服务器和从ETL服务器已分配到的数据ETL处理任务。
  8. 一种分布式数据抽取-转换-装载ETL处理装置,其中,分布式数据ETL处理系统中包括主ETL服务器和从ETL服务器,所述装置设置于主ETL服务器,所述装置,包括:
    分配模块,设置为分配数据ETL处理任务至所述分布式数据ETL处理系统中的主ETL服务器或从ETL服务器;
    主处理模块,设置为分配到数据ETL处理任务时,对分配到的数据ETL处理任务进行数据ETL处理。
  9. 根据权利要求8所述的分布式数据ETL处理装置,其中,所述装置,还包括:
    动态控制模块:设置为对分布式数据ETL处理系统中的从ETL服务器的数量进行动态控制。
  10. 根据权利要求8所述的分布式数据ETL处理装置,其中,所述主ETL服务器为网络服务器;
    所述从ETL服务器的数量为一个或多个;所述从ETL服务器为网络服务器;
    所述主ETL服务器与所述从ETL服务器通过网络服务Web Service消息进行交互。
  11. 根据权利要求8所述的分布式数据ETL处理装置,其中,所述装置,还包 括:
    压缩模块,设置为对分配至所述从ETL服务器的数据ETL处理任务进行压缩打包,得到数据ETL处理任务压缩包,再将经过压缩打包的数据ETL处理任务分配至所述分布式数据ETL处理系统中的从ETL服务器。
  12. 根据权利要求8所述的分布式数据ETL处理装置,其中,所述装置,还包括:
    监控模块,设置为在通过分配模块分配数据ETL处理任务至所述分布式数据ETL处理系统中的从ETL服务器之后,监控向所述从ETL服务器分配的数据ETL处理任务的数据传输量,并监控所述从ETL服务器分配到的数据ETL处理任务处理量;查询所述从ETL服务器分配的数据ETL处理任务的执行状态,查询所述从ETL服务器分配的数据ETL处理任务的执行结果。
  13. 根据权利要求8所述的分布式数据ETL处理装置,其中,所述装置,还包括:
    大数据模块,设置为在通过分配模块分配数据ETL处理任务至所述分布式数据ETL处理系统中的主ETL服务器或从ETL服务器之前,对所述数据ETL处理任务是否是与大数据计算存储平台相关的数据ETL处理任务进行判断;
    若是,则将大数据计算存储平台相关的数据ETL处理任务分配至大数据计算存储平台;
    由所述大数据计算存储平台对与大数据计算存储平台相关的数据ETL处理任务进行分片数据ETL处理。
  14. 根据权利要求8所述的分布式数据ETL处理装置,其中,
    分配模块,设置为根据参考信息分配数据ETL处理任务至所述分布式数据ETL处理系统中的主ETL服务器或从ETL服务器;
    主处理模块,设置为当分配到数据ETL处理任务时,根据分配到的数据ETL处理任务的优先级进行数据ETL处理;
    所述参考信息,包括:数据ETL处理任务的优先级,或者,数据ETL处理任务的优先级以及主ETL服务器和从ETL服务器已分配到的数据ETL处理任务。
  15. 一种分布式数据抽取-转换-装载ETL处理方法,其中,分布式数据ETL处理系统中包括主ETL服务器和从ETL服务器,所述方法,包括:
    从ETL服务器接收主ETL服务器分配的数据ETL处理任务;
    从ETL服务器根据分配到的数据ETL处理任务的进行并行数据ETL处理。
  16. 根据权利要求15所述的分布式数据ETL处理方法,其中,所述从ETL服务器的数量为一个或多个;所述从ETL服务器的数量由主ETL服务器动态控制;
    所述主ETL服务器为网络服务器;所述从ETL服务器为网络服务器;
    所述主ETL服务器与所述从ETL服务器通过网络服务Web Service消息进行交互。
  17. 根据权利要求15所述的分布式数据ETL处理方法,其中,所述方法,还包括:
    所述从ETL服务器接收主ETL服务器分配的数据ETL处理任务之后,从ETL服务器先对所述数据ETL处理任务进行解压缩,再对解压缩后的数据ETL处理任务进行数据ETL处理。
  18. 一种分布式数据抽取-转换-装载ETL处理装置,其中,分布式数据ETL处理系统中包括主ETL服务器和从ETL服务器,所述装置设置于从ETL服务器,所述装置,包括:
    接收模块,设置为接收主ETL服务器分配的数据ETL处理任务;
    从处理模块,设置为根据分配到的数据ETL处理任务进行并行数据ETL处理。
  19. 根据权利要求18所述的分布式数据ETL处理装置,其中,所述从ETL服务器的数量为一个或多个;所述从ETL服务器的数量由主ETL服务器动态控制;
    所述主ETL服务器为网络服务器;所述从ETL服务器为网络服务器;
    所述主ETL服务器与所述从ETL服务器通过网络服务Web Service消息进行交互。
  20. 根据权利要求18所述的分布式数据ETL处理装置,其中,所述装置,还包括:
    解压缩模块,设置为通过接收模块接收到主ETL服务器分配的数据ETL处理任务之后,先对所述数据ETL处理任务进行解压缩,再对解压缩后的数据ETL处理任务进行并行数据ETL处理。
PCT/CN2017/094267 2016-08-22 2017-07-25 一种分布式数据etl处理方法及装置 WO2018036332A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610703660.5A CN107766387A (zh) 2016-08-22 2016-08-22 一种分布式数据etl处理方法及装置
CN201610703660.5 2016-08-22

Publications (1)

Publication Number Publication Date
WO2018036332A1 true WO2018036332A1 (zh) 2018-03-01

Family

ID=61246059

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/094267 WO2018036332A1 (zh) 2016-08-22 2017-07-25 一种分布式数据etl处理方法及装置

Country Status (2)

Country Link
CN (1) CN107766387A (zh)
WO (1) WO2018036332A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110515994A (zh) * 2019-08-20 2019-11-29 合肥英泽信息科技有限公司 一种基于大数据的地质勘查分析管理系统

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109582723B (zh) * 2018-11-30 2021-08-17 深圳市思迪信息技术股份有限公司 分布式etl数据采集方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104050042A (zh) * 2014-05-30 2014-09-17 北京先进数通信息技术股份公司 Etl作业的资源分配方法及装置
CN104391989A (zh) * 2014-12-16 2015-03-04 浪潮电子信息产业股份有限公司 一种分布式etl一体机系统
US20150242477A1 (en) * 2014-02-27 2015-08-27 International Business Machines Corporation Etl job creation using business term stage

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150242477A1 (en) * 2014-02-27 2015-08-27 International Business Machines Corporation Etl job creation using business term stage
CN104050042A (zh) * 2014-05-30 2014-09-17 北京先进数通信息技术股份公司 Etl作业的资源分配方法及装置
CN104391989A (zh) * 2014-12-16 2015-03-04 浪潮电子信息产业股份有限公司 一种分布式etl一体机系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110515994A (zh) * 2019-08-20 2019-11-29 合肥英泽信息科技有限公司 一种基于大数据的地质勘查分析管理系统

Also Published As

Publication number Publication date
CN107766387A (zh) 2018-03-06

Similar Documents

Publication Publication Date Title
EP3522013B1 (en) Method and system for migration of containers in a container orchestration platform between compute nodes
US11392400B2 (en) Enhanced migration of clusters based on data accessibility
EP3487149B1 (en) Data shard storage method, device and system
CN109343963B (zh) 一种容器集群的应用访问方法、装置及相关设备
EP3567829B1 (en) Resource management method and apparatus
US9577961B2 (en) Input/output management in a distributed strict queue
US10200295B1 (en) Client selection in a distributed strict queue
CN105100259A (zh) 一种分布式定时任务执行方法和系统
JP6840099B2 (ja) サービス提供システム、資源割り当て方法、及び資源割り当てプログラム
CN103366022B (zh) 信息处理系统及其处理方法
JP6083290B2 (ja) 分散処理システム
CN110932912A (zh) 一种微服务架构下配置文件统一管理的实现方法
US9591101B2 (en) Message batching in a distributed strict queue
US20150381708A1 (en) Failure management in a distributed strict queue
US20120233313A1 (en) Shared scaling server system
CN103873534A (zh) 一种应用集群迁移方法及装置
US20150381514A1 (en) Multi-tiered processing using a distributed strict queue
WO2016061935A1 (zh) 一种资源调度方法、装置及计算机存储介质
WO2018036332A1 (zh) 一种分布式数据etl处理方法及装置
CN106897299A (zh) 一种数据库访问方法及装置
CN106412030B (zh) 一种选择存储资源方法、装置及系统
CN113438295A (zh) 容器组地址分配方法、装置、设备及存储介质
US9577878B2 (en) Geographic awareness in a distributed strict queue
US9672073B2 (en) Non-periodic check-pointing for fine granular retry of work in a distributed computing environment
US8539276B2 (en) Recovering from lost resources in a distributed server environment

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17842755

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17842755

Country of ref document: EP

Kind code of ref document: A1