jini-jakarta99-blogging
[ 首頁 | 索引 | 登入 | 註冊 ]

2008-02-17

jini 所撰寫。最後修改者是 jini 在 138 天之前。 已瀏覽 258 次。
[編輯] [附加]

研究 Scriptella 相關心得 23:05

如果要查詢 Open Source ETL Written in Java, 可以查閱以下這個連結

>>http://www.manageability.org/blog/stuff/open-source-etl

我目前研究了幾個 ETL :

  • CloverETL
  • Talend(JasperETL)
  • Scriptella

不過 CloverETL 與 Talend 都有一個問題, 就是採用 Eclipse 作為 GUI 開發的模式(而且不是要 license 就是要註冊, 感覺很麻煩), 如果沒有內建的 Components 就需要額外的開發, 因為這次我要解決的是大量的 cobol rowdata(用字串長度切割) 的文字檔案到 Database, 而不是一般的 csv 或是資料庫之間轉換, 加上 GUI 對我來說只是增加 definition 的複雜度, 不太適合我們移交給客戶簡單學習與我們操作介面的開發.

Scriptella 算是蠻新的 ETL 小工具, 我測試了相關的效能還覺得不錯, 以 10 萬筆 csv 的轉到資料庫中, 大約只需要 15 ~ 20 秒左右的時間, 不過當我研究裡面的 sources codes, 讀取 csv 檔案的方式可以透過 csv (by opencsv) 或是 text (by scriptella), text 擁有較快的速度. 因為是採用 java.util.regex 的查詢, 類似 (.*) 這樣的 pattern 進行切割, 而 opencsv Driver 則是設定 quote=", separator=; 類似的參數, 就會進行資料查詢切割.

不過吸引我的地方, 就是 xml 檔案格式非常的單純, 幾乎只要看了就知道要怎麼去設定, 另外, 他們的 SPI 更單純, >>http://scriptella.javaforge.com/docs/api/scriptella/spi/package-summary.html 主要實做相關的 Interface 就可以了, 首先就是 Driver extends AbstractScriptellaDriver, 在 connect method 呼叫 extends AbstractConnection 的 Connection, 主要設定相關 Transaction 的模式. 其餘的就是看你要怎麼去實做 Callbacks 以及如何取用相關的 Parameters,

另一個困擾我的問題, 就是原本我期望在 xml 檔之中設定 <formats> 等 xml 來定義我的參數, 但是會和 etl.dtd 衝突, 有三個解決方法,

  • 重新 compile scriptella 不去驗證 dtd,
  • 重新定義 etl.dtd,
  • 不要用 xml
我選擇 "不要用 xml" 來定義我的參數 ( column startpos, length, type and etc.. ) 我改用 JSON 的設定方式,

總結, 如果不需要圖形話介面的輕巧 ETL 工具, Scriptella 是個不錯的工具.

目前無回響 | 發表回響
請利用全文檢索或日期來找你想看的文章 ^^~

< July 2008 >
SunMonTueWedThuFriSat
12345
6789101112
13141516171819
20212223242526
2728293031

歡迎來到 jini(99% jakarta) blogging
如果要加入我的 blogging 網頁
可以抓下面的小圖
jini (99% jakarta) blogging
link 是 www.softleader.com.tw:8668
alt 請寫 jini (99% jakarta) blogging

Blog 精選
>>Jakarta
>>Java Database
>>JAAS
>>Code Style
>>Groovy
>>Self Misc.

不會用 snipsnap 嗎
請查詢 snipsnap-help.

我會發言的討論版
jini in>>jsptw


我發行的電子報(Java Opensource Newspaper)
>>BIG5-Traditional Chinese Version
>>GB-Simplified Chinese Version

Users: (2)
… and 31 Guests


一群Java高手的部落格
>>JiaYun
>>jserv
>>Forth
>>Tempo
>>edwardsayer
>>swanbear
>>jini's JavaEE 5
>>雅加達爪哇咖啡北京分店

其他連結:
XHTML 1.0 validated
CSS validated
RSS 2.0 validated
powered by snipsnap
Attribution-NonCommercial-ShareAlike 1.0
Java b Blog
RSS Feed

Powered by SnipSnap 0.4.2a

snipsnap.org | Copyright 2000-2002 Matthias L. Jugel and Stephan J. Schmidt