CN110196876A - 一种基于Web管理和调度Kettle抽数工具的方法 - Google Patents
一种基于Web管理和调度Kettle抽数工具的方法 Download PDFInfo
- Publication number
- CN110196876A CN110196876A CN201910485256.9A CN201910485256A CN110196876A CN 110196876 A CN110196876 A CN 110196876A CN 201910485256 A CN201910485256 A CN 201910485256A CN 110196876 A CN110196876 A CN 110196876A
- Authority
- CN
- China
- Prior art keywords
- kettle
- task
- web
- scheduling
- monitoring
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000012544 monitoring process Methods 0.000 claims abstract description 37
- 238000006243 chemical reaction Methods 0.000 claims abstract description 26
- 239000010453 quartz Substances 0.000 claims abstract description 5
- VYPSYNLAJGMNEJ-UHFFFAOYSA-N silicon dioxide Inorganic materials O=[Si]=O VYPSYNLAJGMNEJ-UHFFFAOYSA-N 0.000 claims abstract description 5
- 238000012986 modification Methods 0.000 claims description 7
- 230000004048 modification Effects 0.000 claims description 7
- 238000012217 deletion Methods 0.000 claims description 6
- 230000037430 deletion Effects 0.000 claims description 6
- 230000000977 initiatory effect Effects 0.000 claims description 3
- 235000013399 edible fruits Nutrition 0.000 claims 1
- 238000011161 development Methods 0.000 description 3
- 238000004140 cleaning Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000012856 packing Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012372 quality testing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/254—Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明特别涉及一种基于Web管理和调度Kettle抽数工具的方法。该基于Web管理和调度Kettle抽数工具的方法,将Kettle源码集成到包含前端架构的Web应用中,通过适配器模式开发出能够正常调用Kettle API类的方法来执行转换和作业,并且使用time‑quartz框架完成调度工作。该基于Web管理和调度Kettle抽数工具的方法,使用Web页面就能够管理和调度Kettle任务,不但减少了Kettle对自身GUI的依赖,还减少了系统环境对使用Kettle便利性的影响,同时支持对Kettle调用日志的监控,使开发人员能够更精准的监控Kettle任务,能够随时掌握Kettle工具中各个任务的工作状态,能够保证Kettle工具的稳定运行。
Description
技术领域
本发明涉及Web管理Kettle工具技术领域,特别涉及一种基于Web管理和调度Kettle抽数工具的方法。
背景技术
信息是现代企业的重要资源,是企业运用科学管理、决策分析的基础。目前,大多数企业花费大量的资金和时间来构建联机事务处理OLTP的业务系统和办公自动化系统,用来记录事务处理的各种相关数据。据统计,数据量每2~3年时间就会成倍增长,这些数据蕴含着巨大的商业价值,而企业所关注的通常只占在总数据量的2%~4%左右。因此,企业仍然没有最大化地利用已存在的数据资源,以致于浪费了更多的时间和资金,也失去制定关键商业决策的最佳契机。于是,企业如何通过各种技术手段,并把数据转换为信息、知识,已经成了提高其核心竞争力的主要瓶颈。而ETL(Extraction-Transformation-Loading,数据抽取、转换和加载)工具则是主要的一个技术手段。
ETL是数据抽取(Extract)、清洗(Cleaning)、转换(Transform)、装载(Load)的过程,是构建数据仓库的重要一环。用户从数据源抽取出所需的数据,经过数据清洗,最终按照预先定义好的数据仓库模型,将数据加载到数据仓库中去。
ETL工具负责将分布的、异构数据源中的数据如关系数据、平面数据文件等抽取到临时中间层后进行清洗、转换、集成,最后加载到数据仓库或数据集市中,成为联机分析处理、数据挖掘的基础。ETL是BI(Business Intelligence,商业智能)项目最重要的一个环节,通常情况下ETL会花掉整个项目的1/3的时间,ETL工具设计的好坏直接关接到BI项目的成败。ETL工具也是一个长期的过程,只有不断的发现问题并解决问题,才能使ETL工具运行效率更高,为项目后期开发提供准确的数据。
为了帮助企业或行业应用用户处理经常遇到的各种数据的处理,转换和迁移,Kettle工具应运而生。
Kettle工具是为了解决数据抽取而产生的一款非常优秀的开源ETL工具。Kettle工具可以在Window环境、Linux环境和Unix环境中运行,支持图形化的GUI(Graphical UserInterface,图形用户界面)设计界面,然后可以以工作流的形式流转,在做一些简单或复杂的数据抽取、质量检测、数据清洗、数据转换、数据过滤等方面有着比较稳定的表现。更重要的是,用户通过熟练的应用Kettle工具,能够减少非常多的研发工作量,提高用户的工作效率。
但是,Kettle工具在使用过程中也有很多不便利的地方,比如只支持桌面版的GUI,没有Web页面来管理和调度Kettle任务。如果安装部署到linux环境中,没有安装桌面工具的linux系统则无法方便快捷的使用Kettle。Kettle工具急需一个专业的Web调度页面来管理和调度Kettle任务。
基于上述情况,本发明设计了一种基于Web管理和调度Kettle抽数工具的方法。
发明内容
本发明为了弥补现有技术的缺陷,提供了一种简单高效的基于Web管理和调度Kettle抽数工具的方法。
本发明是通过如下技术方案实现的:
一种基于Web管理和调度Kettle抽数工具的方法,其特征在于:由于Kettle抽数工具本身为开源项目,源代码共享,因而可以将Kettle源码集成到包含前端架构的Web应用中,通过适配器模式开发出能够正常调用Kettle API((Application ProgrammingInterface,应用程序编程接口)类的方法来执行转换和作业,并且使用time-quartz框架完成调度工作。
所述Web应用前端采用bootstrap,后端采用spring boot+spring mvc+spring+mybatis,数据库使用MySQL数据库。
所述Web应用打包部署到Tomcat服务器后,可以通过浏览器Web页面直接调度Kettle任务,管理作业转换,监控作业状态,并实时监控Kettle调度任务,邮件通知工作人员数据转换结果,将Kettle任务状态及时反馈给工作人员,使工作人员能够第一时间掌握数据转换结果。
当一个任务,包括作业和转换,启动后,这个任务就处于系统的监控状态下;所述Web应用UI(User Interface用户界面)界面中,首页用于显示监控信息;查看详情页面可以查看每次执行任务的日志及执行时间,且日志可以下载。
所述监控信息包括总监控任务数,监控作业数,监控转换数,转换监控记录,作业监控记录以及一个月内作业和转换的监控状况。
所述Web应用UI(User Interface用户界面)界面中,首页仅显示前10条转换监控记录和前10条作业监控记录。
所述Web应用对Kettle抽数工具的管理,包括数据库资源库管理,作业定时任务管理,执行策略管理和对处于运行的作业的作业监控管理。
所述数据库资源库管理包括新增,修改和删除数据库资源库;
所述作业定时任务管理包括新增,修改和删除作业定时任务,启动作业定时任务后作业即开始运行;
所述执行策略管理包括新增,修改和删除执行策略或定时执行策略;
所述作业监控管理包括监控总作业任务数,总执行成功次数,总执行失败次数以及每个作业的成功次数和失败次数。
本发明的有益效果是:该基于Web管理和调度Kettle抽数工具的方法,使用Web页面就能够管理和调度Kettle任务,不但减少了Kettle对自身GUI的依赖,还减少了系统环境对使用Kettle便利性的影响,同时支持对Kettle调用日志的监控,使开发人员能够更精准的监控Kettle任务,能够随时掌握Kettle工具中各个任务的工作状态,能够保证Kettle工具的稳定运行。
具体实施方式
为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合实施例,对本发明进行详细的说明。应当说明的是,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
该基于Web管理和调度Kettle抽数工具的方法,由于Kettle抽数工具本身为开源项目,源代码共享,因而可以将Kettle源码集成到包含前端架构的Web应用中,通过适配器模式开发出能够正常调用Kettle API((Application Programming Interface,应用程序编程接口)类的方法来执行转换和作业,并且使用time-quartz框架完成调度工作。
time-quartz框架是一个定时任务框架,可以实现异常灵活的定时任务。开发人员只要编写少量的代码就可以实现“每隔1小时执行”、“每天22点执行”、“每月18号的下午执行8次”等各种定时任务。
所述Web应用前端采用bootstrap,后端采用spring boot+spring mvc+spring+mybatis,数据库使用MySQL数据库。
Bootstrap是Twitter推出的一个开源的用于web前端开发的工具包,是基于jQuery框架开发的。它在jQuery框架的基础上进行了更为个性化和人性化的完善,形成一套自己独有的网站风格,并兼容大部分jQuery插件。
所述Web应用打包部署到Tomcat服务器后,可以通过浏览器Web页面直接调度Kettle任务,管理作业转换,监控作业状态,并实时监控Kettle调度任务,邮件通知工作人员数据转换结果,将Kettle任务状态及时反馈给工作人员,使工作人员能够第一时间掌握数据转换结果。
Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。
当一个任务,包括作业和转换,启动后,这个任务就处于系统的监控状态下;所述Web应用UI(User Interface用户界面)界面中,首页用于显示监控信息;查看详情页面可以查看每次执行任务的日志及执行时间,且日志可以下载。
所述监控信息包括总监控任务数,监控作业数,监控转换数,转换监控记录,作业监控记录以及一个月内作业和转换的监控状况。
所述Web应用UI(User Interface用户界面)界面中,首页仅显示前10条转换监控记录和前10条作业监控记录。
所述Web应用对Kettle抽数工具的管理,包括数据库资源库管理,作业定时任务管理,执行策略管理和对处于运行的作业的作业监控管理。
所述数据库资源库管理包括新增,修改和删除数据库资源库;
所述作业定时任务管理包括新增,修改和删除作业定时任务,启动作业定时任务后作业即开始运行;
所述执行策略管理包括新增,修改和删除执行策略或定时执行策略;
所述作业监控管理包括监控总作业任务数,总执行成功次数,总执行失败次数以及每个作业的成功次数和失败次数。
该基于Web管理和调度Kettle抽数工具的方法,使用Web页面就能够管理和调度Kettle任务,不但减少了Kettle对自身GUI的依赖,还减少了系统环境对使用Kettle便利性的影响,同时支持对Kettle调用日志的监控,使开发人员能够更精准的监控Kettle任务,能够随时掌握Kettle工具中各个任务的工作状态,能够保证Kettle工具的稳定运行。
以上所述的实施例,只是本发明具体实施方式的一种,本领域的技术人员在本发明技术方案范围内进行的通常变化和替换都应包含在本发明的保护范围内。
Claims (8)
1.一种基于Web管理和调度Kettle抽数工具的方法,其特征在于:由于Kettle抽数工具本身为开源项目,源代码共享,因而可以将Kettle源码集成到包含前端架构的Web应用中,通过适配器模式开发出能够正常调用Kettle API类的方法来执行转换和作业,并且使用time-quartz框架完成调度工作。
2.根据权利要求1所述的基于Web管理和调度Kettle抽数工具的方法,其特征在于:所述Web应用前端采用bootstrap,后端采用spring boot+spring mvc+spring+mybatis,数据库使用MySQL数据库。
3.根据权利要求2所述的基于Web管理和调度Kettle抽数工具的方法,其特征在于:所述Web应用打包部署到Tomcat服务器后,可以通过浏览器Web页面直接调度Kettle任务,管理作业转换,监控作业状态,并实时监控Kettle调度任务,邮件通知工作人员数据转换结果,将Kettle任务状态及时反馈给工作人员,使工作人员能够第一时间掌握数据转换结果。
4.根据权利要求3所述的基于Web管理和调度Kettle抽数工具的方法,其特征在于:当一个任务,包括作业和转换,启动后,这个任务就处于系统的监控状态下;所述Web应用UI界面中,首页用于显示监控信息;查看详情页面可以查看每次执行任务的日志及执行时间,且日志可以下载。
5.根据权利要求4所述的基于Web管理和调度Kettle抽数工具的方法,其特征在于:所述监控信息包括总监控任务数,监控作业数,监控转换数,转换监控记录,作业监控记录以及一个月内作业和转换的监控状况。
6.根据权利要求5所述的基于Web管理和调度Kettle抽数工具的方法,其特征在于:所述Web应用UI界面中,首页仅显示前10条转换监控记录和前10条作业监控记录。
7.根据权利要求3所述的基于Web管理和调度Kettle抽数工具的方法,其特征在于:所述Web应用对Kettle抽数工具的管理,包括数据库资源库管理,作业定时任务管理,执行策略管理和对处于运行的作业的作业监控管理。
8.根据权利要求7所述的基于Web管理和调度Kettle抽数工具的方法,其特征在于:所述数据库资源库管理包括新增,修改和删除数据库资源库;所述作业定时任务管理包括新增,修改和删除作业定时任务,启动作业定时任务后作业即开始运行;所述执行策略管理包括新增,修改和删除执行策略或定时执行策略;所述作业监控管理包括监控总作业任务数,总执行成功次数,总执行失败次数以及每个作业的成功次数和失败次数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910485256.9A CN110196876A (zh) | 2019-06-05 | 2019-06-05 | 一种基于Web管理和调度Kettle抽数工具的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910485256.9A CN110196876A (zh) | 2019-06-05 | 2019-06-05 | 一种基于Web管理和调度Kettle抽数工具的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110196876A true CN110196876A (zh) | 2019-09-03 |
Family
ID=67753914
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910485256.9A Pending CN110196876A (zh) | 2019-06-05 | 2019-06-05 | 一种基于Web管理和调度Kettle抽数工具的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110196876A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110633271A (zh) * | 2019-11-20 | 2019-12-31 | 紫光云(南京)数字技术有限公司 | 一种基于json的Hbase到mysql的数据抽取方法 |
CN110888636A (zh) * | 2019-12-03 | 2020-03-17 | 中电工业互联网有限公司 | 一种基于Kettle的ETL Web应用系统架构方法 |
CN113297312A (zh) * | 2021-06-22 | 2021-08-24 | 中关村科学城城市大脑股份有限公司 | 一种基于bs和cs架构的数据etl构建方法和系统 |
CN114564371A (zh) * | 2022-04-30 | 2022-05-31 | 四川野马科技有限公司 | 一种应用于Kettle的运行监控方法及其系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107992552A (zh) * | 2017-11-28 | 2018-05-04 | 南京莱斯信息技术股份有限公司 | 一种数据交换平台及数据交换方法 |
CN108629052A (zh) * | 2018-05-21 | 2018-10-09 | 平安科技(深圳)有限公司 | Kettle任务调度方法、系统、计算机设备和存储介质 |
CN108846076A (zh) * | 2018-06-08 | 2018-11-20 | 山大地纬软件股份有限公司 | 支持接口适配的海量多源异构数据etl方法及系统 |
CN109286681A (zh) * | 2018-11-08 | 2019-01-29 | 合肥帧讯软件有限公司 | 数据交换服务软件 |
-
2019
- 2019-06-05 CN CN201910485256.9A patent/CN110196876A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107992552A (zh) * | 2017-11-28 | 2018-05-04 | 南京莱斯信息技术股份有限公司 | 一种数据交换平台及数据交换方法 |
CN108629052A (zh) * | 2018-05-21 | 2018-10-09 | 平安科技(深圳)有限公司 | Kettle任务调度方法、系统、计算机设备和存储介质 |
CN108846076A (zh) * | 2018-06-08 | 2018-11-20 | 山大地纬软件股份有限公司 | 支持接口适配的海量多源异构数据etl方法及系统 |
CN109286681A (zh) * | 2018-11-08 | 2019-01-29 | 合肥帧讯软件有限公司 | 数据交换服务软件 |
Non-Patent Citations (1)
Title |
---|
王文峰等: "基于Zookeeper综合任务调度平台的设计与应用", 《信息技术》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110633271A (zh) * | 2019-11-20 | 2019-12-31 | 紫光云(南京)数字技术有限公司 | 一种基于json的Hbase到mysql的数据抽取方法 |
CN110888636A (zh) * | 2019-12-03 | 2020-03-17 | 中电工业互联网有限公司 | 一种基于Kettle的ETL Web应用系统架构方法 |
CN113297312A (zh) * | 2021-06-22 | 2021-08-24 | 中关村科学城城市大脑股份有限公司 | 一种基于bs和cs架构的数据etl构建方法和系统 |
CN114564371A (zh) * | 2022-04-30 | 2022-05-31 | 四川野马科技有限公司 | 一种应用于Kettle的运行监控方法及其系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110196876A (zh) | 一种基于Web管理和调度Kettle抽数工具的方法 | |
Günther et al. | A Generic Import Framework for Process Event Logs: Industrial Paper | |
US11663257B2 (en) | Design-time information based on run-time artifacts in transient cloud-based distributed computing clusters | |
CA2690081C (en) | Migration of legacy applications | |
CN111263938A (zh) | 基于规则的自主数据库云服务框架 | |
US6996807B1 (en) | Consolidation and reduction of usage data | |
US8938719B2 (en) | System and method for performance assurance of applications | |
US20190158420A1 (en) | Mainframe migration tools | |
US20110283266A1 (en) | Software Performance Profiling in a Multi-Tenant Environment | |
US9513874B2 (en) | Enterprise computing platform with support for editing documents via logical views | |
US11144424B2 (en) | System and method for recording the beginning and ending of job level activity in a mainframe computing environment | |
CN104536819A (zh) | 基于web服务的任务调度方法 | |
KR20220079837A (ko) | 로봇 프로세스 자동화를 위한 자동 분석, 우선순위 지정, 및 로봇 생성 | |
CN102663543A (zh) | 一种用于企业数据统一平台的调度系统 | |
CN110162365A (zh) | 一种自动操作sap业务软件的方法和系统 | |
De et al. | Task management in the new ATLAS production system | |
WO2021037686A1 (en) | Archiving data in a delta store | |
CA2950686C (en) | System and method for dynamic collection of system management data in a mainframe computing environment | |
CN109710679A (zh) | 数据抽取方法及装置 | |
Schneider | SAP Performance Optimization Guide | |
Maplesden et al. | Performance analysis using subsuming methods: An industrial case study | |
WO2023007237A1 (en) | System and method for batch and scheduler migration in an application environment migration | |
US10146518B1 (en) | Smart retention policy appliance for legal compliance | |
Gupta | A complete reference for informatica power center ETL tool | |
Breitmayer et al. | Deriving event logs from legacy software systems |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190903 |