好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > 提升MongoDB性能的方法

提升MongoDB性能的方法

熱門標簽:高德地圖標注中心個人注冊 寶應電信400電話辦理費用 電銷機器人針對的 外呼系統(tǒng)防封號違法嗎 400電話辦理都選易號網(wǎng) 高德地圖標注模式 外呼系統(tǒng)服務 如何在高德地圖標注新地址 湘潭電銷機器人咨詢電話

MongoDB 是高性能數(shù)據(jù),但是在使用的過程中,大家偶爾還會碰到一些性能問題。MongoDB和其它關系型數(shù)據(jù)庫相比,例如 SQL Server 、MySQL 、Oracle 相比來說,相對較新,很多人對其不是很熟悉,所以很多開發(fā)、DBA往往是注重功能的實現(xiàn),而忽視了性能的要求。其實,MongoDB和 SQL Server 、MySQL 、Oracle 一樣,一個 數(shù)據(jù)庫對象的設計調(diào)整、索引的創(chuàng)建、語句的優(yōu)化,都會對性能產(chǎn)生巨大的影響。

為了充分挖掘MongoDB性能,現(xiàn)簡單總計了以下18條,歡迎大家一起來持續(xù)總結(jié)完善。

(1)文檔中的_id鍵推薦使用默認值,禁止向_id中保存自定義的值。

解讀: MongoDB文檔中都會有一個“_id”鍵,默認是個ObjectID對象(標識符中包含時間戳、機器ID、進程ID和計數(shù)器)。MongoDB在指定_id與不指定_id插入時 速度相差很大,指定_id會減慢插入的速率。

(2)推薦使用短字段名。

解讀:與關系型數(shù)據(jù)庫不同,MongoDB集合中的每一個文檔都需要存儲字段名,長字段名會需要更多的存儲空間。

(3)MongoDB索引可以提高文檔的查詢、更新、刪除、排序操作,所以結(jié)合業(yè)務需求,適當創(chuàng)建索引。

(4)每個索引都會占用一些空間,并且導致插入操作的資源消耗,因此,建議每個集合的索引數(shù)盡量控制在5個以內(nèi)。

(5)對于包含多個鍵的查詢,創(chuàng)建包含這些鍵的復合索引是個不錯的解決方案。復合索引的鍵值順序很重要,理解索引最左前綴原則。

解讀:例如在test集合上創(chuàng)建組合索引{a:1,b:1,c:1}。執(zhí)行以下7個查詢語句:

db.test.find({a:”hello”}) // 1
db.test.find({b:”sogo”, a:”hello”}) // 2
db.test.find({a:”hello”,b:”sogo”, c:”666”}) // 3
db.test.find({c:”666”, a:”hello”}) // 4
db.test.find({b:”sogo”, c:”666”}) // 5
db.test.find({b:”sogo” }) // 6
db.test.find({c:”666”}) // 7

以上查詢語句可能走索引的是1、2、3、4

查詢應包含最左索引字段,以索引創(chuàng)建順序為準,與查詢字段順序無關。

最少索引覆蓋最多查詢。

(6)TTL 索引(time-to-live index,具有生命周期的索引),使用TTL索引可以將超時時間的文檔老化,一個文檔到達老化的程度之后就會被刪除。

解讀:創(chuàng)建TTL的索引必須是日期類型。TTL索引是一種單字段索引,不能是復合索引。TTL刪除文檔后臺線程每60s移除失效文檔。不支持定長集合。

(7)需要在集合中某字段創(chuàng)建索引,但集合中大量的文檔不包含此鍵值時,建議創(chuàng)建稀疏索引。

解讀:索引默認是密集型的,這意味著,即使文檔的索引字段缺失,在索引中也存在著一個對應關系。在稀疏索引中,只有包含了索引鍵值的文檔才會出現(xiàn)。

(8)創(chuàng)建文本索引時字段指定text,而不是1或者-1。每個集合只有一個文本索引,但是它可以為任意多個字段建立索引。

解讀:文本搜索速度快很多,推薦使用文本索引替代對集合文檔的多字段的低效查詢。

(9)使用findOne在數(shù)據(jù)庫中查詢匹配多個項目,它就會在自然排序文件集合中返回第一個項目。如果需要返回多個文檔,則使用find方法。

(10)如果查詢無需返回整個文檔或只是用來判斷鍵值是否存在,可以通過投影(映射)來限制返回字段,減少網(wǎng)絡流量和客戶端的內(nèi)存使用。

解讀:既可以通過設置{key:1}來顯式指定返回的字段,也可以設置{key:0}指定需要排除的字段。

(11)除了前綴樣式查詢,正則表達式查詢不能使用索引,執(zhí)行的時間比大多數(shù)選擇器更長,應節(jié)制性地使用它們。

