我有40,000行,我想插入到mongo數據庫,但我不知道最好的辦法做到這一點。如何在MongoDB中批量插入?
我會用命令行「蒙戈」,並將其粘貼(我一直在搞亂這個想法,它似乎並不像它是理想的)
是否有任何最優或最佳做法嗎?我應該用mongoid而不是mongo來做嗎?
我有40,000行,我想插入到mongo數據庫,但我不知道最好的辦法做到這一點。如何在MongoDB中批量插入?
我會用命令行「蒙戈」,並將其粘貼(我一直在搞亂這個想法,它似乎並不像它是理想的)
是否有任何最優或最佳做法嗎?我應該用mongoid而不是mongo來做嗎?
呃。我在這裏發佈了一個答案,然後意識到有一個名爲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
給你很有用的信息。
如果mongod正在運行,則不要使用--dbpath並使用--host --port選項。 –
(如果不是你經常需要做的事情,我只是爲你做最快的事情,例如mongoimport,mongoid等)。 – WiredPrairie