kettle系列-我的开源kettle管理项目[kettle-manager]介绍

kettle管理工具

  • 专门为kettle这款优秀的ETL工具开发的web端管理工具。

项目简介

  • kettle作为非常优秀的开源ETL工具得到了非常广泛的使用,一般的使用的都是使用客户端操作管理,但问题是当投入生产环境使用时,动辄上百或几百个job需要管理,这时在使用客户端管理已经很难完成了。我所知道的解决方案有用命令行的调用的,操作麻烦,总之还是很难用啦,还有就是开发web端管理工具,kettle自带了一个web端管理工具,界面极其简陋不说,还很难用,基本无法投入生产环境使用,其他没留意到还有没有较好对众多job进行管理的工具。
  • 基于以上情况,和我近两年的kettle定制开发与使用经验。我设计并开发了这款kettle web端管理工具。

项目功能

  1. job运行参数设置,可以在页面上设置作业运行参数,每次运行作业时会用设置的参数覆盖默认值,这个很多人用不上。
  2. 定时设置,操作界面与kettle中的开始控件界面一致,这个可能是最优用的功能之一。
  3. 作业的运行与停止,核心功能就不说了。
  4. 实时查看作业运行日志,最大显示行数可以配置,这个功能看起来不起眼,实际应该是很有用的。
  5. 后台有一个作业专门完成将运行的作业日志写入日志文件,文件按天分文件夹存放,日志文件大小可以配置,若觉得占用空间,可以设计一个作业进行定时清理以前的日志文件,后续会提供该作业。也可以配置为不写日志文件。
  6. 作业的运行状态会定时反映到管理界面,我们可以通过多种条件筛选我们需要的作业进行批量运行或停止。
  7. 本系统是基于数据库资源库设计的,暂时不考虑支持文件资源库。
  8. 本系统还附带了一个kettle插件,类似kettle已有的自定义类控件(可以在转换中写java代码)。该控件的设计时为了避免每一个需求都去开发一个kettle控件,从后台元数据管理到操作界面设计。该控件采用灵活的JSON传递参数,然后继承一个基类就可以完成一个任务了,就是说基于该控件,只需要开发一个具体的操作类就可以了。有兴趣可以看一下。

界面截图

使用说明

  1. 从附录地址下载打包好的软件。
  2. 第一次使用,在oracle中心间用户km,然后将doc\sql中的dmp导入km用户中,再执行doc\sql\myNote.sql中的脚本,修改kettle资源库表结构。
  3. 根据实际情况设置环境变量:org.osjava.sj.root=E:\kettle\simple-jndi。这个变量指定jndi文件位置,然后将文件:doc\杂物\jdbc.properties 拷贝到该目录,根据实际情况修改内容。
  4. 将日志和运行状态修改的作业:doc\杂物\作业日志记录.kjb 导入你的资源库。
  5. 自行修改日志配置文件:log4j.xml,可以调整日志目录等。
  6. default中是配置文件,需根据实际情况修改。
  7. 可以修改start.bat文件内容以修改使用的端口。
  8. 双击运行start.bat脚本启动项目。
  9. 运行正常后就可以访问了,默认地址是:http://127.0.0.1:85 ,若运行时修改了端口,这里对应修改即可。

开发说明

  1. 一般都不需要自己开发,直接使用就行,若有bug或新功能需求,可以发邮件给我。
  2. 本项目基于开源项目EOVA开发:http://git.oschina.net/eova/eova。
  3. 若想进一步扩展功能,建议先搭建kettle开发环境,可以参考我的博文:http://www.cnblogs.com/majinju/p/4455107.html
  4. 我的博客中还有多篇文章介绍kettle的源码等,可以作为参考。

附录

  1. 项目地址:https://github.com/ma459006574/kettle-manager
  2. 我的邮箱:[email protected]。
  3. 已经打包好的软件下载
时间: 2024-08-22 14:49:50

kettle系列-我的开源kettle管理项目[kettle-manager]介绍的相关文章

kettle系列-1.kettle源码获取与运行

第一次写博客,心里有点小激动,肯定有很多需要改进的地方,望海涵. kettle算是我相对较为深入研究过的开源软件了,也是我最喜欢的开源软件之一,它可以完成工作中很多体力劳动,在ETL数据抽取方面得到了广泛的使用.我本身对kettle的各个控件使用也不是很熟悉,只会使用最常见的部分控件,就是这样简单的使用也被它的美深深的吸引住了. 好了,进入正题,这里假设你熟悉java开发.git一般使用.kettle一般使用.kettle源码之前托管在kettle官方的svn上,后来迁移到了github上,在g

