KETTLE-转换-输出组件

输出组件

Insert / Update

更新/插入组件

Insert / Update

  • Connection为数据库连接
  • Target table为操作的表
  • Commit size为批量提交的条数,为一个事务提交
  • Don’t perform any updates为是否更新,选中则即使通过keys找到数据,依然不更新而直接插入,不选中则更新
  • The key(s) to look up the value(s)为查询的条件
  • Update fields为指定更新或插入的字段

Update

更新组件

Update

  • Use batch updates为是否批量提交,与Commit size搭配使用
  • Skip lookup为是否先查询再决定是否更新,查询到有数据则更新,否则不更新;查询不到数据会报错,需与Ignore lookup failure?搭配使用以屏蔽错误
  • Flag field(key found)为获知流数据在表中是否查询到(Y/N),自定义字段。与Ignore lookup failure?是一对

Delete

删除组件

Delete

  • Comparator比较规则的BETWEEN方式和Stream field2,意思是在Stream field1和Stream field2这两个流字段,满足其中一个即可

Table output

表输出组件

Table output-主页面
Table output-字段映射

  • Truncate table为是否彻底毁灭表数据!!!,千万不要勾选!!!
  • Specify database fields为指定需要入库的表字段,不选中则全部表字段入库,选中则指定表字段,与Get fields和Enter field mapping搭配使用
  • Get fields为自动将表字段和流字段映射到一块,如果在前面的步骤,定义的流字段名字与表字段一致,那将非常爽地一步到位。如果不一致,可以通过Enter field mapping手动映射
  • Enter field mapping为手动映射,Add添加映射,Delete删除映射,Guess自动映射

Synchronize after merge

与Merge Rows(diff)组件配合使用,有个标志字段:new、changed、deleted、identical,对应是新增、更新、删除、相等,identical标志的数据无须操作

Synchronize after merge-主页面
Synchronize after merge-高级

  • Operation fieldname为结果字段,根据此字段做对应操作
  • Insert when value equal、Update when value equal、Delete when value equal为等于何种值时进行对应insert、update、delete操作
  • Perform lookup为在更新/删除前,先查询数据是否存在(判断key和value),存在才更新/删除

Json output

Json output-主页面

  • Fields为指定制作成json的所需流字段
  • Operation为输出方式,支持输出到流、输出到文件、输出流和文件
  • Json block name为json串的key,可以为空
  • Nr rows in a block为按多少条数据分组,例如流有3条数据,此处定义为2,那么输出就有两条json串,json串1有2个数据,json串2则只有1个数据。为0则所有数据都生成在同个json串,对内存开销大, 需要注意
  • Output Value为指定json串的流字段名称
  • Compatibility mode为兼容模式,选中时json串为-{“data”:[{“id”:1},{“name”:“KETTLE-FLY-菜鸟教程第二章-jsonOutput”}]},不选中时json串为-{“data”:[{“id”:1,“name”:“KETTLE-FLY-菜鸟教程第二章-jsonOutput”}]}。可以观察到id和name不在同个对象内

总结

  • Insert / Update组件支持更新或插入,根据key查询表是否存在该数据,同时判断该数据与Update fields是否都相等,相等则不更新
  • Update组件的Skip lookup,选不选中区别很大,不选中:因为会先查询再决定是否更新,效率慢,选中:直接更新,效率快。体现在speed因素
  • Table output组件切忌勾选Truncate table
  • Json output组件支持输出流或文件,支持全输出或限定条数输出

资料

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值