【手机信息发布源码】【卡网源码分享】【公安备案查询源码】kettle源码架构

时间:2024-12-24 08:18:10 编辑:java 监控 源码 来源:大气政府源码

1.基于spring-boot的kettle调度
2.使用kettle整合新的源码三层结构的数据库,该怎么玩,架构怎么修改代码
3.利用Kettle进行数据同步(下)

kettle源码架构

基于spring-boot的kettle调度

        大家好,我是帅气小伙,由于最近公司项目辗转大数据,需要做数据抽取的工作,kettle是目前比较成熟的ETL工具,而传统的kettle客户端在任务调度这方面没有实现,于是在网上寻找开源的kettle调度项目。

        kettle-manager

        专门为kettle这款优秀的ETL工具开发的web端管理工具。貌似源码跑起来比较费劲,各种缺包,于是我为大家专门整理了一下这个项目。全maven管理的

        /konglinghai/kettle

        如果想学习kettle的可以用我的github项目运行,毕竟我在群里天天发现都有人因为无法运行项目而提问。

        kettle的集成

        由于kettle-manager是一个完整的web项目,功能也比较多,但是实际应用中,只需用到几个关键的点,就能够实现kettle的web调度。因此我们需要把kettle的调度从项目中分离出来,这样才能够更好地集成到自己的项目中去。于是我觉得将它抽出来,基于spring-boot,具体的业务也分离出来,kettle作为一个组件。

        renren-kettle

        项目说明

        项目实现功能

        项目结构

        实时websocket的接入例子

        部署指南

        如需加入项目,请邮件 @qq.com

使用kettle整合新的源码三层结构的数据库,该怎么玩,架构怎么修改代码

       资源库

       默认数据库连接为全局共有

       非资源库

       a) 将数据库连接进行共享,源码view-database connections-share

       b) 设置为全局变量,架构手机信息发布源码在kettle.properties文件中,源码将数据库连接各属性配置为变量 

利用Kettle进行数据同步(下)

       上篇内容对基于kettle的架构数据同步工程的构建进行了介绍,entrypoint.kjb作为工程执行的源码入口。

       为了减少操作成本,架构并确保数据同步过程稳定、源码安全,架构需要从更高层次进行抽象,源码创建一个简单易用的架构系统。

       以下是源码卡网源码分享应用截图:

       除了选择数据源和数据库,还增加了授权码,意味着只有授权范围内的用户才能使用该系统。

       由于是内部使用,授权用户尚未实现后台管理,直接在应用数据库中添加,选择的数据源和数据库都通过配置文件生成。

       文末会提供GitHub上的公安备案查询源码源码地址,有需要的读者可以进行二次开发。

       一、数据库设计

       数据库名称为kettle,目前包含两张表:

       1、授权用户表。表中记录的用户可以使用数据同步系统。

       2、认证查询系统源码同步记录表。记录用户的数据同步操作。

       二、程序设计

       系统简单实用,没有特别的设计。以下是重点说明的三点:

       1、数据源及其参数配置。利用游戏源码赚钱

       在application.yml配置文件中,存在如下配置:

       使用了springboot的@ConfigurationProperties注解。

       其中的DBSetting定义如下:

       通过客户端传递的参数,可以定位到相应的参数设置。

       2、集成kettle的API。

       由于kettle相关jar包放在了自建的nexus私服上,因此如果使用maven管理jar包,需要在settings.xml配置文件中做一些修改:

       其中的mirrorOf节点添加了!pentaho-releases,表示排除pentaho-releases。

       然后,在springboot工程的pom.xml中指定pentaho-releases的url。

       接下来是核心的对接代码,具体可以参考工程源码。

       3、异步执行作业

       由于Job的执行时间可能会很长,主要取决于数据量,因此一个request的来回可能会导致TIMEOUT,需要改为异步模式。

       核心思想是:启动新的线程,客户端定时轮询执行结果。

       三、总结

       本文分两篇文章介绍了如何利用kettle进行数据同步,并实现一个简易的系统,以降低操作成本和出错率。

       介绍到此,如有疑问,请留言。

       欢迎fork我的工程代码。