mongodb學習筆記一

學無止境-逆流而上發表於2012-09-30
文件(document)相當於關係型資料庫的行,集合(collection)相當於關係型資料庫的表;文件中的鍵是字串,除少數例外情況下(\0,.,$),鍵可以使用任意UTF-8字元;集合是無模式的,如{"id":"a"},{"foo":5}可以在同一個集合裡面,集合裡面可以放置任意的文件,隨之而來的一個問題是:”還有必要使用多個集合嗎?“答案是:有必要,因為無論對開發者來說還是管理員來說都是噩夢!基本資料型別:null,布林,數字,字串,陣列,物件;訊息長度最大是16MB,所以批量插入還是有限制的,文件不超過4MB,插入時不做資料驗證,只是簡單的將文件原樣存入資料庫中,明顯的副作用是允許插入無效資料,從長遠來說它讓資料庫更安全,遠離注入式攻擊,因為注入者無法根據資料庫的報錯資訊瞭解表的結構,欄位型別,而且mongodb在插入式並不執行程式碼。mongodb的開發者選擇了不安全的版本作為預設選擇,很多關係型資料庫的應用程式不關心返回的程式碼也不檢查,但是又苦苦等待,getLastError返回是否成功執行,”安全“的代價是效能,所以使用者應該有選擇得選擇是否選擇安全模式,也可以選擇特定的資訊選擇安全模式。java等語言都會用連線池技術,把請求分散到這些連線中去。

相關文章