kettle系列-[KettleUtil]kettle插件,类似kettle的自定义java类控件

该kettle插件功能类似kettle现有的定义java类插件,自定java类插件主要是支持在kettle中直接编写java代码实现自定特殊功能,而本控件主要是将自定义代码转移到jar包,就是说自定义功能的实现改为在eclipse等ide中开发. 设计本插件的原因是直接在kettle中写java代码是很不容易的事,开发体验与eclipse差得远,java语法还要受到限制,调试麻烦.实现点简单的逻辑还行,稍微复杂一点就比较麻烦,需要对java和kettle相关接口很熟悉.而简单的功能可以采用jav

Kettle源码学习(一)——把Kettle项目跑起来

kettle(pentaho data integration),是一款开源的C/S版的ETL工具,最近打算学习一下kettle源码,并自己写一个mini kettle,并改造成基于事件触发的流处理模型,前端欲支持桌面版和Web版. 首先,首要的工作是将kettle工程构建起来,达到能边跑看调试来观察学习源码.笔者采用的是自己构建一个项目,将kettle的相关模块代码和资源文件导入,并添加依赖库的方式,自认为有些不爽,但由于官网github下下来的工程,采用的是ivy构建工具,笔者没办法把依赖都

kettle系列教程一

 1.kettle介绍 kettle是一个ETL(Extract, Transform and Load抽取.转换.载入)工具,ETL工具在数据仓库项目使用非常频繁,kettle也可以应用在以下一些场景: 在不同应用或数据库之间整合数据 把数据库中的数据导出到文本文件 大批量数据装载入数据库 数据清洗 集成应用相关项目是个使用 kettle使用非常简单,通过图形界面设计实现做什么业务,无需写代码去实现,因此,kettle是以面向元数据来设计: kettle支持很多种输入和输出格式,包括文本文

kettle系列教程二

 kettle系列教程二 1.Hello World 示例 通过这个例子,介绍kettle的一些基础知识及应用: n 使用Spoon工具 n 转换的创建 n 步骤及连线 n 预定义变量 n 在Spoon中预览和执行 n 使用pan工具在终端窗口执行转换 概述 我们要实现的目标是:通过一个包含人名称的CSV文件,创建一个XML文件,内容是针对每个人添加上问候. 如果csv文件内容如下: last_name, name Suarez,Maria Guimaraes,Joao Rush,Jenni

九州云重磅推出基于Rocky版本全新开源云管理平台

10月10日,以"拳拳匠心 赋能未来"为主题的九州云全新开源云管理平台 Animbus7.0 线上发布会正式拉开序幕.九州云CEO张淳.九州云COO王忠伟.九州云创始人&副总裁李开.九州云技术总监黄舒泉共四位重量级嘉宾齐聚直播间,首次全面解读九州云"一主两翼三航道"的最新产品矩阵,协力向各行业专家.用户.合作伙伴.媒体等传递OpenStack开源的价值,赋能企业数字化转型.此次发布会直播期间超2000人次共同见证了这一重要时刻. 全球首发,社区同步 8月31

从头开始 启动开源电商项目jShop

1. 引言 干了三年C#, 有了转Java 的念想,所以尝试学习一下java web,java语法本身和C#没有太多的差别,所以打算看看开源的java项目,开源的Java项目还是非常非常多的,曾经看了点 Nopcommerce的东西,确实设计的巧妙,那么就从电商项目开始,jshop是jeeshop的分支版本,在技术框架上使用spring mvc替代struts2, 页面使用freemarker替代jsp,代码可以在oschina上找到 http://git.oschina.net/dinguan

Maven管理项目架包

最近一直在用Maven管理项目的架包,从而发现了几个不错的官方或者非官方的网站. http://mvnrepository.com/artifact/com.ning  这个是我刚刚用来找HTTP开发架包时候发现的,ning的官网好像对架包收费了,这个网站是提供免费的 http://netty.io/downloads.html  下载netty,关于I/O流的架包 http://www.apache.org/  apache的官网,底部的 APACHE PROJECT LIST 包括了所有Ap

ASP.NET MVC+EF框架+EasyUI实现权限管理系列(6)- EF上下文实例管理

原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(6)- EF上下文实例管理 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)   (1):框架搭建    (2):数据库访问层的设计Demo    (3):面向接口编程   (4 ):业务逻辑层的封装  (5):前台Jquery easyUI实现 前言:通过前面的五篇博客我们已经对权限系统的后台架构进行了详细的说明,那么我再前面的博客中也说到了我们的后台架构还会再改的,我准备这段时间我们继续完善我们的后台