关于kettle 多表数据输入到同一个目标表中,并添加序列的问题

灵魂火焰 2014-09-10 09:56:38
大牛们好,问题如题所示,
我现在需要将三张表A、B、C的数据,分别提取一部分字段,将所有记录提取到一张新的表D中。
其中ABC的记录是追加关系,只不过对应的字段名称不同。
并,最后给D表的ID字段统一添加自增序列值。

==========================
看数据流是分开的,或许 分3个 ktr添加到 同一个job里是一个思路;
但是,由于D表的ID是主键,分开ktr貌似没法统一添加自增序列。。。
==========================

哪位大神他有啥解决方法没?
...全文
26825 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
泛泛之辈 2015-11-02
  • 打赏
  • 举报
回复
kettle 中的目标模式 表里字段 流里字段分别是什么 具体如何操作的 假如我oracle中有一个原表 A 我想用kettle 同步表A 并建立一个新的表B 如果A 表有更新 那么B表也随之更新 这个如何操作啊 本人才接触kettle 不久 请大神们赐教啊
泛泛之辈 2015-11-02
  • 打赏
  • 举报
回复
kettle 中的目标模式 表里字段 流里字段分别是什么 具体如何操作的 假如我oracle中有一个原表 A 我想用kettle 同步表A 并建立一个新的表B 如果A 表有更新 那么B表也随之更新 这个如何操作啊 本人才接触kettle 不久 请大神们赐教啊
a3bbs 2015-02-14
  • 打赏
  • 举报
回复
引用 4 楼 jake2658 的回复:
[quote=引用 2 楼 gaofei8704 的回复:] 两个方法: 1、如2楼所说,结合到1个trans,最简单; 2、如果你不想这么搞,写个js,通过查出来最大的ID+seq组建生成的seq;不过这样的话就不能3个trans并行了
感谢指导,抱歉最近忙了些,好久没上BBS了。 ① 如过三条数据流都放到一个trans里,该怎么安排组件呢?trans里貌似不能分多条平行执行。。。 ② 第二条,虽然我不熟js, 不过是一个思路,谢谢~[/quote] 好久没上来了。。 trans里的顺序是按照处理的顺序并行执行,所以直接这样写不行,你这三个表都输入到d的话,应该是有外键关系的,用merge join分别对关联字段处理即可,特别要注意排序字段
灵魂火焰 2014-10-09
  • 打赏
  • 举报
回复
好吧,结贴,散分。
灵魂火焰 2014-10-05
  • 打赏
  • 举报
回复
引用 2 楼 gaofei8704 的回复:
两个方法: 1、如2楼所说,结合到1个trans,最简单; 2、如果你不想这么搞,写个js,通过查出来最大的ID+seq组建生成的seq;不过这样的话就不能3个trans并行了
感谢指导,抱歉最近忙了些,好久没上BBS了。 ① 如过三条数据流都放到一个trans里,该怎么安排组件呢?trans里貌似不能分多条平行执行。。。 ② 第二条,虽然我不熟js, 不过是一个思路,谢谢~
灵魂火焰 2014-10-05
  • 打赏
  • 举报
回复
引用 1 楼 a3bbs 的回复:
为什么不写到一个trans

你好,保护好意思,最近忙了些,还就没上BBS了。
如您所说,放到一个trans里,但是我不太明白;
因为,ABC是追加关系,并且需要统一的ID,
如果放到一个Trans里,如图:

那表输出的前后次序怎么排呢?,谁先执行,不明确啊,
而写是需要统一的ID 的,这样弄肯定不行。
么非还有其他的组件能实现追加效果?是哪个呢?
gaofei8704 2014-09-24
  • 打赏
  • 举报
回复
两个方法: 1、如2楼所说,结合到1个trans,最简单; 2、如果你不想这么搞,写个js,通过查出来最大的ID+seq组建生成的seq;不过这样的话就不能3个trans并行了
a3bbs 2014-09-19
  • 打赏
  • 举报
回复
为什么不写到一个trans

7,388

社区成员

发帖
与我相关
我的任务
社区描述
其他数据库开发 数据仓库
社区管理员
  • 数据仓库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