zoukankan      html  css  js  c++  java
  • KETTLE数据互交

    1.     KETTLE简介

    一种ETL工具,ETL,是英文Extract-Transform-Load的缩写,用来描述将数据从来源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程。

    常见的ETL工具有datastage、informatica、kettle、ODI、Cognos等

    Kettle是一款国外开源的ETL工具,纯java编写,可以在Windows、Linux、Unix上运行,数据抽取高效稳定。按项目负责人Matt的说法:就是把各种数据放到一个壶里,然后呢,以一种你希望的格式流出。

    2.     安装配置

    2.1      版本

    绿色安装,解压即可

    常用版本:4.1.0,(体积小,易于部署) ,目前最新版本8.2

    操作系统:windows,Linux,Unix等

    JDK:1.6以上

    2.2      设置

    打开我的电脑--属性--高级--环境变量

    新建系统变量JAVA_HOME和CLASSPATH

    变量名:JAVA_HOME

    变量值:D:Program FilesJavajdk1.8.0_192    (具体路径以自己本机安装目录为准)

    变量名:CLASSPATH

    变量值:.;%JAVA_HOME%libdt.jar;%JAVA_HOME%lib ools.jar;

    添加到Path变量

    变量名:Path

    变量值:%JAVA_HOME%in;%JAVA_HOME%jrein;

    确认JDK环境变量是否成功

    3.     KETTLE主要工具

    转换:主要组成部分,完成数据的抽取,转换,装载

    作业:定时执行转换

    Spoon:图形界面工具,快速设计,维护ETL工作流,Spoon.bat,主要使用此工具

    Kitchen:运行作业的命令行工具,Kitchen.bat

    Pan:运行转换的命令行工具,Pan.bat

    Carte:远程执行转换或作业,Carte.bat

    4.     操作流程

    4.1      启动

    打开Spoon.bat

    出现闪退情况时,请查看一下JAVA环境变量配置,JAVA版本是否正确

    长时间无反应时,调整一下虚拟机内存分配

    编辑Spoon.bat,以下内容

    if "%PENTAHO_DI_JAVA_OPTIONS%"=="" set PENTAHO_DI_JAVA_OPTIONS="-Xmx512m" "-XX:MaxPermSize=256m"

    (-Xms :表示java虚拟机堆区内存初始内存分配的大小

    -Xmx: 表示java虚拟机堆区内存可被分配的最大上限

    -XX:PermSize:表示非堆区初始内存分配大小
    -XX:MaxPermSize:表示对非堆区分配的内存的最大上限)

    4.2      主界面

    第一次打开时,默认连接资源库,关闭即可,

     

    资源库通常用于需要成员之间分工合作的大型的项目 ,

    项目较小时,转换文件存储在本地即可。

    4.3     新建转换

    文件-新建-转换,快捷键CTL+N

    4.4     数据库连接

    建立两个系统数据库的连接方式

    设置字符集,数据库连接-选项

    新增添加参数characterEncoding,设置值为UTF8

    4.5      常用控件

    4.6      表输入

    本地数据输入,数据库连接选择本地数据库,编写完成的SQL语句添加至此

    4.7      表输出

    插入对方数据库表,注意选择忽略插入错误选项

    4.8      错误处理

    上传数据出错时,将错误记录写入本地EXCEL,(也可以其他形式,比如数据库表) 操作步骤,如下:

    转换界面,空白处,鼠标右键,定义错误处理

    定义日志位置,文件名

    定义日志内容

    定义日志字段

  • 相关阅读:
    springJDBC01 利用springJDBC操作数据库
    Struts2框架05 result标签的类型、拦截器
    Struts2框架04 struts和spring整合
    JDBC03 利用JDBC实现事务提交与回滚【调用Connection中的方法实现事务管理】
    JDBC02 利用JDBC连接数据库【使用数据库连接池】
    JDBC01 利用JDBC连接数据库【不使用数据库连接池】
    ???Struts2框架03 session的使用、登录逻辑【session工作原理】
    Struts2框架02 消息传递
    Struts2框架01【如果使用struts框架】【利用struts框架写一个 hello world】
    格式化输出
  • 原文地址:https://www.cnblogs.com/wchwch/p/11028450.html
Copyright © 2011-2022 走看看