博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
一、 kettle开发、上线常见问题以及防错规范步骤
阅读量:4326 次
发布时间:2019-06-06

本文共 1273 字,大约阅读时间需要 4 分钟。

 此篇说明对应的kettle版本是6.1,实际使用时7.x应该也是一样的。

一、    kettle开发流程(规范步骤,防止出错)

(一)       Kettle设置检查

资源库连接

如果不加一下配置项,数据转换后中文会出现乱码,很难处理。

 

 

本地连接资源库:配置项

defaultFetchSize 500

useCursorFetch true

characterEncoding UTF-8

useUnicode true

 

 

(二)       Kettle注意事项

1、每个trans、jobs的名称都应该和文件名一致。在使用资源库的时候,不是按照文件名生成对象,而是按照名称属性生成。{所以如果有名称属性相同的就会冲突}

 

 

 

 

 

 

2、资源库方式trans相对job的位置只能通过图中下面的一种方式(相对位置)。而不能通过设置trans文件位置的方式(因为是资源库,并不是真的文件)。

 

 

 

 

(三)       资源库方式开发

1、从线上导出一个job(包含了数据库的连接等信息),直接导出成整资源库的文件。

2、把这个文件资源库导入到03测试库。

3、把这个数据库连接信息dataCenters对应的ip改成04上的开发库(只改一个ip,其他连接信息是一致的)。

4、在这个库上进行相关开发操作。

 

 

二、    上线流程

5、开发完成需要上线,直接把前面的资源库的ip地址换成线上ip地址即可。

6、把开发库上其他的东西都删掉,只保留新开发的内容。

7、然后导出成整个文件的资源库。把这个文件资源库导入到线上。

 

(一)       安全流程

为了防止开发过程当中忘了改ip地址,直接连到生产库去,或者把生产库上的连接地址冲掉了。这里加上一个流程:

每次开发:从线上导资源库到本地先导入到03的预发布库去。改完ip地址再导入到04的开发库去。

 

每次上线的话:反过来。先导入到03库,删除不必要的东西,改完ip地址再导入到线上环境

 

 

(二)       验证流程

由于kettle的特殊性。需要在任何改动后做验证。

1、 每次修改、新增了kettle任务。必须要把job、trans都一步一步点开。查看是否能在job里顺利找到子trans。同时查看数据库连接信息是否正确(有没有被开发库的设置冲掉)。

2、 给发新增的任务(job或者trans)在jenkins中增加对应的调度。(这里建议调度名称和调度要生成数据的表名一致)要有详细的备注。

4、 每次修改、新增了kettle任务之后,都要在表结构同步好之后,jenkins中先构建一次任务,看看kettle任务是否能够执行成功。

5、 任务跑成功之后,要连到生产库查看对应数据是否正确。

6、 启动web后要点开相应功能查看web展示上是否正确。

 

 

(三)       迁移注意事项

 

如果是新部署的kettle

 

kettle的资源库,需要用图形界面打开,手动再设置一遍(要先删除/root/.kettle/目录下的配置文件,重新配置;然后会重新生成配置文件,这时才能正确连上资源库)

 

转载于:https://www.cnblogs.com/double-kill/p/8133972.html

你可能感兴趣的文章
【NOIP 模拟赛】Evensgn 剪树枝 树形dp
查看>>
java学习笔记④MySql数据库--01/02 database table 数据的增删改
查看>>
两台电脑如何实现共享文件
查看>>
组合模式Composite
查看>>
程序员最想得到的十大证件,你最想得到哪个?
查看>>
我的第一篇CBBLOGS博客
查看>>
【MyBean调试笔记】接口的使用和清理
查看>>
07 js自定义函数
查看>>
jQueru中数据交换格式XML和JSON对比
查看>>
form表单序列化后的数据转json对象
查看>>
[PYTHON]一个简单的单元測试框架
查看>>
iOS开发网络篇—XML数据的解析
查看>>
[BZOJ4303]数列
查看>>
一般处理程序在VS2012中打开问题
查看>>
C语言中的++和--
查看>>
thinkphp3.2.3入口文件详解
查看>>
POJ 1141 Brackets Sequence
查看>>
Ubuntu 18.04 root 使用ssh密钥远程登陆
查看>>
Servlet和JSP的异同。
查看>>
虚拟机centOs Linux与Windows之间的文件传输
查看>>