我們有每天收集大量數據的應用程序。所以寫操作更多,因此我的服務器變慢了。所以我們計劃使用MongoDB來收集數據,通過使用scheduler將數據導入到SQL中。如何將大數據從MongoDB導入到SQL Server如調度程序
所以我的問題是我如何可以導入從MongoDB的重多數據記錄到SQL
任何建議請。如同任何工具等
我們有每天收集大量數據的應用程序。所以寫操作更多,因此我的服務器變慢了。所以我們計劃使用MongoDB來收集數據,通過使用scheduler將數據導入到SQL中。如何將大數據從MongoDB導入到SQL Server如調度程序
所以我的問題是我如何可以導入從MongoDB的重多數據記錄到SQL
任何建議請。如同任何工具等
我們爲此特定原因創建了MongoSluice。
我們的應用程序詢問一個MongoDB的集合,並創建一個完整的,深刻的模式。然後它將數據和元數據傳輸到任何RDBMS系統(Oracle,MySQL,Postgres,HP Vertica ...)。
你最終什麼是你的NoSQL作爲SQL的表示。一個很大的用例就是將非結構化數據存入分析數據庫。 BI平臺,特別是。
我不知道任何工具,但我敢肯定,如果你谷歌他們,他們存在。
如果是我,沒有先驗知識,我可以將數據導出到一個平文件(.csv),並創建或者存儲過程或SSIS包來將數據導入到SQL。
Python的可能是我的選擇,以塊的出口隔夜自動SQL哪裏可以辦理進口和清理。
mongoexport --host yourhost --db yourdb --collection yourcollection --csv --out yourfile.csv --fields field1,field2,field3
這樣做可以讓你在命中SSIS包之前定義結構。
另一種方式
這裏是做所有集合的一個很好的例子。這是從另一個answer。
out = `mongo #{DB_HOST}/#{DB_NAME} --eval "printjson(db.getCollectionNames())"`
collections = out.scan(/\".+\"/).map { |s| s.gsub('"', '') }
collections.each do |collection|
system "mongoexport --db #{DB_NAME} --collection #{collection} --host '#{DB_HOST}' --out #{collection}_dump"
end
可以用戶連接服務器的MongoDB這樣你就可以查詢任何你想要的。 當然,在這之前你必須安裝所需驅動程序的MongoDB
EXEC sp_addlinkedserver @server='MongoDB',
@srvproduct='CData.Mongo DB.ODBC.Driver',
@provider='SQLNCLI10',
@datasrc='<Machine IP address>,1434',
@provstr='Network Library=DBMSSOCN;',
@catalog='CDataMongoDB';
歡迎堆棧溢出!通常,鏈接到工具或庫[應該附帶使用說明或一些示例代碼](http://meta.stackoverflow.com/a/251605),或者如果可能的話。 –