数据etl常用工具kettle。

1、说明:

kettle-数据源配置化:是指kettle的数据源连接信息全部或者部分从配置文件中读取(如果是数据库的资源库,那么资源库也可以配置化)。

2、优点:

1、这样程序本身就和kettle的业务解绑了,开发、生产采用不同配置;每次开发完成就可以直接导入线上,再也不用手动去修改连接信息(少改少错,不改就不错)。

2、可以对开发人员保密线上的连接信息,保证数据安全。

在开发和部署的时候不用再关心线上、开发、测试环境的数据源不一样,每次上线需要手动修改的麻烦。

3、资源库的方式有2种:

(1)、文件方式。方便迁移、分布式环境下需要自己解决文件同步。

(2)、数据库方式。会有数据库锁的问题。不用维护文件同步问题。集群部署支持好。

(3)、读取配置文件的方式,对上面2中资源库类型都是支持的,没有影响。

                          数据库方式的资源库中的数据源连接信息,也可以从配置文件读取(共享的数据源、非共享的数据源都可以)。

4、kettle配置文件的位置:

windows 默认在:C:\Users\用户\.kettle

linux 默认在:/root/.kettle/

5、配置文件:

下图是kettle的三个核心配置文件。依次是配置信息文件、资源库配置文件、共享数据源配置文件

6、我们在kettle界面上看看具体的配置是怎么样的

(1)、资源库的连接信息:从配置文件中读取

(2)、数据源的连接信息:从配置文件中读取

(3)、hadoop的连接信息:从配置文件中读取

7、下面分别看一下三个文件的内容

(1)、配置信息文件

这里特别说明:配置好之后,线上、线下只有这个配置文件的内容不一样。其他配置都是一样的。这样在开发好之后可以直接导入线上。连数据源、资源库的连接名都不用改。

(2)、资源库配置文件

(3)、共享数据源配置文件

如果没有配置共享数据源,则这个文件是空的,如果有,跟上图的连接信息类似。

kettle-数据源配置化-开发、生产采用不同配置的更多相关文章

  1. iOS组件化开发一本地环境配置(一)

    首先我们要使用pod支持组件化开发 解决CocoaPods慢的方案(gem和pod repo换源) gem换源 $ gem sources --remove https://rubygems.org/ ...

  2. eclipse配置c开发环境

    // */ // ]]> eclipse配置c开发环境 1. eclipse配置c开发环境 1.1. 缘起 1.2. cygwin 1.3. eclipse 1.4. 配置 1 eclipse配 ...

  3. 使用纯注解与配置类开发springMVC项目,去掉xml配置

    最近拜读了杨开振老师的书,深入浅出springBoot2.x,挖掘了很多以前被忽略的知识, 开发一年多,工作中一直用传统springmvc的开发,基本都还是用的传统的xml配置开发, 看到书里有提到, ...

  4. kettle系列-4.kettle定制化开发工具类

    要说的话这个工具类还是比较简单的,每个方法体都比较小,但用起来还是可以的,把开发中一些常用的步骤封装了下,不用去kettle源码中找相关操作的具体实现了. 算了废话不多了,直接上重点,代码如下: im ...

  5. Spring.profile实现开发、测试和生产环境的配置和切换

    软件开发过程一般涉及“开发 -> 测试 -> 部署上线”多个阶段,每个阶段的环境的配置参数会有不同,如数据源,文件路径等.为避免每次切换环境时都要进行参数配置等繁琐的操作,可以通过spri ...

  6. 【Spring】使用@Profile注解实现开发、测试和生产环境的配置和切换,看完这篇我彻底会了!!

    写在前面 在实际的企业开发环境中,往往都会将环境分为:开发环境.测试环境和生产环境,而每个环境基本上都是互相隔离的,也就是说,开发环境.测试环境和生产环境是互不相通的.在以前的开发过程中,如果开发人员 ...

  7. 面向UI编程:ui.js 1.0 粗糙版本发布,分布式开发+容器化+组件化+配置化框架,从无到有的艰难创造

    时隔第一次被UI思路激励,到现在1.0的粗糙版本发布,掐指一算整整半年了.半年之间,有些细节不断推翻重做,再推翻再重做.时隔今日,终于能先出来个东西了,这个版本很粗糙,主体功能大概能实现了,但是还是有 ...

  8. 分离Webpack开发环境与生产环境的配置

    这是Webpack+React系列配置过程记录的第五篇.其他内容请参考: 第一篇:使用webpack.babel.react.antdesign配置单页面应用开发环境 第二篇:使用react-rout ...

  9. Webpack配置区分开发环境和生产环境

    在项目开发的时候,我们通常会将程序分为开发环境和生产环境(或者叫线上环境),开发环境通常指的是我们正在开发的这个阶段所需要的一些环境配置,也就是方便我们开发人员调试开发的一种环境:生产环境通常指的是我 ...

随机推荐

  1. hdu 1150 Machine Schedule 最小覆盖点集

    题意:x,y两台机器各在一边,分别有模式x0 x1 x2 ... xn, y0 y1 y2 ... ym, 现在对给定K个任务,每个任务可以用xi模式或者yj模式完成,同时变换一次模式需要重新启动一次 ...

  2. Python处理json字符串转化为字典

    有一个需求,需要用python把json字符串转化为字典 inp_str = " {'k1':123, 'k2': '345','k3','ares'} " import json ...

  3. webpack入门之打包html,css,js,img(一)

    webpack到底是什么,网上一大堆介绍的东西,越看越不知道说的什么,所以今天打算自己来记录一下这段时间学习webpack的成果, webpack就是打包文件用的,html,css,js,img,为什 ...

  4. arguments,caller,callee之理解

    arguments对象代表正在执行的函数和调用它的函数的参数,arguments是一个不是数组但类似 数组的对象,它具有同数组一样的访问性质及方式,可以由arguments[n]来访问对应单个参数的值 ...

  5. JavaWeb学习总结(一)——JavaWeb开发入门(转)

    转载自 http://www.cnblogs.com/xdp-gacl/p/3729033.html 一.基本概念 1.1.WEB开发的相关知识 WEB,在英语中web即表示网页的意思,它用于表示In ...

  6. opencv批处理提取图像的特征

    ____________________________________________________________________________________________________ ...

  7. 使用milang出错:LookupError: unknown encoding: idna

    今天同事安装了milang,结果发现例如以下出错: Traceback (most recent call last): File "F:\vmid.py", line 11, i ...

  8. Configuring WS-Security UsernameToken and WS-SecureConversation (Symmetric Connection Creation)

    Context This procedure provides a detailed process of all necessary steps to secure Web Services wit ...

  9. Android中build target,minSdkVersion,targetSdkVersion,maxSdkVersion概念区分

    问题引入:   有一个下载功能,在Android 5.x设备上运行正常,Android 6.x上运行异常,现象是下载进度卡在0%.   问题排查发现,是sdk的target设置为23导致,修改为21则 ...

  10. java基础数据类型包装类

    */ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...