1、系统版本信息

  System:Windows旗舰版 Service Pack1

  Kettle版本:6.1.0.1-196

  JDK版本:1.8.0_72

2、连接数据库

  本次实例连接数据库时使用全局变量。

  2.1 创建新转换:spoon启动后,点击Ctrl+N创建新转换

  

  2.2 在新转换界面中,右键点击DB连接,系统会弹出【数据库连接】界面。

  

  windows系统环境下,可用${}获取变量的内容。

  

  说明:

    连接名称:配置数据源使用名称。(必填)

    主机名称:数据库主机IP地址,此处演示使用本地IP(Localhost)地址或用127.0.0.1也可以。(必填)

    数据库名称:数据库实例名称。(必填)

    端口号:数据库使用端口号。MS SQL Server默认1433,Oracle默认1521。(必填)

    用户名:登录数据库用户。(必填)

    密码:登录数据库对应用户的密码。(必填)

  2.3 连接完成后,在DB连接下可看到完成的数据库连接。右键点击分享,可生成sharp.xml文件,同时在kettle.properties文件中配置全局变量。

  

  生成的sharp.xml文件截图

  

  sharp.xml文件部分内容截图。

  

  kettle.properties部分内容截图。

  

3、数据抽取转换

  在【核心对象】下可显示在转换中能使用的所有组件。在【输入】中找到表输入,双击出现到设计页面中;在【输出】下,找到表输出,把空间往空白处拖入即可;然后点住shift键,左键连接两者之间的关系。

  

  A.表输入:双击表输入控件,系统会弹出表输入空间的详细内容。

  

  说明:

    数据库连接:DB连接下的连接,这里选择就可以

    SQL:编写查询源数据SQL脚本,可以通过“获取SQL查询语句…”获取

    替换SQL语句里的变量:如果在查询条件里使用了变量,需勾选   

    从步骤插入数据:默认

    执行每一行:默认

    记录数量限制:如果为0,则预览时无数据

    预览:  如果无法确定SQL语句是否正常时可以通过【预览】来查看SQL语句是否正确。

  B.表输出:主选项

  

  说明:

    数据库连接:DB连接下的连接数据源,这里选择就可以

    目标表:选择数据需要插入的数据表

    提交记录数量:每次插入时提交的数量

    裁剪表:如果选中以后,每次都会把目标表的内容清空,然后再插入

    指定数据库字段:表输入的字段和表输出的字段需选择映射关系

  表输出:数据库字段,在这里可以选择字段的映射关系。

  

  说明:

    获取字段:会自动获取字段的映射关系

    输入字段映射:需手动维护字段的映射关系

    SQL:点击SQL会有选项;执行:本人暂未点击过

  完成了表输入和表输出的连接后,可点击左上角的三角号执行下,在下方可查看执行日志

  

  

  

  说明:

    根据日志可以查看出每个步骤执行的记录数、读、写、输入、输出、更新、拒绝、错误、激活、时间、速度。可根据此处分析当前转换运行效率而断定转换是否需要进行优化。

总结:

1、  在运行转换时,当前转换是处于并发状态,如果有多个表输入则会同时运行。

2、  在设计转换时最好是一个数据流,不要一个转换有多条数据流;如果有多条数据流则有可能发生锁表问题。

 

  

