MongoDB 的安裝和使用方法,在官方網站的文件上其實有說蠻多的,可以參考 [1-2]。
在 Windows 上安裝 MongoDB
在下載好 MongoDB 之後,它會是個壓縮檔,解壓縮之後放在某個自己想放的位置
以官網的教學建議是放在 C:\mongodb,不過放在哪都無所謂~自己方便就好。
PS. 為了方便起見,後面都會以 C:\mongodb 當做是 MongoDB 的所在路徑。
接著要先建立 MongoDB 放資料庫的位置,預設會放在 C:\data\db 這個目錄
因此要用檔案總管或其他方式,把這個目錄建立起來,否則啟動 MongoDB 時它會告知找不到路徑而自行關閉。
如果不想要放在這個目錄,要用以下指令去更改路徑,這裡直接用官網的範例,即要改到 D:\test\mongodb\data:
C:\mongodb\bin\mongod.exe --dbpath d:\test\mongodb\data如果路徑包含空白,例如路徑是「D:\test\mongo db data」的話,可以用雙引號把完整路徑包起來,例如:
C:\mongodb\bin\mongod.exe --dbpath "d:\test\mongo db data"基本上這樣就完成 MongoDB 的安裝了(咦?!)
嚴格來說它根本也沒什麼好安裝的,就是壓縮檔抓下來解壓縮就好 XD。
啟動 MongoDB
啟動 MongoDB 只要執行以下的指令,就可以啟動 MongoDB 了。
C:\mongodb\bin\mongod.exe
MongoDB 的使用方法
MongoDB 有一些第三方的 UI 可以操作,而原生的方法好像就是用 JavaScript 操作~可以參考 [2]。
在 Windows 上,MongoDB 有提供 JavaScript 的介面,可以輸入 JavaScript 的語法。
進入方法是執行以下的指令:
C:\mongodb\bin\mongo.exe接著就可以直接執行 MongoDB 的指令或者是其他的 JavaScript 語法了。
MongoDB 基本的指令:
- use db_name:選擇要使用的資料庫
- db.collection_name.save(data);:在 collection_name 這個集合裡插入 data 這個資料,其中 data 是一個 JSON 格式的文字。
- db.collection_name.find(data);:在 collection_name 這個集合裡搜尋出滿足 data 條件的資料。
舉例來說,我想要測試在 MongoDB 裡面建立 100 萬筆隨機的資料,可以輸入以下的語法:
var start = new Date(); for(i=0 ; i<1000000 ; i++) db.things.save( {k: Math.ceil(Math.random()*20), j:i} ); var end = new Date(); print(end-start + "ms");註:在 command-line 模式下,由於這堆指令要馬上接著執行,所以最好是全部弄成一行一次送出
不然想要衡量花費的時間就不準了。
最後印出的結果如下:
112288ms表示像上面那樣要建立 100 萬筆資料,大約要花掉將近兩分鐘的時間。
上面的測試有呼叫 JavaScript 的 Math.random() 和 Math.ceil() 來取得 0~20 的亂數,總共花的時間是 112.288 秒。
我也有測試了不使用 Math 函式,但同樣加入 100 萬筆資料,花的時間是 107.407 秒,其實差異並不大。
接著我要測試找出所有 k = 1(即具有 {"k": 1} 的資料)的資料,是使用 find() 函式,範例如下:
var count=0; var start = new Date(); var cursor = db.things.find({k:1}); while(cursor.hasNext()) { cursor.next(); count++; } var end = new Date(); print(end-start + "ms"); print(count + " counts");印出來結果如下:
834ms 50039 counts而對 k 加上 Index 之後,效果則是變為如下:
593ms 50039 counts
參考資料:
1、Install MongoDB on Windows
2、MongoDB Tutorial
沒有留言:
張貼留言