2013-06-04 88 views
0

我有40,000行,我想插入到mongo數據庫,但我不知道最好的辦法做到這一點。如何在MongoDB中批量插入?

我會用命令行「蒙戈」,並將其粘貼(我一直在搞亂這個想法,它似乎並不像它是理想的)

是否有任何最優或最佳做法嗎?我應該用mongoid而不是mongo來做嗎?

+0

(如果不是你經常需要做的事情,我只是爲你做最快的事情,例如mongoimport,mongoid等)。 – WiredPrairie

回答

1

呃。我在這裏發佈了一個答案,然後意識到有一個名爲mongoimport的命令可以直接寫入DB文件。

讓我們假設你有JSON格式的數據,每行一個對象,像這樣:

{"a":"a1"} 
{"a":"a2"} 
{"a":"a3"} 

然後,您會怎麼做:

mongoimport --dbpath PATH_TO_YOUR_DB_DIR -d DB_NAME -c COLLECTION_NAME --file JSON_FILE_NAME 

採用dbpath需要鎖定數據目錄,因此如果mongod當前正在訪問相同的路徑,則不能使用它。 mongoimport --help給你很有用的信息。

+1

如果mongod正在運行,則不要使用--dbpath並使用--host --port選項。 –