一、 kettle开发、上线常见问题以及防错规范步骤
此篇说明对应的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/目录下的配置文件,重新配置;然后会重新生成配置文件,这时才能正确连上资源库)
一、 kettle开发、上线常见问题以及防错规范步骤的更多相关文章
- 开源ETL工具kettle系列之常见问题
开源ETL工具kettle系列之常见问题 摘要:本文主要介绍使用kettle设计一些ETL任务时一些常见问题,这些问题大部分都不在官方FAQ上,你可以在kettle的论坛上找到一些问题的答案 1. J ...
- [Git] 拉开发分支的代码报错
Git拉开发分支的代码报错: fatal: The remote end hung up unexpectedly fatal: early EOF fatal: index-pack failed ...
- C#复习笔记(4)--C#3:革新写代码的方式(用智能的编译器来防错)
用智能的编译器来防错 本章的主要内容: 自动实现的属性:编写由字段直接支持的简单属性, 不再显得臃肿不堪: 隐式类型的局部变量:根据初始值推断类型,简化局部变量的声明: 对象和集合初始化程序:用一个表 ...
- 进阶篇:4.3)DFA设计指南:防错设计( 防呆设计)
本章目的:每一个装配步骤都有设计防错. 1.前言 关于防错设计,作者有想说的话: 1)防错设计是DFA重要的一条.因为太过重要,作者单独开一分章写! 2)只有理解了设计防错的重要,才会去设计防错特征. ...
- 2019最新最全Java开发面试常见问题答案总结
2019最新最全Java开发面试常见问题答案总结 马上准备9月份出去面试Java开发,自己学习丢西瓜捡芝麻,学了的都忘了,所以有机会自己做个学习笔记,摘录自各个博文以及总结. 1.JAVA面向对象的特 ...
- 手把手教你使用 Spring Boot 3 开发上线一个前后端分离的生产级系统(一) - 介绍
项目简介 novel 是一套基于时下最新 Java 技术栈 Spring Boot 3 + Vue 3 开发的前后端分离的学习型小说项目,配备详细的项目教程手把手教你从零开始开发上线一个生产级别的 J ...
- Android 系统移植与驱动开发--第二章搭建Android环境核心步骤及心得
第二章 搭建Android 开发环境 虽然在这一章中讲的是Android底层开发环境,但是相应伴随的还有Android NDK程序来测试Linux驱动,HAL程序库.底层开发不仅需要交叉编译环境,还要 ...
- Windows Phone开发(13):如何规范用户的输入行为
原文:Windows Phone开发(13):如何规范用户的输入行为 很多时候,我们对用户的操作或输入做一定程度的限制,以避免发生不必要的异常或错误,因此,对一些特殊的类型,进行输入限制是很有必要的. ...
- Atitit 提升开发进度大方法--高频功能与步骤的优化 类似性能优化
Atitit 提升开发进度大方法--高频功能与步骤的优化 类似性能优化 1. 通用功能又可以组合成crud模块1 1.1. 查询(包括步骤,发送查询dsl,通讯返回结果,绑定到表格控件)2 1.2. ...
随机推荐
- CCF-201403-3-命令行选项
问题描述 试题编号: 201403-3 试题名称: 命令行选项 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 请你写一个命令行分析程序,用以分析给定的命令行里包含哪些选项.每 ...
- php+jQuery+Mysql找回密码----ThinkPHP
最近用ThinkPHP做了一个邮箱找回密码功能,在遭遇了N个bug之后终于做成了,下面分享一下邮箱找回密码功能的实现: 邮箱找回密码实际上就是在用户通过验证之后重置密码的过程,一般开发者会在验证用户信 ...
- HTML5标签总结笔记
HTML5标签笔记 1.格式标签 元素名和属性一般不区分大小写,特殊的如id和class需要区分 格式标签: <acronym> 定义只取首字母的标签 <abbr>定义缩写 & ...
- 网络协议之ipv6
1. 地址分类 比較重要的主要有以下几种: 本地链路地址:用于链路之间相互通信 本地网站地址:用于子网内互相通信,类似于ipv4中的私有地址 全球单播地址:类似于ipv4中的公网地址 组播地址 2. ...
- iOS日历中给一个事件加入多个提醒
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 假设认为写的不好请多提意见,假设认为不错请多多支持点赞.谢谢! hopy ;) iOS自带的日历应用中,我们最多仅仅能给一个事件设置2个提醒, ...
- 如何做更好的Android驱动project师
随着智能手机的飞跃发展,特别是Android智能机的爆炸性发展,Android驱动project师是越来越受欢迎的一个职位,并且是一个非常值得人期待的职位,由于可能你參与研发的一款手机就能改变 ...
- 蓝牙核心技术概述(五):蓝牙协议规范(irOBEX、BNEP、AVDTP、AVCTP)
关键词:蓝牙核心技术协议 irDA BNEP AVDTP AVCTP 作者:xubin341719(欢迎转载,请注明作者,请尊重版权,谢谢! )欢迎指正错误,共同学习.共同进步!! 下载链接:Bl ...
- 游戏AI-行为树理论及实现
从上古卷轴中形形色色的人物,到NBA2K中挥洒汗水的球员,从使命召唤中诡计多端的敌人,到刺客信条中栩栩如生的人群.游戏AI几乎存在于游戏中的每个角落,默默构建出一个令人神往的庞大游戏世界. 那么这些复 ...
- JAVA入门[7]-Mybatis generator(MBG)自动生成mybatis代码
一.新建测试项目 新建Maven项目MybatisDemo2,修改pom.xml引入依赖.dependencies在上节基础上新增 <dependency> <groupId> ...
- Mac 终端—不同文件不同颜色显示,提示文字
原文地址 修改Mac终端(Terminal)里不同类型文件的显示颜色 修改Mac终端(Terminal)的提示文字 Mac终端显示/隐藏文件命令 1. 修改Mac终端(Terminal)里不同类型文件 ...