我正在研究ETL工具,将平面文件导入数据库,然后导出xml文件。
许多工具支持生成在您的应用程序中使用的代码;但是,我还没有找到任何支持使用您的应用程序中已有的代码。我们的模型很复杂(关系,验证,多态关联,回调等)。
哪些工具可以重用现有代码?或者我是否在ETL工具中重新创建(并维护)我的模型?
注意:我对ETL的要求(与批量插入或activerecord-import相反)是转换。我们收到来自200多个不同来源的数据,包括各种格式,完整程度和清洁度。此外,对于将定义转换的技术较少的用户来说,“设计师”最常用的包含更为真实。
答案 0 :(得分:6)
ActiveWarehouse可能证明是有用的。初步搜索结果使项目感觉有点陈旧和失效。一点点挖掘在GitHub上产生了一个相当活跃,记录良好的项目分支:https://github.com/activewarehouse/activewarehouse-etl
答案 1 :(得分:3)
自己写。 ETL是一个非常简单的过程,ruby提供了足够的反射支持,可以通过一些简单的代码来处理它。 ETL工具在这里并不真正有用,只需生成dotty文件来显示数据源,流和转换。
我在smalltalk中做了同样的数据转换。在那里,我使用了MOOSE再造工具套件中的魅力和蒙德里安,以提供更多的可视性。
答案 2 :(得分:0)
模块化,您希望Rails应用程序和ETL从同一个地方询问“HND”的含义。为此设置API。