CN115525364A - Method, device and system for processing web data based on button and electronic equipment - Google Patents
Method, device and system for processing web data based on button and electronic equipment Download PDFInfo
- Publication number
- CN115525364A CN115525364A CN202211236876.7A CN202211236876A CN115525364A CN 115525364 A CN115525364 A CN 115525364A CN 202211236876 A CN202211236876 A CN 202211236876A CN 115525364 A CN115525364 A CN 115525364A
- Authority
- CN
- China
- Prior art keywords
- layer system
- data processing
- middle layer
- processing
- application
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/0486—Drag-and-drop
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
- G06F9/44526—Plug-ins; Add-ons
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Stored Programmes (AREA)
Abstract
Description
技术领域technical field
本申请涉及计算机软件技术领域,具体而言,涉及一种基于kettle的web数据处理方法、装置、系统和电子设备。The present application relates to the technical field of computer software, in particular, to a kettle-based web data processing method, device, system and electronic equipment.
背景技术Background technique
Kettle是一种桌面软件,是一款开源的ETL工具,可通过采用拖拽组件、连线、配置的方式来构建数据管道,可对接包括传统数据库、文件、大数据平台、接口、流数据等数据源。Kettle作为一个端对端的数据集成平台,可以对多种数据源进行抽取(Extraction)、加载(Loading)、对数据进行各种清洗(Cleaning)、转换(Transformation)、混合(Blending)等。Kettle is a desktop software and an open source ETL tool. It can build data pipelines by dragging and dropping components, connecting lines, and configuring. It can be connected to traditional databases, files, big data platforms, interfaces, streaming data, etc. data source. As an end-to-end data integration platform, Kettle can extract, load, clean, transform, and blend data from various data sources.
但是,目前对于kettle的应用是采用在终端设备上下载、安装后并使用,kettel本身的安装包较大,对于终端设备的配置要求比较高,并且软件界面和交互逻辑都不尽人意,学习使用成本较高,并且窗口响应速度较慢,给用户带来诸多不便。However, the current application of kettle is to download, install and use it on the terminal device. The installation package of kettle itself is relatively large, and the configuration requirements for the terminal device are relatively high, and the software interface and interactive logic are not satisfactory. Learning to use The cost is high, and the window response speed is slow, which brings a lot of inconvenience to users.
发明内容Contents of the invention
本申请的目的包括,例如,提供了一种基于kettle的web数据处理方法、装置、系统和电子设备,其能够通过在服务器中构建中间层系统和kettel应用,节约了终端的性能资源。The purpose of this application includes, for example, to provide a kettle-based web data processing method, device, system and electronic equipment, which can save terminal performance resources by building an intermediate system and a kettle application in a server.
本申请的实施例可以这样实现:The embodiment of the application can be realized like this:
第一方面,本申请提供一种基于kettle的web数据处理方法,应用于服务器,所述服务器与多个用户终端通信,所述服务器中包含中间层系统和kettle应用,所述方法包括:In a first aspect, the present application provides a kettle-based web data processing method applied to a server, the server communicates with a plurality of user terminals, the server includes an intermediate system and a kettle application, and the method includes:
在获得任一用户终端接入所述中间层系统的处理请求时,启动所述中间层系统,其中,所述处理请求为基于所述用户终端的web浏览器的操作所发出的;When obtaining a processing request for any user terminal to access the intermediate system, start the intermediate system, wherein the processing request is issued based on the operation of the web browser of the user terminal;
基于所述处理请求获得数据处理任务以及配置调度规则;Obtaining data processing tasks and configuring scheduling rules based on the processing request;
通过所述中间层系统模拟所述kettle应用的前台和后台之间的通信协议,以调用所述kettle应用的接口;Simulate the communication protocol between the foreground and the background of the kettle application by the middle layer system, to call the interface of the kettle application;
基于调用的所述kettle应用的接口接入所述kettle应用的功能,以在所述中间层系统中基于所述数据处理任务和配置调度规则执行相应的数据处理,得到处理结果。The function of the kettle application is accessed based on the interface of the kettle application called, so as to perform corresponding data processing in the middle layer system based on the data processing task and configuration scheduling rules, and obtain a processing result.
在可选的实施方式中,所述在获得任一用户终端接入所述中间层系统的处理请求时,启动所述中间层系统的步骤,包括:In an optional implementation manner, the step of starting the middle-level system when obtaining a processing request for any user terminal to access the middle-level system includes:
在获得任一用户终端接入所述中间层系统的处理请求时,获得所述用户终端对应的用户账号,根据所述用户账号确定用户权限;When obtaining a processing request for any user terminal to access the middle layer system, obtain a user account corresponding to the user terminal, and determine user rights according to the user account;
在启动所述中间层系统后,基于所述用户权限向所述用户终端反馈对应的数据资源,以使所述用户终端在所述web浏览器中展示所述数据资源。After starting the middle layer system, feed back corresponding data resources to the user terminal based on the user authority, so that the user terminal displays the data resources in the web browser.
在可选的实施方式中,所述基于所述处理请求获得数据处理任务以及配置调度规则的步骤,包括:In an optional implementation manner, the step of obtaining data processing tasks and configuring scheduling rules based on the processing request includes:
基于所述处理请求获得数据处理任务中的作业和可执行任务,其中,所述作业包含至少一个可执行任务,所述可执行任务为基于所述用户终端的web浏览器对组件进行操作所得到的;Obtain a job and an executable task in the data processing task based on the processing request, wherein the job includes at least one executable task, and the executable task is obtained by operating the component based on the web browser of the user terminal of;
获得所述配置调度规则中所述作业的触发信息和所述至少一个可执行任务的触发信息。Obtain trigger information of the job and trigger information of the at least one executable task in the configuration scheduling rule.
在可选的实施方式中,所述基于所述处理请求获得数据处理任务中的作业和可执行任务的步骤,包括:In an optional implementation manner, the step of obtaining jobs and executable tasks in data processing tasks based on the processing request includes:
基于所述处理请求获得数据处理任务中所创建的作业,以及所述作业下所创建的可执行任务;Obtaining the job created in the data processing task and the executable task created under the job based on the processing request;
获得所述可执行任务对应的组件,并获得所述可执行任务的源数据库、源数据表、目标数据库和目标数据表;obtaining the components corresponding to the executable task, and obtaining the source database, source data table, target database and target data table of the executable task;
获得针对所述源数据表和目标数据表的查询语句,以确定所述源数据表和目标数据表的匹配字段。A query statement for the source data table and the target data table is obtained to determine matching fields of the source data table and the target data table.
在可选的实施方式中,所述查询语句为针对所述源数据表和目标数据表的单个字段的查询语句,或者所述查询语句为针对所述源数据表和目标数据表的多个字段的查询语句。In an optional embodiment, the query statement is a query statement for a single field of the source data table and the target data table, or the query statement is for multiple fields of the source data table and the target data table query statement.
在可选的实施方式中,所述在所述中间层系统中基于所述数据处理任务和配置调度规则执行相应的数据处理的步骤,包括:In an optional implementation manner, the step of performing corresponding data processing in the middle layer system based on the data processing task and configuration scheduling rules includes:
在所述中间层系统中,若所述配置调度规则表明各所述可执行任务的触发信息一致且与所述作业的触发信息一致,则基于所述作业的触发信息同步触发所述作业下各所述可执行任务的数据处理;In the middle layer system, if the configuration scheduling rule indicates that the trigger information of each of the executable tasks is consistent with the trigger information of the job, then based on the trigger information of the job, each task under the job is synchronously triggered data processing of said executable tasks;
若所述配置调度规则表明各所述可执行任务的触发信息不一致,则按照各所述可执行任务的触发信息依次触发所述作业下各所述可执行任务的数据处理。If the configuration scheduling rule indicates that the trigger information of each of the executable tasks is inconsistent, the data processing of each of the executable tasks under the job is sequentially triggered according to the trigger information of each of the executable tasks.
在可选的实施方式中,所述方法还包括:In an optional embodiment, the method also includes:
对所述处理结果进行分析处理得到分析结果,所述分析结果包括成功的处理条数、失败的处理条数以及数据处理速度;Analyzing the processing result to obtain an analysis result, the analysis result includes the number of successfully processed items, the number of failed processed items, and the data processing speed;
通过所述中间层系统接入短信平台,以将所述分析结果通过所述短信平台以短信的方式发出。Accessing the short message platform through the middle layer system, so as to send the analysis result in the form of short message through the short message platform.
第二方面,本申请提供一种基于kettle的web数据处理装置,应用于服务器,所述服务器与多个用户终端通信,所述服务器中包含中间层系统和kettle应用,所述装置包括:In a second aspect, the present application provides a kettle-based web data processing device, which is applied to a server, the server communicates with a plurality of user terminals, the server includes an intermediate system and a kettle application, and the device includes:
启动模块,用于在获得任一用户终端接入所述中间层系统的处理请求时,启动所述中间层系统,其中,所述处理请求为基于所述用户终端的web浏览器的操作所发出的;A starting module, configured to start the middle-level system when obtaining a processing request from any user terminal to access the middle-level system, wherein the processing request is issued based on the operation of the web browser of the user terminal of;
获得模块,用于基于所述处理请求获得数据处理任务以及配置调度规则;An obtaining module, configured to obtain data processing tasks and configure scheduling rules based on the processing request;
调用模块,用于通过所述中间层系统模拟所述kettle应用的前台和后台之间的通信协议,以调用所述kettle应用的接口;Invoking a module, for simulating the communication protocol between the foreground and the background of the kettle application by the middle layer system, so as to call the interface of the kettle application;
处理模块,用于基于调用的所述kettle应用的接口接入所述kettle应用的功能,以在所述中间层系统中基于所述数据处理任务和配置调度规则执行相应的数据处理,得到处理结果。A processing module, configured to access the function of the kettle application based on the interface of the called kettle application, so as to perform corresponding data processing in the middle layer system based on the data processing task and configuration scheduling rules, and obtain a processing result .
第三方面,本申请提供一种电子设备,包括一个或多个存储介质和一个或多个与存储介质通信的处理器,一个或多个存储介质存储有处理器可执行的机器可执行指令,当电子设备运行时,处理器执行所述机器可执行指令,以执行前述实施方式中任意一项所述的方法步骤。In a third aspect, the present application provides an electronic device, including one or more storage media and one or more processors in communication with the storage media, where one or more storage media store machine-executable instructions executable by the processors, When the electronic device is running, the processor executes the machine-executable instructions to perform the method steps described in any one of the foregoing embodiments.
第四方面,本申请提供一种基于kettle的web数据处理系统,所述系统包括服务器以及与服务器通信的多个用户终端,所述服务器中包含中间层系统和kettle应用;In a fourth aspect, the present application provides a kettle-based web data processing system, the system includes a server and a plurality of user terminals communicating with the server, and the server includes an intermediate system and a kettle application;
所述用户终端,用于基于对web浏览器的操作得到接入所述中间层系统的处理请求,并将所述处理请求发送至所述服务器;The user terminal is configured to obtain a processing request for accessing the middle layer system based on the operation of the web browser, and send the processing request to the server;
所述服务器,用于在获得任一用户终端接入所述中间层系统的处理请求时,启动所述中间层系统,基于所述处理请求获得数据处理任务以及配置调度规则;The server is configured to start the middle-level system when obtaining a processing request from any user terminal to access the middle-level system, obtain data processing tasks and configure scheduling rules based on the processing request;
所述服务器,还用于通过所述中间层系统模拟所述kettle应用的前台和后台之间的通信协议,以调用所述kettle应用的接口;The server is also used to simulate the communication protocol between the foreground and the background of the kettle application through the middle layer system, so as to call the interface of the kettle application;
所述服务器,还用于基于调用的所述kettle应用的接口接入所述kettle应用的功能,以在所述中间层系统中基于所述数据处理任务和配置调度规则执行相应的数据处理,得到处理结果。The server is further configured to access the function of the kettle application based on the interface of the called kettle application, so as to perform corresponding data processing based on the data processing task and configuration scheduling rules in the middle layer system, and obtain process result.
本申请实施例的有益效果包括,例如:The beneficial effects of the embodiments of the present application include, for example:
本申请提供一种基于kettle的web数据处理方法、装置、系统和电子设备,通过在服务器中构建中间层系统和kettle应用,以在用户终端基于web浏览器的操作发出处理请求时,启动中间层系统,并基于处理请求获得数据处理任务以及配置调度规则。服务器通过中间层系统模拟kettle应用的前台和后台之间的通信协议,从而调用kettle应用的接口以接入kettle应用的功能,以在中间层系统中基于数据处理任务和配置调度规则执行相应的数据处理,得到处理结果。本方案中,仅需在服务器中构建中间层系统和kettle应用,利用中间层系统接入kettle应用功能,用户终端只需基于web浏览器操作接入中间层系统,即可使用kettel的所有功能,节约了终端的性能资源。The present application provides a kettle-based web data processing method, device, system and electronic equipment. By constructing an intermediate layer system and a kettle application in the server, when the user terminal sends a processing request based on the operation of the web browser, the intermediate layer is started system, and obtain data processing tasks and configure scheduling rules based on processing requests. The server simulates the communication protocol between the foreground and background of the kettle application through the middle-tier system, thereby calling the interface of the kettle application to access the functions of the kettle application, so as to execute corresponding data based on data processing tasks and configuration scheduling rules in the middle-tier system processing to get the processing result. In this solution, it is only necessary to build the middle-tier system and kettle application in the server, and use the middle-tier system to access the kettle application function. The user terminal only needs to access the middle-tier system based on the web browser operation, and can use all the functions of Kettle. The performance resource of the terminal is saved.
附图说明Description of drawings
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。In order to more clearly illustrate the technical solutions of the embodiments of the present application, the following will briefly introduce the accompanying drawings used in the embodiments. It should be understood that the following drawings only show some embodiments of the present application, so It should be regarded as a limitation on the scope, and those skilled in the art can also obtain other related drawings based on these drawings without creative work.
图1为本申请实施例提供的基于kettel的web数据处理方法的应用场景示意图;Fig. 1 is the application scenario schematic diagram of the kettel-based web data processing method that the embodiment of the present application provides;
图2为本申请实施例提供的基于kettel的web数据处理方法的流程图;Fig. 2 is the flowchart of the web data processing method based on kettel provided by the embodiment of the present application;
图3为图2中步骤S101包含的子步骤的流程图;Fig. 3 is the flowchart of the substep that step S101 comprises in Fig. 2;
图4为图2中步骤S102包含的子步骤的流程图;Fig. 4 is the flowchart of the substep that step S102 comprises in Fig. 2;
图5为图4中步骤S1021包含的子步骤的流程图;Fig. 5 is the flowchart of the substep that step S1021 comprises in Fig. 4;
图6为本申请实施例提供的基于kettel的web数据处理方法中,分析方法的流程图;Fig. 6 is a flow chart of the analysis method in the kettel-based web data processing method provided by the embodiment of the present application;
图7为本申请实施例提供的电子设备的结构框图;FIG. 7 is a structural block diagram of an electronic device provided by an embodiment of the present application;
图8为本申请实施例提供的基于kettel的web数据处理装置的功能模块框图。FIG. 8 is a block diagram of functional modules of a kettel-based web data processing device provided by an embodiment of the present application.
图标:110-存储介质;120-处理器;130-基于kettel的web数据处理装置;131-启动模块;132-获得模块;133-调用模块;134-处理模块;140-通信接口。Icons: 110-storage medium; 120-processor; 130-kettel-based web data processing device; 131-starting module; 132-obtaining module; 133-calling module; 134-processing module; 140-communication interface.
具体实施方式detailed description
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。In order to make the purposes, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments It is a part of the embodiments of this application, not all of them. The components of the embodiments of the application generally described and illustrated in the figures herein may be arranged and designed in a variety of different configurations.
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。Accordingly, the following detailed description of the embodiments of the application provided in the accompanying drawings is not intended to limit the scope of the claimed application, but merely represents selected embodiments of the application. Based on the embodiments in this application, all other embodiments obtained by persons of ordinary skill in the art without creative efforts fall within the protection scope of this application.
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。It should be noted that like numerals and letters denote similar items in the following figures, therefore, once an item is defined in one figure, it does not require further definition and explanation in subsequent figures.
需要说明的是,在不冲突的情况下,本申请的实施例中的特征可以相互结合。It should be noted that, in the case of no conflict, the features in the embodiments of the present application may be combined with each other.
请参阅图1,为本申请实施例提供的基于kettel的web数据处理方法的应用场景示意图,该应用场景中包括基于kettel的web数据处理系统,该处理系统包括服务器以及与服务器通信的多个用户终端。Please refer to FIG. 1 , which is a schematic diagram of an application scenario of a kettel-based web data processing method provided by an embodiment of the present application. The application scenario includes a kettel-based web data processing system, and the processing system includes a server and multiple users communicating with the server. terminal.
本实施例中,服务器可以是单独的服务器,也可以是多个服务器构成的服务器集群。服务器中包括中间层系统和kettel应用。用户终端可以是用户侧使用的终端设备,例如个人计算机、平板电脑等设备。通过用户终端上的web浏览器可以接入服务器中的中间层系统,进而接入kettel应用,利用kettel应用的各项功能。In this embodiment, the server may be a single server, or a server cluster composed of multiple servers. The server includes middle-tier system and kettel application. The user terminal may be a terminal device used on the user side, such as a personal computer, a tablet computer and other devices. The middle layer system in the server can be accessed through the web browser on the user terminal, and then the kettel application can be accessed to utilize various functions of the kettel application.
请参阅图2,为本申请实施例提供的基于kettel的web数据处理方法的流程图,该基于kettel的web数据处理方法有关的流程所定义的方法步骤可以由上述服务器所实现。下面将对图2所述的具体流程进行详细阐述。Please refer to FIG. 2 , which is a flow chart of the kettel-based web data processing method provided by the embodiment of the present application. The method steps defined by the process related to the kettel-based web data processing method can be implemented by the above-mentioned server. The specific process described in FIG. 2 will be described in detail below.
S101,在获得任一用户终端接入所述中间层系统的处理请求时,启动所述中间层系统,其中,所述处理请求为基于所述用户终端的web浏览器的操作所发出的。S101. Start the middle-tier system when obtaining a processing request from any user terminal to access the middle-tier system, where the processing request is sent based on an operation of a web browser of the user terminal.
S102,基于所述处理请求获得数据处理任务以及配置调度规则。S102. Obtain a data processing task and configure a scheduling rule based on the processing request.
S103,通过所述中间层系统模拟所述kettle应用的前台和后台之间的通信协议,以调用所述kettle应用的接口。S103, simulating the communication protocol between the foreground and the background of the kettle application through the middle layer system, so as to call the interface of the kettle application.
S104,基于调用的所述kettle应用的接口接入所述kettle应用的功能,以在所述中间层系统中基于所述数据处理任务和配置调度规则执行相应的数据处理,得到处理结果。S104. Access the function of the kettle application based on the called interface of the kettle application, so as to perform corresponding data processing in the middle layer system based on the data processing task and configuration scheduling rules, and obtain a processing result.
随着时代发展,数据的重要性逐渐凸显,数据通常来自各个业务系统,非常分散,也没有统一的数据标准,很难挖掘其中的价值。想要充分发挥数据价值,就需要统一数据标准,并且将分散在各个业务系统的数据进行汇总。With the development of the times, the importance of data has gradually become prominent. Data usually comes from various business systems, which are very scattered, and there is no unified data standard, so it is difficult to mine the value. To give full play to the value of data, it is necessary to unify data standards and aggregate data scattered in various business systems.
Kettle是一种常用的用于数据处理的桌面应用,在现有技术中,用户在利用kettel应用的相关功能时,需要在用户终端下载并安装kettel应用。Kettel应用的大安装包以及对终端的高配置要求,对终端性能具有较高要求,并且处理效率也不佳。Kettle is a commonly used desktop application for data processing. In the prior art, when using related functions of the kettel application, the user needs to download and install the kettel application on the user terminal. The large installation package of the Kettel application and the high configuration requirements for the terminal have high requirements for the terminal performance, and the processing efficiency is not good.
本实施例中,在服务器中配置中间层系统和kettel应用,用户在需要使用kettel应用相关功能时,可通过用户终端上的web浏览器进行登录,从而向服务器发出接入中间层系统的处理请求。In this embodiment, the middle-tier system and the kettel application are configured in the server. When the user needs to use the relevant functions of the kettel application, he can log in through the web browser on the user terminal, thereby sending a processing request to the server to access the middle-tier system .
服务器在接收到用户终端发出的处理请求时,将启动中间层系统,以使得用户终端可接入中间层系统。用户终端在接入中间层系统后,可以在web浏览器的web页面同步实现中间层系统的相关处理过程。When the server receives the processing request sent by the user terminal, it will start the middle layer system, so that the user terminal can access the middle layer system. After the user terminal accesses the middle-tier system, it can synchronously implement the relevant processing procedures of the middle-tier system on the web page of the web browser.
本实施例中,在服务器一侧,中间层系统在启动后,可以模拟kettel应用的前台和后台之间的通信协议。其中,kettel应用的前台可以理解为呈现数据处理过程的前端页面,而kettel应用的后台可以理解为实际执行指令命令、进行数据处理等的后端。In this embodiment, on the server side, after the middle layer system is started, it can simulate the communication protocol between the foreground and the background of the kettel application. Among them, the foreground of the kettel application can be understood as the front-end page that presents the data processing process, and the background of the kettel application can be understood as the back-end for actually executing instructions and processing data.
中间层系统通过模拟kettel应用的前台和后台之间的通信协议,从而可以调用kettel应用的接口。通过kettel应用的接口可以接入kettel应用的功能。也即,在中间层系统中可以具备kettel应用的相关功能。The middle layer system can call the interface of the kettel application by simulating the communication protocol between the foreground and the background of the kettel application. The functions of the kettel application can be accessed through the interface of the kettel application. That is, the middle-tier system can have related functions of the kettel application.
此外,用户终端所发起的处理请求中包括数据处理任务以及配置调度规则,其中,数据处理任务可以用于指示执行何种数据处理,而配置调度规则可以用于指示具体如何执行数据处理过程。In addition, the processing request initiated by the user terminal includes a data processing task and a configuration scheduling rule, wherein the data processing task may be used to indicate what kind of data processing is to be performed, and the configuration scheduling rule may be used to indicate how to specifically execute the data processing process.
基于此,在服务器一侧,则可以在中间层系统中根据数据处理任务和配置调度规则执行相应的数据处理,得到处理结果。Based on this, on the server side, corresponding data processing can be performed in the middle layer system according to the data processing tasks and configuration scheduling rules, and the processing results can be obtained.
本实施例所提供的基于kettel的web数据处理方法,通过在服务器中构建中间层系统和kettel应用,利用中间层系统接入kettel应用功能,用户终端只需基于web浏览器操作接入中间层系统,即可使用kettel应用的所有功能,节约了终端的性能资源。In the kettel-based web data processing method provided in this embodiment, by constructing the middle-tier system and the kettel application in the server, the middle-tier system is used to access the kettel application function, and the user terminal only needs to access the middle-tier system based on a web browser operation , you can use all the functions of the kettel application, which saves the performance resources of the terminal.
在现有的kettel应用中基本上没有角色和权限的概念,导致有些重要的数据资源存在信息不安全的问题,并且也不利于功能、数据的隔离。In existing kettel applications, there is basically no concept of roles and permissions, which leads to the problem of information insecurity in some important data resources, and is not conducive to the isolation of functions and data.
基于此,请参阅图3,本实施例中,在上述步骤S101中获得用户终端的处理请求,并启动中间层系统的步骤中,可以包括以下子步骤:Based on this, please refer to FIG. 3. In this embodiment, in the step of obtaining the processing request of the user terminal in the above step S101 and starting the middle layer system, the following sub-steps may be included:
S1011,在获得任一用户终端接入所述中间层系统的处理请求时,获得所述用户终端对应的用户账号,根据所述用户账号确定用户权限。S1011. When obtaining a processing request of any user terminal to access the middle layer system, obtain a user account corresponding to the user terminal, and determine user rights according to the user account.
S1012,在启动所述中间层系统后,基于所述用户权限向所述用户终端反馈对应的数据资源,以使所述用户终端在所述web浏览器中展示所述数据资源。S1012. After starting the middle layer system, feed back corresponding data resources to the user terminal based on the user authority, so that the user terminal displays the data resources in the web browser.
本实施例中,在用户终端一侧,用户可以利用用户账号在web浏览器上进行登录,进而接入中间层系统。在接入中间层系统后,在用户终端的web浏览器上可以展示数据信息、数据配置信息等的相关界面,该相关界面也可供用户进行数据选择、配置等所用,进而将相关配置结果发送至服务器进行处理。In this embodiment, on the side of the user terminal, the user can use the user account to log in on the web browser, and then access the middle layer system. After connecting to the middle layer system, the relevant interfaces such as data information and data configuration information can be displayed on the web browser of the user terminal, and the relevant interface can also be used by the user for data selection and configuration, and then the relevant configuration results will be sent to the server for processing.
而不同用户账号可对应不同的用户角色,不同用户角色可具有不同的用户权限,不同用户权限对不同的数据资源具有包括但不限于查看、修改、配置、删除等处理权限。Different user accounts may correspond to different user roles, and different user roles may have different user permissions. Different user permissions have processing permissions for different data resources, including but not limited to viewing, modifying, configuring, and deleting.
因此,在获得用户终端发起的处理请求后,首先可以验证用户账号是否合法,例如,是否是合法注册的用户等。若用户账号为合法账号,则可以确定用户账号对应的用户权限,进而获知该用户账号对哪些数据资源具有处理权限。Therefore, after obtaining the processing request initiated by the user terminal, it may first be verified whether the user account is legal, for example, whether it is a legally registered user or not. If the user account is a legitimate account, the user authority corresponding to the user account can be determined, and then it is known which data resources the user account has processing authority to.
服务器在启动中间层系统后,可以基于用户账号相应的用户权限向用户终端反馈其具有处理权限的数据资源,从而可以在用户终端的web浏览器中展示该数据资源。以便于用户可以在用户终端的web浏览器相关的界面上对数据资源进行如配置等处理。After starting the middle layer system, the server can feed back to the user terminal the data resource with processing authority based on the corresponding user authority of the user account, so that the data resource can be displayed in the web browser of the user terminal. So that the user can perform processing such as configuration on the data resource on the interface related to the web browser of the user terminal.
本实施例中,通过给不同的用户账号分配不同的角色,结合业务需求设立不同的用户权限,以用于隔离功能、数据权限。通过权限分级使得各个角色协同作业,提高工作效率且保护数据访问权限。In this embodiment, by assigning different roles to different user accounts, different user permissions are set up in combination with business requirements, so as to isolate functions and data permissions. Through permission classification, each role can work together to improve work efficiency and protect data access rights.
在用户终端一侧,用户可以基于对具有权限的数据资源进行如选择、配置等,进而生成上述的处理请求,以发送至服务器。服务器在接收到该处理请求后,可以基于处理请求获得数据处理任务以及配置调度规则。请参阅图4,该步骤具体可以包括以下子步骤:On the side of the user terminal, the user can generate the above-mentioned processing request based on the selection and configuration of the authorized data resource, and then send it to the server. After receiving the processing request, the server can obtain data processing tasks and configure scheduling rules based on the processing request. Referring to Figure 4, this step specifically may include the following sub-steps:
S1021,基于所述处理请求获得数据处理任务中的作业和可执行任务,其中,所述作业包含至少一个可执行任务,所述可执行任务为基于所述用户终端的web浏览器对组件进行操作所得到的。S1021. Obtain a job and an executable task in the data processing task based on the processing request, where the job includes at least one executable task, and the executable task is to operate a component based on the web browser of the user terminal what you get.
S1022,获得所述配置调度规则中所述作业的触发信息和所述至少一个可执行任务的触发信息。S1022. Obtain trigger information of the job and trigger information of the at least one executable task in the configuration scheduling rule.
本实施例中,将数据处理任务分为作业(job)和可执行任务(task)。其中,作业是可执行任务的集合,作业可以以不同的业务领域或者业务模块进行划分,具有业务意义。而可执行任务为最小的执行单元。In this embodiment, data processing tasks are divided into jobs (jobs) and executable tasks (tasks). Among them, a job is a collection of executable tasks, and the job can be divided into different business fields or business modules, which has business significance. The executable task is the smallest execution unit.
可在作业下创建可执行任务,可执行任务基于web浏览器中的组件配置得到,该组件与kettel应用提供的组件功能相同。可以通过例如拖曳等方式组成一个可执行任务。Executable tasks can be created under the job, and the executable tasks are obtained based on the component configuration in the web browser, which has the same functions as the components provided by the kettel application. An executable task can be composed by, for example, dragging and dropping.
在配置得到作业和可执行任务的情况下,可以对作业和可执行任务进行调度规则配置,例如,包括作业的触发信息,各个可执行任务的触发信息等的配置。用于后续对作业和可执行任务执行定时触发,其中,可执行任务的配置调度规则的优先级相对于作业的优先级更高,也即,在执行时,以可执行任务的配置调度规则为准。When jobs and executable tasks are configured, scheduling rules can be configured for jobs and executable tasks, for example, configurations including job trigger information, trigger information of each executable task, and the like. It is used for subsequent timing triggering of jobs and executable tasks, where the priority of the configuration scheduling rule of the executable task is higher than that of the job, that is, during execution, the configuration scheduling rule of the executable task is allow.
本实施例中,以业务领域进行作业的划分和配置,并且,在各个作业下构建一个或多个可执行任务,进而对作业和可执行任务配置调度规则。可以实现支持不同业务领域的作业执行,并且,在作业下细化最小的执行单元。In this embodiment, jobs are divided and configured by business domain, and one or more executable tasks are constructed under each job, and then scheduling rules are configured for jobs and executable tasks. It can support job execution in different business fields, and refine the smallest execution unit under the job.
本实施例中,在数据统一管理的过程中,通常会涉及到需要将迁移到规定的数据库或者是数据表中。因此,构建的作业和可执行任务往往涉及到对数据库、数据表中的数据的处理。具体地,请参阅图5,本实施例中,在上述获得数据处理任务中的作业和可执行任务的步骤中,可以包括以下子步骤:In this embodiment, in the process of unified data management, it usually involves migration to a specified database or data table. Therefore, the constructed jobs and executable tasks often involve the processing of data in databases and data tables. Specifically, please refer to FIG. 5. In this embodiment, in the above step of obtaining the jobs and executable tasks in the data processing task, the following sub-steps may be included:
S10211,基于所述处理请求获得数据处理任务中所创建的作业,以及所述作业下所创建的可执行任务。S10211. Obtain the job created in the data processing task and the executable task created under the job based on the processing request.
S10212,获得所述可执行任务对应的组件,并获得所述可执行任务的源数据库、源数据表、目标数据库和目标数据表。S10212. Obtain the component corresponding to the executable task, and obtain the source database, source data table, target database, and target data table of the executable task.
S10213,获得针对所述源数据表和目标数据表的查询语句,以确定所述源数据表和目标数据表的匹配字段。S10213. Obtain query statements for the source data table and the target data table, so as to determine matching fields of the source data table and the target data table.
本实施例中,在用户终端一侧发起的数据处理请求中,包括新建的作业,以及在新建的作业下构建的可执行任务,例如,在web浏览器的相关页面中选择需要的组件构成一个可执行任务。In this embodiment, the data processing request initiated by the user terminal side includes a newly created job and an executable task constructed under the newly created job. Executable tasks.
在构建可执行任务时,例如可以是通过拖曳表输入组件,选择源数据库、选择源数据表,生成查询语句,例如SQL语句。再拖曳表输出组件,选择目标数据库、目标数据表。基于生成的查询语句,进行源数据表和目标数据表的字段的匹配,进而生成并保存该可执行任务。When constructing an executable task, for example, by dragging a table input component, selecting a source database, selecting a source data table, and generating a query statement, such as an SQL statement. Then drag the table output component, and select the target database and target data table. Based on the generated query statement, match the fields of the source data table and the target data table, and then generate and save the executable task.
在服务器一侧接收到处理请求时,则可以按照上述的方式,还原出处理请求中的作业,以及可执行任务下的具体信息。When the processing request is received on the server side, the job in the processing request and the specific information under the executable tasks can be restored in the above manner.
本实施例中,通过上述的对于数据库、数据表的管理,以及构建对应的作业和可执行任务,可以在后续通过执行任务实现数据迁移时顺利实现对应字段的数据迁移。In this embodiment, through the above-mentioned management of databases and data tables, and the construction of corresponding jobs and executable tasks, the data migration of corresponding fields can be successfully implemented in the subsequent implementation of data migration by executing tasks.
本实施例中,上述生成的查询语句可以是针对源数据表和目标数据表的单个字段的查询语句,也可以是针对源数据表和目标数据表的多个字段的联合查询语句。In this embodiment, the query statement generated above may be a query statement for a single field of the source data table and the target data table, or may be a joint query statement for multiple fields of the source data table and the target data table.
如此,可以实现数据表之间单字段数据的迁移,或者是数据表之间多字段联动的数据迁移。In this way, the migration of single-field data between data tables, or the data migration of multi-field linkage between data tables can be realized.
本实施例中,服务器在中间层系统中若需要执行相应的数据处理,除了需要基于上述的数据处理任务之外,还需要基于相关的配置调度规则。而由上述可知,配置调度规则中包含作业的调度规则和各个可执行任务的调度规则。而作业的调度规则和可执行任务的调度规则可能一致,也可能不一致。具体地,可以通过以下方式基于配置调度规则执行数据处理。In this embodiment, if the server needs to perform corresponding data processing in the middle layer system, in addition to the above data processing tasks, it also needs to be based on related configuration scheduling rules. It can be known from the above that the configuration scheduling rules include job scheduling rules and scheduling rules for each executable task. The scheduling rules of the job and the scheduling rules of the executable tasks may or may not be consistent. Specifically, data processing may be performed based on configuration scheduling rules in the following manner.
在中间层系统中,若配置调度规则表明各可执行任务的触发信息一致且与作业的触发信息一致,则基于作业的触发信息同步触发作业下各个可执行任务的数据处理。In the middle layer system, if the configuration scheduling rules indicate that the trigger information of each executable task is consistent with the trigger information of the job, then the data processing of each executable task under the job is triggered synchronously based on the trigger information of the job.
本实施例中,在单个作业下构建有多个可执行任务的情况下,各个可执行任务的触发信息一致且与作业的触发信息一致,为了避免一一基于各个可执行任务的触发信息进行任务触发,可以直接基于作业的触发信息进行可执行任务的并发执行。如此,可以在保障执行准确性的基础上,降低处理复杂度。In this embodiment, when multiple executable tasks are constructed under a single job, the trigger information of each executable task is consistent with the trigger information of the job, in order to avoid performing tasks based on the trigger information of each executable task Trigger, the concurrent execution of executable tasks can be performed directly based on the trigger information of the job. In this way, processing complexity can be reduced on the basis of ensuring execution accuracy.
此外,在中间层系统中,若配置调度规则表明各个可执行任务的触发信息不一致,则按照各个可执行任务的触发信息依次触发作业下各个可执行任务的数据处理。In addition, in the middle layer system, if the configuration scheduling rules indicate that the trigger information of each executable task is inconsistent, the data processing of each executable task under the job is triggered sequentially according to the trigger information of each executable task.
由上述可知,可执行任务的优先级较作业的优先级更高,在各个可执行任务的触发信息不一致的情况下,必定也无法全部与作业的触发信息一致。因此,这种情况下,则需要基于各个可执行任务的触发信息触发执行数据处理,以保障任务执行的触发准确性。It can be known from the above that the priority of executable tasks is higher than that of jobs, and if the trigger information of each executable task is inconsistent, it must not all be consistent with the trigger information of jobs. Therefore, in this case, it is necessary to trigger the execution data processing based on the trigger information of each executable task, so as to ensure the trigger accuracy of task execution.
本实施例中,在中间层系统中基于上述信息执行数据处理过程时,若数据处理中出现报错现象,则对作业和可执行任务的调度的状态将自动设置为不启用。此时,可以查看该任务执行日志,待报错问题解决后,再选择继续执行。In this embodiment, when the data processing process is executed based on the above information in the middle layer system, if an error occurs during data processing, the scheduling status of jobs and executable tasks will be automatically set to disabled. At this point, you can view the task execution log, and choose to continue the execution after the error problem is resolved.
本实施例中,在执行数据处理任务后,还可对处理结果进行分析,请参阅图6,具体地,还可包括以下步骤:In this embodiment, after the data processing task is performed, the processing result can also be analyzed, please refer to FIG. 6, specifically, the following steps can also be included:
S105,对所述处理结果进行分析处理得到分析结果,所述分析结果包括成功的处理条数、失败的处理条数以及数据处理速度。S105, analyzing the processing result to obtain an analysis result, the analysis result including the number of successfully processed items, the number of failed processed items, and the data processing speed.
S106,通过所述中间层系统接入短信平台,以将所述分析结果通过所述短信平台以短信的方式发出。S106, accessing a short message platform through the middle layer system, so as to send the analysis result in a short message through the short message platform.
本实施例中,在数据处理执行过程中以及执行完毕后,可生成执行日志,可以基于执行日志获得数据处理中,成功获取多少条数据、获取失败多少条数据,执行速度等指标。In this embodiment, during and after data processing execution, an execution log can be generated, and based on the execution log, indicators such as how many pieces of data are successfully acquired, how many pieces of data fail to be acquired, and execution speed during data processing can be obtained.
此外,本实施例中,还可通过汇总模块从多个维度统计执行的数据,例如数据源个数、执行数据成功的条数、执行数据失败的条数等。In addition, in this embodiment, the summarization module can also be used to count the executed data from multiple dimensions, such as the number of data sources, the number of successfully executed data pieces, the number of failed executed data pieces, and the like.
除了可查看执行日志,还可对执行日志进行下载,通过中间层系统接入短信平台,以将下载的执行日志中的上述分析结果通过短信的方式发送至用户的终端设备。In addition to viewing the execution log, it is also possible to download the execution log, access the SMS platform through the middle layer system, and send the above analysis results in the downloaded execution log to the user's terminal device by SMS.
本实施例所提供的基于kettel的web数据处理方法,通过在服务器中配置中间层系统和kettel应用,用户终端可接入中间层系统,且中间层系统通过模拟kettel应用的前台和后台的通信协议调用kettel应用的接口,进而接入kettel应用的功能。使得用户仅需基于用户终端通过登录web浏览器接入中间层系统,即可进行kettel应用中的数据源配置、作业、可执行任务配置等,也可以查看可执行任务执行状态,查看执行报错信息等,能够随时随地掌控流程执行情况。In the kettel-based web data processing method provided in this embodiment, by configuring the middle-tier system and the kettel application in the server, the user terminal can access the middle-tier system, and the middle-tier system simulates the communication protocol between the foreground and the background of the kettel application Call the interface of the kettel application, and then access the functions of the kettel application. The user only needs to log in to the middle layer system through a web browser based on the user terminal, and can configure data sources, jobs, and executable tasks in the kettel application, and can also view the execution status of executable tasks and view execution error messages Etc., can control the execution of the process anytime, anywhere.
进一步地,本实施例中进入权限管理概念,可以给不同的用户分配不同的角色,以对应不同的用户权限,实现功能隔离、执行数据隔离。Furthermore, in this embodiment, the concept of rights management is entered, and different roles can be assigned to different users to correspond to different user rights, so as to realize function isolation and execution data isolation.
并且,具有完善的调度规则,能够对作业和可执行任务配置调度规则,实现业务领域的划分,以及业务领域下细化的可执行单元的划分。In addition, it has perfect scheduling rules, and can configure scheduling rules for jobs and executable tasks to realize the division of business domains and the division of fine-grained executable units under business domains.
此外,还可从多个维度对执行日志进行分析,从多个维度统计执行情况。In addition, the execution log can be analyzed from multiple dimensions, and the execution status can be counted from multiple dimensions.
本实施例所提供的处理方法,在界面易用性和任务调度,以及统计分析等方面均具有较好的体验,可以更自由和便捷的把控数据处理的各个环节。The processing method provided in this embodiment has a better experience in terms of interface usability, task scheduling, and statistical analysis, and can control various links of data processing more freely and conveniently.
由上述可知,本申请实施例还提供一种基于kettel的web数据处理系统,该处理系统包括服务器和多个用户终端,具体地,所述用户终端,用于基于对web浏览器的操作得到接入所述中间层系统的处理请求,并将所述处理请求发送至所述服务器。As can be seen from the above, the embodiment of the present application also provides a kettel-based web data processing system, the processing system includes a server and a plurality of user terminals, specifically, the user terminals are used to obtain an access based on the operation of the web browser. The processing request entered into the middle layer system, and the processing request is sent to the server.
所述服务器,用于在获得任一用户终端接入所述中间层系统的处理请求时,启动所述中间层系统,基于所述处理请求获得数据处理任务以及配置调度规则。The server is configured to start the middle-tier system when obtaining a processing request from any user terminal to access the middle-tier system, obtain data processing tasks and configure scheduling rules based on the processing request.
所述服务器,还用于通过所述中间层系统模拟所述kettle应用的前台和后台之间的通信协议,以调用所述kettle应用的接口。The server is further configured to simulate the communication protocol between the foreground and the background of the kettle application through the middle layer system, so as to call the interface of the kettle application.
所述服务器,还用于基于调用的所述kettle应用的接口接入所述kettle应用的功能,以在所述中间层系统中基于所述数据处理任务和配置调度规则执行相应的数据处理,得到处理结果。The server is further configured to access the function of the kettle application based on the interface of the called kettle application, so as to perform corresponding data processing based on the data processing task and configuration scheduling rules in the middle layer system, and obtain process result.
本实施例提供的基于kettel的web数据处理系统,通过在服务器中构建中间层系统和kettle应用,利用中间层系统接入kettle应用功能,用户终端只需基于web浏览器操作接入中间层系统,即可使用kettel的所有功能,节约了终端的性能资源。The kettel-based web data processing system provided in this embodiment, by constructing the middle layer system and the kettle application in the server, utilizes the middle layer system to access the kettle application function, the user terminal only needs to access the middle layer system based on the web browser operation, You can use all the functions of kettel, saving the performance resources of the terminal.
关于系统中的各设备的处理流程、以及各设备之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。For the description of the processing flow of each device in the system and the interaction flow between each device, reference may be made to the relevant descriptions in the foregoing method embodiments, which will not be described in detail here.
请参阅图7,为本申请实施例提供的电子设备的示例性组件示意图,该电子设备可以是上述的服务器。该电子设备可包括存储介质110、处理器120、基于kettel的web数据处理装置130及通信接口140。本实施例中,存储介质110与处理器120均位于电子设备中且二者分离设置。然而,应当理解的是,存储介质110也可以是独立于电子设备之外,且可以由处理器120通过总线接口来访问。可替换地,存储介质110也可以集成到处理器120中,例如,可以是高速缓存和/或通用寄存器。Please refer to FIG. 7 , which is a schematic diagram of exemplary components of an electronic device provided in an embodiment of the present application. The electronic device may be the above-mentioned server. The electronic device may include a
基于kettel的web数据处理装置130可以理解为上述电子设备,或电子设备的处理器120,也可以理解为独立于上述电子设备或处理器120之外的在电子设备控制下实现上述基于kettel的web数据处理方法的软件功能模块。The kettel-based web
如图8所示,上述基于kettel的web数据处理装置130可以包括启动模块131、获得模块132、调用模块133和处理模块134。下面分别对该基于kettel的web数据处理装置130的各个功能模块的功能进行详细阐述。As shown in FIG. 8 , the aforementioned kettel-based web
启动模块131,用于在获得任一用户终端接入所述中间层系统的处理请求时,启动所述中间层系统,其中,所述处理请求为基于所述用户终端的web浏览器的操作所发出的;The starting
可以理解,该启动模块131可以用于执行上述步骤S101,关于该启动模块131的详细实现方式可以参照上述对步骤S101有关的内容。It can be understood that the
获得模块132,用于基于所述处理请求获得数据处理任务以及配置调度规则;Obtaining
可以理解,该获得模块132可以用于执行上述步骤S102,关于该获得模块132的详细实现方式可以参照上述对步骤S102有关的内容。It can be understood that the obtaining
调用模块133,用于通过所述中间层系统模拟所述kettle应用的前台和后台之间的通信协议,以调用所述kettle应用的接口;Calling
可以理解,该调用模块133可以用于执行上述步骤S103,关于该调用模块133的详细实现方式可以参照上述对步骤S103有关的内容。It can be understood that the
处理模块134,用于基于调用的所述kettle应用的接口接入所述kettle应用的功能,以在所述中间层系统中基于所述数据处理任务和配置调度规则执行相应的数据处理,得到处理结果。The
可以理解,该处理模块134可以用于执行上述步骤S104,关于该处理模块134的详细实现方式可以参照上述对步骤S104有关的内容。It can be understood that the
在一种可能的实施方式中,上述启动模块131可以用于:In a possible implementation manner, the
在获得任一用户终端接入所述中间层系统的处理请求时,获得所述用户终端对应的用户账号,根据所述用户账号确定用户权限;When obtaining a processing request for any user terminal to access the middle layer system, obtain a user account corresponding to the user terminal, and determine user rights according to the user account;
在启动所述中间层系统后,基于所述用户权限向所述用户终端反馈对应的数据资源,以使所述用户终端在所述web浏览器中展示所述数据资源。After starting the middle layer system, feed back corresponding data resources to the user terminal based on the user authority, so that the user terminal displays the data resources in the web browser.
在一种可能的实施方式中,上述获得模块132可以用于:In a possible implementation manner, the above obtaining
基于所述处理请求获得数据处理任务中的作业和可执行任务,其中,所述作业包含至少一个可执行任务,所述可执行任务为基于所述用户终端的web浏览器对组件进行操作所得到的;Obtain a job and an executable task in the data processing task based on the processing request, wherein the job includes at least one executable task, and the executable task is obtained by operating the component based on the web browser of the user terminal of;
获得所述配置调度规则中所述作业的触发信息和所述至少一个可执行任务的触发信息。Obtain trigger information of the job and trigger information of the at least one executable task in the configuration scheduling rule.
在一种可能的实施方式中,上述获得模块132可以用于:In a possible implementation manner, the above obtaining
基于所述处理请求获得数据处理任务中所创建的作业,以及所述作业下所创建的可执行任务;Obtaining the job created in the data processing task and the executable task created under the job based on the processing request;
获得所述可执行任务对应的组件,并获得所述可执行任务的源数据库、源数据表、目标数据库和目标数据表;obtaining the components corresponding to the executable task, and obtaining the source database, source data table, target database and target data table of the executable task;
获得针对所述源数据表和目标数据表的查询语句,以确定所述源数据表和目标数据表的匹配字段。A query statement for the source data table and the target data table is obtained to determine matching fields of the source data table and the target data table.
在一种可能的实施方式中,所述查询语句为针对所述源数据表和目标数据表的单个字段的查询语句,或者所述查询语句为针对所述源数据表和目标数据表的多个字段的联合查询语句。In a possible implementation manner, the query statement is a query statement for a single field of the source data table and the target data table, or the query statement is a query statement for multiple fields of the source data table and the target data table Combined query statement for fields.
在一种可能的实施方式中,上述处理模块134可以用于:In a possible implementation manner, the above-mentioned
在所述中间层系统中,若所述配置调度规则表明各所述可执行任务的触发信息一致且与所述作业的触发信息一致,则基于所述作业的触发信息同步触发所述作业下各所述可执行任务的数据处理;In the middle layer system, if the configuration scheduling rule indicates that the trigger information of each of the executable tasks is consistent with the trigger information of the job, then based on the trigger information of the job, each task under the job is synchronously triggered data processing of said executable tasks;
若所述配置调度规则表明各所述可执行任务的触发信息不一致,则按照各所述可执行任务的触发信息依次触发所述作业下各所述可执行任务的数据处理。If the configuration scheduling rule indicates that the trigger information of each of the executable tasks is inconsistent, the data processing of each of the executable tasks under the job is sequentially triggered according to the trigger information of each of the executable tasks.
在一种可能的实施方式中,所述基于kettel的web数据处理装置130还包括分析模块,该分析模块可以用于:In a possible implementation manner, the kettel-based web
对所述处理结果进行分析处理得到分析结果,所述分析结果包括成功的处理条数、失败的处理条数以及数据处理速度;Analyzing the processing result to obtain an analysis result, the analysis result includes the number of successfully processed items, the number of failed processed items, and the data processing speed;
通过所述中间层系统接入短信平台,以将所述分析结果通过所述短信平台以短信的方式发出。Accessing the short message platform through the middle layer system, so as to send the analysis result in the form of short message through the short message platform.
关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。For the description of the processing flow of each module in the device and the interaction flow between the modules, reference may be made to the relevant description in the above method embodiment, and details will not be described here.
进一步地,本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质存储有机器可执行指令,机器可执行指令被执行时实现上述实施例提供的基于kettel的web数据处理方法。Further, the embodiment of the present application also provides a computer-readable storage medium, the computer-readable storage medium stores machine-executable instructions, and when the machine-executable instructions are executed, the kettel-based web data processing method provided in the above-mentioned embodiments is implemented.
具体地,该计算机可读存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该计算机可读存储介质上的计算机程序被运行时,能够执行上述基于kettel的web数据处理方法。关于计算机可读存储介质中的及其可执行指令被运行时,所涉及的过程,可以参照上述方法实施例中的相关说明,这里不再详述。Specifically, the computer-readable storage medium can be a general-purpose storage medium, such as a removable disk, a hard disk, etc., and when the computer program on the computer-readable storage medium is run, the above kettel-based web data processing method can be executed. As for the processes involved when the executable instructions in the computer-readable storage medium are executed, reference may be made to relevant descriptions in the foregoing method embodiments, and no further details are given here.
综上所述,本申请实施例提供的基于kettle的web数据处理方法、装置、系统和电子设备,通过在服务器中构建中间层系统和kettle应用,以在用户终端基于web浏览器的操作发出处理请求时,启动中间层系统,并基于处理请求获得数据处理任务以及配置调度规则。服务器通过中间层系统模拟kettle应用的前台和后台之间的通信协议,从而调用kettle应用的接口以接入kettle应用的功能,以在中间层系统中基于数据处理任务和配置调度规则执行相应的数据处理,得到处理结果。本方案中,仅需在服务器中构建中间层系统和kettle应用,利用中间层系统接入kettle应用功能,用户终端只需基于web浏览器操作接入中间层系统,即可使用kettel的所有功能,节约了终端的性能资源。To sum up, the kettle-based web data processing method, device, system, and electronic equipment provided by the embodiments of the present application construct an intermediate system and a kettle application in the server, so that the user terminal can send out processing based on the operation of the web browser. When requested, start the middle layer system, and obtain data processing tasks and configure scheduling rules based on processing requests. The server simulates the communication protocol between the foreground and background of the kettle application through the middle-tier system, thereby calling the interface of the kettle application to access the functions of the kettle application, so as to execute corresponding data based on data processing tasks and configuration scheduling rules in the middle-tier system processing to get the processing result. In this solution, it is only necessary to build the middle-tier system and kettle application in the server, and use the middle-tier system to access the kettle application function. The user terminal only needs to access the middle-tier system based on the web browser operation, and can use all the functions of Kettle. The performance resource of the terminal is saved.
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。The above is only a specific embodiment of the application, but the scope of protection of the application is not limited thereto. Any person familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the application. All should be covered within the scope of protection of this application. Therefore, the protection scope of the present application should be determined by the protection scope of the claims.
Claims (10)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202211236876.7A CN115525364B (en) | 2022-10-10 | 2022-10-10 | Kettle-based web data processing method, device, system and electronic device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202211236876.7A CN115525364B (en) | 2022-10-10 | 2022-10-10 | Kettle-based web data processing method, device, system and electronic device |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN115525364A true CN115525364A (en) | 2022-12-27 |
| CN115525364B CN115525364B (en) | 2025-09-12 |
Family
ID=84701337
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202211236876.7A Active CN115525364B (en) | 2022-10-10 | 2022-10-10 | Kettle-based web data processing method, device, system and electronic device |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN115525364B (en) |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20040117460A1 (en) * | 2002-12-13 | 2004-06-17 | Walsh Robert E. | Multi-user web simulator |
| CN101043522A (en) * | 2006-03-22 | 2007-09-26 | 腾讯科技(深圳)有限公司 | Web server based communication method and system |
| US20140057240A1 (en) * | 2012-08-21 | 2014-02-27 | Minapsys Software Corporation | Computer-implemented method for facilitating creation of an advanced digital communications network, and terminal, system and computer-readable medium for the same |
| CN104506616A (en) * | 2014-12-19 | 2015-04-08 | 北京奇虎科技有限公司 | Method, device and system for sending information by browser client side |
| CN112685073A (en) * | 2019-10-17 | 2021-04-20 | 天津天堰科技股份有限公司 | System architecture and system applying same |
-
2022
- 2022-10-10 CN CN202211236876.7A patent/CN115525364B/en active Active
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20040117460A1 (en) * | 2002-12-13 | 2004-06-17 | Walsh Robert E. | Multi-user web simulator |
| CN101043522A (en) * | 2006-03-22 | 2007-09-26 | 腾讯科技(深圳)有限公司 | Web server based communication method and system |
| US20140057240A1 (en) * | 2012-08-21 | 2014-02-27 | Minapsys Software Corporation | Computer-implemented method for facilitating creation of an advanced digital communications network, and terminal, system and computer-readable medium for the same |
| CN104506616A (en) * | 2014-12-19 | 2015-04-08 | 北京奇虎科技有限公司 | Method, device and system for sending information by browser client side |
| CN112685073A (en) * | 2019-10-17 | 2021-04-20 | 天津天堰科技股份有限公司 | System architecture and system applying same |
Also Published As
| Publication number | Publication date |
|---|---|
| CN115525364B (en) | 2025-09-12 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8713530B2 (en) | Test framework of visual components in a multitenant database environment | |
| US9646041B2 (en) | Testing of inactive design-time artifacts | |
| US20180349329A1 (en) | Support for non-native file types in web application environment | |
| CN110221901A (en) | Container asset creation method, apparatus, equipment and computer readable storage medium | |
| US9823919B2 (en) | Controlled deployment of application feature in mobile environment | |
| US20160048844A1 (en) | Techniques, architectures and mechanisms for management of electronic licensure | |
| WO2021013056A1 (en) | Microservice-based data processing method and apparatus, and device and readable storage medium | |
| CN110635944A (en) | A cluster network configuration method, device, electronic device and storage medium | |
| US20150161123A1 (en) | Techniques to diagnose live services | |
| CN104125308A (en) | Domain name resolution method for multi-users and domain name resolution system | |
| US20160127217A1 (en) | Business transaction context for call graph | |
| CN110083457A (en) | A kind of data capture method, device and data analysing method, device | |
| CN117857501A (en) | Method, device, equipment and storage medium for drop-disc of non-lock ring queue dns log | |
| WO2025124273A1 (en) | Security audit method for distributed database and related device | |
| CN115525364A (en) | Method, device and system for processing web data based on button and electronic equipment | |
| JP2021103563A (en) | Data mining system, method, device, electronic apparatus, and storage medium | |
| CN113127906A (en) | Unified authority management platform, method and storage medium based on C/S architecture | |
| US11010143B2 (en) | Executing formulas written using formula language | |
| CN110851518A (en) | Intellectual property case data importing method, system, electronic terminal and medium | |
| US20180341717A1 (en) | Providing instant preview of cloud based file | |
| CN110019113B (en) | Database service processing method and database server | |
| CN109977659A (en) | Weblogic automatically creates method, system, device and the storage medium of local user | |
| TWM600871U (en) | Computer program product and apparatus for arranging and executing jobs | |
| US12488093B2 (en) | GUI event authentication methods and systems using a web application firewall | |
| CN116263768B (en) | Cloud-based information push method and device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant |