標籤:style blog http os 使用 sp 資料 div on
http://blog.chinaunix.net/space.php?uid=22270773&do=blog&id=19935171. 如果無特別用途,建議:表名,欄位名 全部用小寫字母。
2. 儘可能的縮短欄位名的長度,必要的時候,可以考慮建立一個key 與實際意義的map表,
盡量降低key 的長度。
3. mongodb 單表最大索引數 為64個,這個是提示性建議。索引的指導原則,與mysql、oracle 一致,
盡量減少索引的數目,所有的排序欄位應該都有索引,索引儘可能小, 所以這個再開發設計階
段,要做好規劃。
4. mongodb 不像mysql oracle 那麼可以方便的添加欄位,如果添加欄位且帶有default 值,
需要全部資料都要修改,這也是設計階段需要考慮的事情, 這個問題的另外一種解法是應用
代碼裡做一次判斷。
5. 對於做資料庫使用的Mongodb(做緩衝使用的可以不做密碼驗證)
6. 注意片段問題,經測試,同數量資料純寫入和存在update delete的,後者費空間較多;
所以要觀察faults等值判斷是否需要做磁碟重組;
整理方法暫時發現有:dump-restore、repair對單點庫或主從庫,會影響服務。
對於replset 方式部署的,可以採用輪換的方式,其中一台庫下線,剷除資料,從新從叢集中作全同步。
經過測試,repair 方式比較慢,採取dump-restore 或者重新同步的方式速度可以接受。
對Master-Slave 方式部署的,就相當於從庫重做+一次主從切換。
7. 資料來源串連方式,使用串連池模式,盡量減少認證帶來的效能額外消耗
建議採用標準的uri 串連方式: mongodb://user:[email protected]:port,host:port/db
8. Mongodb日誌量比較大,正常情況下只需要開啟-v或以下,並做日誌復原刪除。
ongodb 的-v 日誌適合在開發環境的調試線上部署 不建議採用這個參數,
目前線上部署的情況,-v 日誌一天也會有幾個G的日誌量,去掉這個參數,
跟資料查詢相關的操作就不會記日誌了,資料庫的內部的重要操作還是會寫日誌的。
9. mongodb的索引每次也是只能用到一個索引,對資料的查詢不會“並發”執行
例如: db.tab.find({‘id‘=1,‘name‘=2}) 如果‘id’,‘name‘ 列上分別有索引
對查詢效率提升意義不大,如果索引為(‘id‘,‘name‘) 則大幅提升效率。
mongoDB 使用總結