Apache骆驼同步文件路由

米拉

我在三个单独的csv文件中获得了一些数据,这些文件需要导入到MySQL数据库中。因此,我得到了三条骆驼路线,每条路线都从一个文件读取,然后插入/更新数据库。

这三个文件中的一个包含插入的数据集,另外两个正在更新刚插入的第一个文件的数据。

CSV-File-1 -> INSERT INTO table (id,...) VALUES ($id,...)
CSV-File-2 -> UPDATE table SET field = $value WHERE id = $idFromTheJustInsertedDataset
CSV-File-3 -> UPDATE table SET field = $value WHERE id = $idFromTheJustInsertedDataset

(此处的ID不是从MySQL生成的auto_increment编号)

现在的问题是,当第一个路由插入数据之前,第二个路由没有运行时,数据丢失了,因为我没有从mysql得到任何错误(id并不存在,因为尚未插入-查询仍然有效)。

因此,骆驼的文件使用者每xxx毫秒才启动一次,我不知道确定这三种路由应以哪个顺序运行的可能性。也不可能(一次)消耗路径内的另一个文件-至少我不知道该怎么做。

有人知道我如何同步这些路由吗?

谢尔盖

一个好的选择可能是:

  1. 路由1(对于CSV文件1)保持原样。
  2. Forroute 2route 3adddoneFileName选项,并.done在末尾从Bean生成文件route 1这样,处理才开始,然后route 1结束

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章