2个系统都有客户信息,产品信息. 要从一个系统a导出数据给另一个系统b用. 有2个方法.
1.在a系统的客户表,产品表加一个字段,记录b系统对应的ID,导出时直接用sql转换了.
2. 用ETL工具转换. a系统导出的客户信息,产品信息的csv, 在ETL工具里,有一个ID对应表, 查找替换.
我们试试用Talend来做吧.
Talend 有个去重复的工具tUniqRow
查找替换工具tReplaceList
放了2个tReplaceList, 一个查找客户信息,一个查找替换产品信息.
有2个地方要注意的: csv是以什么符号分隔的, talend默认是用;分割的,如果你从数据库导出,可能是 或,分隔,要在组件设定里修改
查找替换的2个字段,类型要相同,我刚试了用Integer和String,2个不同的字段类型,总是找不到的.
测试了一下速度,每秒10条数据,太慢了.还是不实用,还是用第一种方法从DB里Join一下,速度快多了.