2010-03-12 35 views
10

假設您有一個小型項目,表面看起來像Talend的ETL工具的良好匹配。直線Java/Groovy與ETL工具(Talend/etc) - 你會用什麼庫?

但假設你還沒有使用過Talend,而且你一般不信任「可視化編程」工具,而是寧願用老式的方式編寫所有東西(文本放在一個漂亮的IDE上!支持庫的適當語言&。

什麼是一些語言模式&支持庫可以幫助您遠離ETL工具的誘惑/陷阱?

+1

ETL:提取,轉換,加載。 http://en.wikipedia.org/wiki/Etl – Thilo 2010-03-12 01:44:11

+1

當我試圖做出這個決定時,我發現這個鏈接很有幫助:[Kimball大學:ETL的子系統重訪](http://www.informationweek.com/news/software/bi/202405400?queryText = subsystems + etl +重新檢視) – Bradford 2011-09-09 14:09:48

回答

0

根據數據庫架構的大小,你可以在Hibernate中映射一切真正的快,只是使用的結果對象模型(這取決於你想要什麼,反正在ETL工具)

2

我覺得做你的工作這對Rails靈感的框架非常適合,比如Groovy上的Grails或Scala上的Lift。

5

這取決於交付物是處理器還是輸出本身。如果您只需要提供輸出,則不需要維護代碼。如果代碼需要維護,那麼你會維護它還是別人?

如果有人需要維護我會使用Java或給他們Talend。

如果它是一次性代碼,我會使用什麼會更容易或有趣的編程。

如果你需要維護它,處理過程很複雜,我會使用Scala。它具有:

  • some libraries與數據庫
  • XML文本交互
  • 解析器組合在其收集包
  • 有趣的功能(地圖,過濾器,GROUPBY,分區...)
  • 和當然還有其他現有的Java庫。
+0

我檢查過Talend生成的代碼...你確定它可以在創建後維護嗎? – yura 2011-09-16 04:53:29

+0

@ yura,我只是簡單地看* Talend *,並沒有親自使用它。當我的意思是Talend的定義和配置可以維持(不一定是生成的代碼)。 – huynhjl 2011-09-16 05:40:30

+0

好的,我只想知道您的意見是否可以將視覺語言(如Talend或Pentaho)用於需要長期支持和維護的複雜ETL規則。 – yura 2011-09-16 06:38:27

4

我曾經認爲「可視化編程」是一些無法編程的人。然後我在一個項目中接觸到了Talend,並且我意識到這種類型的工具對於工作來說是完全正確的,當涉及到將數據從A移動到B並在過程中進行轉換時。它是面向組件的軟件設計,由更具學術性的標籤。

我仍然認爲自己是一個體面的程序員,他可以做任何事情,然後使用文本編輯器和shell提示符。但我也成爲Talend的忠實粉絲。

全面披露:我現在工作的公司:-)

4

退房DataExpress。這是一個基於Scala的跨數據庫ETL工具包。

相關問題