.NET ETL流程

Mat*_*att 6 .net etl pentaho rhino-etl

首先是一些背景;我们正在开发一个数据仓库,并对用于ETL流程的工具进行一些研究。该团队以开发人员为中心,每个人都熟悉C#。到目前为止,我已经看过RhinoETL,Pentaho(水壶),Astrix Centerprise。SSIS退出的原因有很多,不在此问题范围之内。

目前,我倾向于使用像RhinoETL这样的面向开发人员的产品,因为这似乎对一组开发人员来说阻力最小。其他面向视觉设计师的产品是否能将RhinoETL所没有的东西带到桌面上?在评估这些ETL工具时,我需要注意哪些特定事项?还有其他我们应该研究的工具吗?

Ste*_*ane 5

我知道这是一个迟到的答案,但由于我需要一个具有所有 SSIS 功能但在 100% .net 环境中的合适的 Elt,所以我开始开发自己的 Elt。

当然,性能不如SSIS。我相信,如果你想要大量的性能来集成和转换,你仍然应该使用SSIS。

我真正需要的主要东西是一个适当的跟踪系统,没有其他类似的 etl 工具(例如 RhinoEtl 提供),该系统允许跟踪任何单个细节,并且在必要时可以轻松操作以进行记录。我为文件系统、ftp、sftp、xml、csv、entityframework 核心和批量加载制作了很多开箱即用的适配器。我什至想出了一个可视化工具来查看转换过程的结构。

到目前为止我花了10个月的时间,我把它开源了。它仍然缺乏大量文档(需要付出巨大的工作量才能实现)。我必须通过一组更大的单元测试来完成它(也需要完成大量的工作),以便我能够在测试版本中体面地发布它。即使我仍然将其保留在 alpha 版本中,它也是我公司所有 ETL 流程的基础,并且运行得非常好!


小智 3

最近我和我的同事在RhinoETL和SSIS之间做了一些简单的性能测试。对于简单的数据流,SSIS 似乎总是优于 RhinoETL(移动 2,000,000 条记录的速度大约快 30%)。如果您使用源代码管理(在我们的示例中为 TFS),则无法轻松查看 dtsx 文件(SSIS 文件)版本之间的差异,而使用 RhinoETL 进行开发允许您利用 TFS 功能。

如果您在数据仓库之上开发用户界面,则可以看到 RhinoETL 的另一个优势。您可以在这两个程序之间共享代码。

尽管我们 SSIS 团队的一些成员来自 .Net 背景,但我们的管理层决定继续使用 SSIS 进行开发(尽管他们升级到了 SSIS 2008——完全是另一个主题),因为他们觉得让开发人员学习 SSIS 比学习 .Net 更容易。网。

  • 由于您使用的是 TFS,请查看 [BIDSHelper](http://bidshelper.codeplex.com/),它们具有智能差异功能,可以排除 SSIS 噪音,例如布局更改。可以更轻松地弄清楚修订之间是否发生了重要的变化。 (2认同)