2011-03-26 90 views
9

是否有MongoDB的?一個ETL ...MongoDB的ETL(PHP/Java的...)

+0

您能更加具體嗎?您想要提取,轉換並加載到MongoDB中的數據的格式是什麼? – 2011-03-29 13:42:51

回答

5

對於CSV文件,我建議看Import Export ToolsMongo wiki頁面的簡單插入。

對於任何更復雜的事情,我建議你用最適合的語言編寫一個特別的腳本。

+0

thx!我認爲創建一個scriptella的驅動程序... – Omar 2011-03-30 08:32:36

2

看來,Pentaho的數據集成和了Talend僅支持從MongoDB的閱讀,但不寫。

剛剛宣佈支持MongoDB的另一個工具是DataCleaner,它支持讀取和寫入操作。它本身並不是一個ETL工具,更像是一個數據質量分析工具,但它也具有類似於ETL的功能。

http://datacleaner.eobjects.org

+0

Pentaho現在支持寫入Mongo集合 – 2012-03-22 16:49:42

+0

是的,你甚至有一個視頻[這裏](http://wiki.pentaho.com/display/BAD/Write+Data+到+的MongoDB) – AlainD 2017-08-21 19:13:33

0

我創建了Python腳本我自己的ETL解決方案將數據從MySQL轉移到MongoDB的。在我的腦海裏真棒。

基本上,我使用以下兩種python模塊,用於訪問的MySQL和MongoDB:

  1. pymongo
  2. 蟒-mysql.connect

他們兩人都是從Ubuntu官方庫安裝。

0

我爲Scriptella ETL工具創建了MongoDB驅動程序。它可在https://github.com/scriptella/scriptella-mongodb

從關係表遷移數據的示例:

<connection id="out" url="mongodb://localhost/test" classpath="../lib/scriptella-mongodb-driver.jar:../lib/mongo-java-driver-2.10.1.jar" /> 

<query connection-id="in"> 
    SELECT * FROM USERS 
    <script connection-id="out"> 
     { 
      operation: 'db.collection.save', 
      collection: 'users', 
      data: { 
       user_id: '?user_id', 
       name: '?name' 
      } 
     } 
    </script> 
</query> 
0

Pentaho的DI支持MongoDB的讀取。我不確定寫道。我會考慮考慮MongoDB的底層結構,而不是傳統的RDBMS,使用python/java尋找自定義ETL過程/腳本可能更好,而不是現成的工具,它們可能無法做到他們聲稱的那樣。最終BI-ETL市場中的這些參與者之一將會在他們的工具中使用這個工具,一旦這個過程成熟並且多次測試mongoDb