zoukankan      html  css  js  c++  java
  • Kettle-02-转换

    前文中在Centos7中安装了Kettle,本文演示怎么在Centos7中执行一个数据转换(转换的感念),即实现:

    创建一个定时任务,1分钟执行一次,将Oracle数据库DB1中的表TB1中的数据,同步到Oracle数据库DB2中的表TB2中

    1、创建一个转换文件

    由于Kettle的可视化操作界面,需要安装GUI桌面,但是我们不会在服务端的Centos上安装桌面环境的,所以需要在有桌面环境Centos上,或者是windows电脑上来创建转换文件,另一种思路是在Centos7上安装vnc服务,但是实践过程中发现,离线安装vnc服务简直是不可能的,有能力的可以自行尝试,下面采用在window电脑下,创建转换文件。

    1.1 安装Java运行环境,并配置环境变量

    自行Google或百度

    1.2 安装Kettle程序

    下载

    http://mirror.bit.edu.cn/pentaho/Pentaho%208.2/client-tools/pdi-ce-8.2.0.0-342.zip

    解压后会得到一个data-integration目录,当然和上篇文章中Centos7服务器内的程序是一样的,因为Kettle是跨平台的

    1.3 启动

    右键 Spoon.bat 以管理员的方式运行,等待启动,启动时间有点儿长,耐心等待,启动界面如图

    1.4 新建转换

    文件->新建->转换

    选择输入->表输入 ,双击后右侧区域会出现一个输入对象,这个对象就是数据传输的数据源对象

     然后选择输出->插入/更新,双击之后会出现一个插入/更新对象,这个就是要同步的目标对象

    然后按住SHIFT拖动【表输入】到【插入/更新】建立关系

     

     接下来配置【输入】对象,双击【输入】唤起配置对话框

    先点击新建数据库链接

    然后输入数据源的查询语句,点确定

    设置插入/更新目标,双击【插入/更新】对象,设置完点确定

    至此一个简单的转换已经设置好了

    1.5 保存运行

    CTRL+S保存到一个目录内,命名【DB1-DB2.ktr】,ktr文件就是Kettle的转换配置文件,当然他也是跨平台的,可以放到linux中使用

    保存之后点击运行按钮,查看运行情况

     如果失败,把对应数据库的ODBC链接所需的jar库放到Kettle的lib目录即可

    查看数据已经同步过来了

     至此一个简单的转换就做完了

    下一篇说怎么把这个转换,做成linux定时任务

  • 相关阅读:
    Linq to Sql 总生成 where ID is null 的解决办法
    jexus asp.net Linux Web Server
    怎么修改盘符
    TCP、UDP、IP 协议分析
    和浙大妹子聊准备笔面
    2015腾讯笔试大题
    导出/打印项目数据报表需要设置IE浏览器
    Eclipse快捷键
    Eclipse如何解决启动慢?
    eclipse mars4.5安装hibernate开发环境
  • 原文地址:https://www.cnblogs.com/ares-core/p/14012235.html
Copyright © 2011-2022 走看看