(12)在聚合運算中,$要在match要在$group前面,通過$前置,可以減少match前置,可以減少$ group 操作符要處理的文檔數(shù)量。

(13)通過操作符對文檔進行修改,通常可以獲得更好的性能,因為,不需要往返服務器來獲取并修改文檔數(shù)據(jù),可以在序列化和傳輸數(shù)據(jù)上花費更少的時間。

(14)批量插入(batchInsert)可以減少數(shù)據(jù)向服務器的提交次數(shù),提高性能。但是批量提交的BSON Size不超過48MB。

(15)禁止一次取出太多的數(shù)據(jù)進行排序,MongoDB目前支持對32M以內(nèi)的結(jié)果集進行排序。如果需要排序,請盡量限制結(jié)果集中的數(shù)據(jù)量。

(16)查詢中的某些$操作符可能會導致性能低下,如操作符可能會導致性能低下,如$ne,$,not,$exists,$nin,$or盡量在業(yè)務中不要使用。

a) $exist:因為松散的文檔結(jié)構(gòu)導致查詢必須遍歷每一個文檔;

b) $ne:如果當取反的值為大多數(shù),則會掃描整個索引;

c) $not:可能會導致查詢優(yōu)化器不知道應當使用哪個索引,所以會經(jīng)常退化為全表掃描;

d) $nin:全表掃描;

e) \$有多個條件就會查詢多少次,最后合并結(jié)果集,應該考慮裝換為or:有多個條件就會查詢多少次,最后合并結(jié)果集,應該考慮裝換為$in。

(17)固定集合可以用于記錄日志,其插入數(shù)據(jù)更快,可以實現(xiàn)在插入數(shù)據(jù)時,淘汰最早的數(shù)據(jù)。需求分析和設計時,可考慮此特性,即提高了性能,有省去了刪除動作。

解讀:固定集合需要顯式創(chuàng)建,指定Size的大小,還能夠指定文檔的數(shù)量。集合不管先達到哪一個限制,之后插入的新文檔都會把最老的文檔移出。

(18)集合中文檔的數(shù)據(jù)量會影響查詢性能,為保持適量,需要定期歸檔。

Mongodb性能優(yōu)化

數(shù)據(jù)庫性能對軟件整體性能有著至關重要的影響,對于Mongodb數(shù)據(jù)庫常用的性能優(yōu)化方法主要有:

1、范式化與反范式化;

2、填充因子的使用;

3、索引的使用;

以上就是本次給大家整理的關于提升MongoDB性能的方法的全部內(nèi)容,感謝大家對腳本之家的支持。

您可能感興趣的文章:
  • 記一次MongoDB性能問題(從MySQL遷移到MongoDB)
  • MongoDB數(shù)據(jù)庫查詢性能提高40倍的經(jīng)歷分享
  • 淺析Mongodb性能優(yōu)化的相關問題
  • MongoDB性能篇之創(chuàng)建索引,組合索引,唯一索引,刪除索引和explain執(zhí)行計劃
  • MongoDB查詢性能優(yōu)化驗證及驗證
  • MongoDB性能優(yōu)化及監(jiān)控

標簽:賀州 黔南 馬鞍山 宿遷 佛山 蘭州 黃山 南充

巨人網(wǎng)絡通訊聲明:本文標題《提升MongoDB性能的方法》,本文關鍵詞  提升,MongoDB,性能,的,方法,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權(quán)與本站無關。
  • 相關文章
  • 下面列出與本文章《提升MongoDB性能的方法》相關的同類信息!
  • 本頁收集關于提升MongoDB性能的方法的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 同性在线观看| 久久久久久精品国产亚洲小蛇| 又湿又痒下面有一紧| 日本草久| 午夜精品秘?一区二区三区城中村| 色情A片成人第一是好事还是恶性| 91涩涩涩| 黄免费在线观看| 色综合久久88色综久久天天 | 精品综合久久久久久8888| 鸥美一级片| 日本一级av无码毛片铃木凉| 韩影网三级| 久久精品免费观看视频| 国产成人精品午夜在线播放| 巨爆乳无码大乳一区二区| 一级日本婬片A片高潮中| 污网站免费观看在线高清| 国产免费看| yy6080午夜一级毛片超清| Japanese丰满熟女HD| 被三个男人绑着躁我好爽小说| 我的巨ru麻麻奶水喷| 午夜电影av| 成人国产精品秘?精东传媒| 动感女郎| 妻色成人网| 91色蝌蚪| 男人桶女人网站| aⅴ色国产 欧美| www.17.com人妻| 美女视频黄a全部免费看小说 | 草莓直播app| 亚洲精选一区二区三区| 久久8精品亚洲AV无码古代| 日韩精品中文字幕视频一区| 青柠视频最新| 性巴克app?破解版网站成人版| 欧美色臀AⅤ无码精品色情| 三明市| 日本aⅴ片|