{eval=Array;=+count(Array);}

成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

問(wèn)答專欄Q & A COLUMN

mongodb主要用來(lái)干嘛,什么時(shí)候用,存什么樣的數(shù)據(jù)?

EnlightenmentEnlightenment 回答0 收藏1
收藏問(wèn)題

1條回答

W_BinaryTree

W_BinaryTree

回答于2022-06-28 15:22

隨著云計(jì)算的高速發(fā)展,越來(lái)越多的應(yīng)用需要存儲(chǔ)海量數(shù)據(jù),并且對(duì)高并發(fā)和處理海量數(shù)據(jù)提出了更高的要求,傳統(tǒng)的關(guān)系型數(shù)據(jù)庫(kù)對(duì)于這些應(yīng)用場(chǎng)景難以滿足應(yīng)用需求。

作為NoSQL數(shù)據(jù)庫(kù)之一的MongoDB數(shù)據(jù)庫(kù)能夠完全滿足和解決在海量數(shù)據(jù)存儲(chǔ)方面的應(yīng)用,越來(lái)越多的大網(wǎng)站和企業(yè)選擇MongoDB代替Mysql進(jìn)行存儲(chǔ)。

什么是MongoDB?

MongoDB[1] 是一個(gè)基于分布式文件存儲(chǔ)的數(shù)據(jù)庫(kù)。由C 語(yǔ)言編寫。旨在為WEB應(yīng)用提供可擴(kuò)展的高性能數(shù)據(jù)存儲(chǔ)解決方案。

MongoDB[2] 是一個(gè)介于關(guān)系數(shù)據(jù)庫(kù)和非關(guān)系數(shù)據(jù)庫(kù)之間的產(chǎn)品,是非關(guān)系數(shù)據(jù)庫(kù)當(dāng)中功能最豐富,最像關(guān)系數(shù)據(jù)庫(kù)的。Mongo最大的特點(diǎn)是他支持的查詢語(yǔ)言非常強(qiáng)大,其語(yǔ)法有點(diǎn)類似于面向?qū)ο蟮牟樵冋Z(yǔ)言,幾乎可以實(shí)現(xiàn)類似關(guān)系數(shù)據(jù)庫(kù)單表查詢的絕大部分功能,而且還支持對(duì)數(shù)據(jù)建立索引。

MongoDB的主要特點(diǎn)

(1)文件存儲(chǔ)格式為Bson,使用易于掌握和理解的Json風(fēng)格語(yǔ)法。相對(duì)Json來(lái)說(shuō),Bson擁有更好的性能,主要表現(xiàn)為更快的遍歷速度、操作更簡(jiǎn)易、增加了額外的
數(shù)據(jù)類型。
(2)模式自由,支持嵌入子文檔和數(shù)組,無(wú)需事先創(chuàng)建數(shù)據(jù)結(jié)構(gòu),屬于逆規(guī)范化的數(shù)據(jù)模型,有利于提高查詢速度。
(3)動(dòng)態(tài)查詢,支持豐富的查詢表達(dá)式,使用Json形式的標(biāo)記,可輕易查詢文檔中內(nèi)嵌的對(duì)象和數(shù)組及子文檔。
(4)完整的索引支持,包括文檔內(nèi)嵌對(duì)象和數(shù)據(jù),同時(shí)還提供了全文索引方式,MongoDB的查詢優(yōu)化器會(huì)分析查詢表達(dá)式,并生成一個(gè)高效的查詢計(jì)劃。
(5)使用高效的二進(jìn)制數(shù)據(jù)存儲(chǔ),適合存儲(chǔ)大型對(duì)象(如高清圖片、視頻等)。
(6)支持多種復(fù)制模式,提供冗余及自動(dòng)故障轉(zhuǎn)移。支持Master-Slave、Replica Pairs/Replica Sets、有限Master-Master模式。
(7)支持服務(wù)端腳本和Map/Reduce,可以實(shí)現(xiàn)海量數(shù)據(jù)計(jì)算,即實(shí)現(xiàn)云計(jì)算功能。
(8)性能高、速度快。在多數(shù)場(chǎng)合,其查詢速度對(duì)于MySQL要快的多,對(duì)于CPU占用非常小。部署很簡(jiǎn)單,幾乎是零配置。
(9)自動(dòng)處理碎片,支持自動(dòng)分片功能實(shí)現(xiàn)水平擴(kuò)展的數(shù)據(jù)庫(kù)集群,可以動(dòng)態(tài)添加或移除節(jié)點(diǎn)。
(10)內(nèi)置GridFS,支持海量存儲(chǔ)。
(11)可通過(guò)網(wǎng)絡(luò)訪問(wèn),采用高效的MongoDB網(wǎng)絡(luò)協(xié)議,在性能方面要優(yōu)于http或Rest協(xié)議。
(12)第三方支持豐富,MongoDB社區(qū)活躍,越來(lái)越多的公司和網(wǎng)站在生產(chǎn)環(huán)境中使用MongoDB進(jìn)行技術(shù)架構(gòu)優(yōu)化,同時(shí)由10gen公司官方提供強(qiáng)大技術(shù)支持。

MongoDB的適用場(chǎng)景

MongoDB的主要目標(biāo)是在鍵/值存儲(chǔ)方式(提供了高性能和高度伸縮性)以及傳統(tǒng)的RDBMS系統(tǒng)(豐富的功能)架起一座橋梁,集兩者的優(yōu)勢(shì)于一身。
(1)網(wǎng)站數(shù)據(jù):MongoDB非常適合實(shí)時(shí)的插入,更新與查詢,并具備網(wǎng)站實(shí)時(shí)數(shù)據(jù)存儲(chǔ)所需的復(fù)制及高度伸縮性。
(2)緩存:由于性能很高,MongoDB也適合作為信息基礎(chǔ)設(shè)施的緩存層。在系統(tǒng)重啟之后,由MongoDB搭建的持久化緩存層可以避免下層的數(shù)據(jù)源過(guò)載。
(3)大尺寸,低價(jià)值的數(shù)據(jù):使用傳統(tǒng)的關(guān)系型數(shù)據(jù)庫(kù)存儲(chǔ)一些數(shù)據(jù)時(shí)可能會(huì)比較昂貴,在此之前,很多時(shí)候程序員往往會(huì)選擇傳統(tǒng)的文件進(jìn)行存儲(chǔ)。
(4)高伸縮性的場(chǎng)景:MongoDB非常適合由數(shù)十或數(shù)百臺(tái)服務(wù)器組成的數(shù)據(jù)庫(kù)。MongoDB的路線圖中已經(jīng)包含對(duì)MapReduce
引擎的內(nèi)置支持。
(5)用于對(duì)象及JSON數(shù)據(jù)的存儲(chǔ):MongoDB的Bson數(shù)據(jù)格式非常適合文檔化格式的存儲(chǔ)及查詢。

如有不同觀點(diǎn),歡迎發(fā)表評(píng)論。如果喜歡我的回答,歡迎“點(diǎn)贊、分享”。

評(píng)論0 贊同0
  •  加載中...

最新活動(dòng)

您已邀請(qǐng)0人回答 查看邀請(qǐng)

我的邀請(qǐng)列表

  • 擅長(zhǎng)該話題
  • 回答過(guò)該話題
  • 我關(guān)注的人
向幫助了您的網(wǎng)友說(shuō)句感謝的話吧!
付費(fèi)偷看金額在0.1-10元之間
<