下載吧 - 綠色安全的游戲和軟件下載中心

          軟件下載吧

          當前位置:軟件下載吧 > 數據庫 > DB2 > MongoDB優化心得分享

          MongoDB優化心得分享

          時間:2024-03-09 11:51作者:下載吧人氣:31

          這里總結下這段時間使用mongo的心得,列出了幾個需要注意的地方。

          1. 系統參數及mongo參數設置

          mongo參數主要是storageEngine和directoryperdb,這兩個參數一開始不選定后續就無法再更改。

          directoryperdb主要是將數據庫分文件夾存放,方便后續的備份及數據遷移。

          storageEngine(存儲引擎)默認使用的是MMAPv1,推薦使用3.0新加入的引擎wiredTiger。經實際使用wiredTiger占用的磁盤空間是MMAP的1/5,索引大小是其1/2,查詢速度也提高很多,更重要的是該引擎提供了document級別的鎖,當集合插入或更新數據時不需要阻塞讀操作了。唯一的問題是市面上支持該引擎查詢的工具不多,MongoVUE無法查到該引擎存儲的集合,NosqlManager-mongo可以查到但需要.net環境支持。個人覺得熟悉下mongo command用mongo shell就足夠了,所以還是強烈推薦使用wiredTiger引擎。

          2. 無需對集合進行水平切分

          由于之前一直使用關系型數據庫,關系型數據庫當單表數據量超大時經常使用的一直方法是對數據表進行分表。在使用mongo時便很自然的覺得這招仍然有用。由于該系統的分表都是動態生成的,做到后面發現這招對mongo帶來的性能提升遠遠抵不過維護成本的增加。

          分析一下關系型數據庫分表會提高性能的最大原因是很多關系型數據庫一張表是一個文件,分表可以避免一個文件過大所造成數據提取速度變慢。但是mongo并不是這樣存儲的,所以這條并不成立了。

          用過的都知道mongo對索引的依賴非常大,如果集合不能一開始就設計好,那后續索引就得寫腳本來創建。這里貢獻個給mongo大表動態創建索引的腳本:

          eval(function () {
          var infos = [];
          var collNames = db.getCollectionNames();
          for (var i = 0; i < collNames.length; i++) {
          var collName = collNames[i];
          var collSize = db.getCollection(collName).count();
          if (collSize > 1000000 && collName.indexOf(“info_”)==0) {
          db.getCollection(collName).ensureIndex({publishDate:-1,blendedScore:-1,publishTime:-1,isRubbish:1},{name:”ScoreSortIdx”,background:true});
          db.getCollection(collName).ensureIndex({similarNum:-1,publishTime:-1,isRubbish:1},{name:”HotSortIdx”,background:true});
          db.getCollection(collName).ensureIndex({publishTime:-1,isRubbish:1},{name:”TimeSortIdx”,background:true});
          infos.push(“name:” + collName + “索引創建成功”);
          }
          }
          return infos;
          }());

          標簽MongoDB,優化,心得,分享

          相關下載

          查看所有評論+

          網友評論

          網友
          您的評論需要經過審核才能顯示

          熱門閱覽

          最新排行

          公眾號

          主站蜘蛛池模板: 国产精品成人一区二区三区| 日本片免费观看一区二区| 无码人妻aⅴ一区二区三区| 日韩免费观看一区| 国产在线精品一区二区高清不卡 | 在线视频精品一区| 亚洲AV无码一区二区三区电影 | 亚洲第一区香蕉_国产a| 蜜臀AV在线播放一区二区三区| 精品人伦一区二区三区潘金莲| 无码人妻精品一区二区蜜桃| 韩国女主播一区二区| 中文字幕精品无码一区二区| 亚洲天堂一区二区三区四区| 国产综合视频在线观看一区| 国产av熟女一区二区三区| 国内精品一区二区三区东京| 亚洲AV永久无码精品一区二区国产 | 日韩AV无码一区二区三区不卡毛片| 日韩欧国产精品一区综合无码| 亚洲中文字幕久久久一区| 丰满岳乱妇一区二区三区| 乱子伦一区二区三区| 国产伦理一区二区三区| 无码精品国产一区二区三区免费| 综合一区自拍亚洲综合图区| 国产视频一区在线观看| 精品国产免费观看一区| 无码人妻视频一区二区三区| 精品视频一区在线观看| 国内精品视频一区二区三区八戒| 久久精品国产免费一区| 国产乱人伦精品一区二区在线观看 | 国产一区二区在线视频| 色综合久久一区二区三区| 亚洲一区二区三区电影| 一区二区国产在线观看| 日韩av片无码一区二区不卡电影| 三上悠亚亚洲一区高清| 国产成人av一区二区三区不卡| 中文字幕精品一区影音先锋|