【Kettle】4、SQL SERVER到SQL SERVER数据转换抽取实例的更多相关文章

  1. SQL Server恢复软件SysTools SQL Recovery/SysTools SQL Server Recovery Manager

    SQL Server恢复软件SysTools SQL Recovery/SysTools SQL Server Recovery Manager http://www.systoolsgroup.co ...

  2. [SDK2.2]SQL Azure (13) Azure的两种关系型数据库服务:SQL Azure与SQL Server VM的不同

    <Windows Azure Platform 系列文章目录> 如果熟悉Windows Azure平台的用户不难发现,对于SQL Server数据库来说,微软提供了两种服务,分别是: -W ...

  3. sql语句优化SQL Server

    MS   SQL   Server查询优化方法查询速度慢的原因很多,常见如下几种 1.没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷)          2.I/O吞吐量小,形成了 ...

  4. MS SQL错误:SQL Server failed with error code 0xc0000000 to spawn a thread to process a new login or connection. Check the SQL Server error log and the Windows event logs for information about possible related problems

          早晨宁波那边的IT人员打电话告知数据库无法访问了.其实我在早晨也发现Ignite监控下的宁波的数据库服务器出现了异常,但是当时正在检查查看其它服务器发过来的各类邮件,还没等到我去确认具体情 ...

  5. 安装SQl 2008为SQL Server代理服务提供的凭据无效

    解决:安装SQl 2008为SQL Server代理服务提供的凭据无效 sql server 2008 代理服务提供的凭据无效sql server 2008 代理服务提供的凭据无效在Windows S ...

  6. Sql server之sql注入篇

    SQL Injection 关于sql注入的危害在这里就不多做介绍了,相信大家也知道其中的厉害关系.这里有一些sql注入的事件大家感兴趣可以看一下 防范sql注入的方法无非有以下几种: 1.使用类型安 ...

  7. PowerDesigner反向数据库时遇到[Microsoft][ODBC SQL Server Driver][SQL Server]无法预定义语句。SQLSTATE = 37错误解决方法

    逆向工程中,有时会出现如下错误 ... [Microsoft][ODBC SQL Server Driver][SQL Server]无法预定义语句 SQLSTATE = 37000 解决方案: 1. ...

  8. SQL Server 2005 发布 订阅 (配置实例[图])(转载)

    2.1          发布&订阅 1.       测 试环境: Item 发布机 A 订阅机 B OS Windows 2003 Server Windows 2003 Server S ...

  9. [Oracle][ODBC SQL Server Driver][SQL Server]对象名 'RECOVER.HS_TRANSACTION_LOG' 无效(转)

    原帖由 qingyun 于 2010-6-21 15:44 发表 在写pl/sql的时候,有个很重要的注意点:比如:begin  update  某个sqlserver的表@dblink名字 .... ...

随机推荐

  1. Python -- Gui编程 -- Win32API的使用

    消息框 messageBox.py import win32api, win32con win32api.MessageBox(0, 'Hello World!', 'Come Here', win3 ...

  2. VMware Workstation 11 中 Ubuntu 14.04 的 VMware Tools 问题 :没有显示共享文件夹

      症状:主要表现在Win7中用VM11安装的Ubuntu14.04中,安装完自带的VMware Tools之后,/mnt/hgfs 中没有前面已经设置好的共享文件夹.   仔细查看了安装过程,发现在 ...

  3. 解决linux安装软件依赖的曲线救国方案

    相信大家在一台无法连接外网的linux上安装软件时,对于软件依赖的安装,都会特别头疼,因为软件依赖的安装,不论是其数量,还是安装的复杂度都比软件本身要高出一个维度! 今天就和大家分享一个,解决linu ...

  4. mysql创建用户,并指定用户的权限(grant命令)

    参考链接http://blog.csdn.net/leili0806/article/details/8573636,谢谢这位仁兄 1.创建新用户的SQL语句: CREATE USER 'pig'@' ...

  5. C#的进度条透明的情况(穿透问题)

    如图: 很明显,可以看到透过进度条的框框可以看到下面的软件界面, 之前出现这种情况是因为pictureBox和panel层级之间的关系造成的, 没想到这次的原因居然不是这样,而是因为少了backCol ...

  6. solidity如何拼接字符串?

    当你开始学习使用solidity开发以太坊智能合约之后,很快你会碰到一个问题: 一.在solidity中该如何拼接字符串? 可能你已经试过了,下面的代码试图把两个字符串使用相加的运算符连接起来,但是这 ...

  7. Math.floor,Math.ceil,Math.rint,Math.round用法

    一.Math.floor函数讲解 floor原意:地板.Math.floor函数是求一个浮点数的地板,就是求一个最接近它的整数,它的值小于或等于这个浮点数.看下面的例子: package com.qi ...

  8. 一张图解决Struts2添加源码

    主要是选择的路径:F:/struts2/struts-2.3.31/src/core/src/main/java

  9. 不用bootstrap,只用CSS创建网格布局

    本文译自[http://j4n.co/blog/Creating-your-own-css-grid-system],英语好的,可直接查看原网页,不需要FQ. 翻译拿不准的地方会有英文原文,方便大家理 ...

  10. java中线程同步问题

    先不多说,直接上个例子,著名的生产者消费者问题. public class ProducerConsumer { public static void main(String[] args) { Sy ...