Wso2 简单ETL:Smooks或ETL产品

Wso2 简单ETL:Smooks或ETL产品,wso2,etl,smooks,Wso2,Etl,Smooks,我对这门学科相当陌生,正在做一些研究。 我有一个ESB(使用WSO2 ESB),希望从传递的消息(如客户、订单等)中提取主数据,并将它们存储在DB中作为参考数据保存。源数据是来自web服务的XML格式。 因此,需要有一个能够维护主数据的组件:插入新对象、删除旧对象和更新更改(最好有数据事件,以便ESB可以相应地路由数据)。基本上,任何实体类型的逻辑都是相似的,最好为所有新实体类型自动生成它 我现在看到的选项: 将Smooks与SQLExecutor或Hibernate一起使用,以便在Smooks

我对这门学科相当陌生,正在做一些研究。 我有一个ESB(使用WSO2 ESB),希望从传递的消息(如客户、订单等)中提取主数据,并将它们存储在DB中作为参考数据保存。源数据是来自web服务的XML格式。 因此,需要有一个能够维护主数据的组件:插入新对象、删除旧对象和更新更改(最好有数据事件,以便ESB可以相应地路由数据)。基本上,任何实体类型的逻辑都是相似的,最好为所有新实体类型自动生成它

我现在看到的选项:

  • 将Smooks与SQLExecutor或Hibernate一起使用,以便在Smooks配置或DAO注释中写入所有匹配的逻辑
  • 使用一些开源ETL工具(如Talend、Kettle、Clover等)。因此,数据将被传递到ETL,所有转换逻辑都在那里定义。还可以适应未来出现的情况,或者可能是一种过激行为

  • 如果您能分享您的想法并为我指出正确的方向,我将不胜感激

    您最好将数据库部分留给另一个工具

    如果在消息流中有相当数量的数据库交互,那么性能可能会严重下降

    但是,对于您解释的用例,您不需要ETL。您只需使用WSO2 DSS创建服务来插入或更新数据库中的数据,即可完成此任务


    我们一直在ESB旁边使用它来记录消息(在DB内部),对此我们感到满意。最好将其用作ESB内消息流中的非阻塞fire和遗忘web服务。希望这能有所帮助。

    所以我们决定使用DSS。我们在xsd中定义规范模式,并从中生成DSS配置,以及合并特定于域对象模式的逻辑的SQL存储过程。下一步是创建GREG处理程序,以便在xsd添加到存储库后自动部署这些工件。。。