2013-11-26 151 views
0

我有一個需求,即需要將集合中的文檔合併到另一個集合。MongoDB - 將文檔從一個集合(輔助)移動(合併)到另一個(主)

  1. 移動的文件數量是~100k。主集合 有大約100萬個文檔。
  2. 我可以同時使用Java Mongodb支持和Spring數據mongodb。
  3. 我不想在內存中加載超過20 MB的數據。

是批處理(加載,說15 MB的文件在內存中,並更新主集合)的唯一途徑?它有助於有一個存儲的JavaScript(如存儲過程)來實現這一目標嗎?任何人都可以提供一個鏈接來理解後者?

回答

1

你能提供關於「合併」過程的更多細節嗎?難道這樣的事情 1.將每個輸入文件的 2.檢查文檔中的主集合中已經存在 3.如果它不存在插入到主集合

你可以編寫一個簡單的JavaScript函數做到這一點。這裏是一個鏈接 - http://docs.mongodb.org/manual/core/server-side-javascript/

+0

因此...加載每個文檔,如果它已經存在然後更新它,否則插入它。 – abipc

相關問題