日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

MongoDB系列之适用场景和不适用场景

發(fā)布時(shí)間:2024/3/26 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MongoDB系列之适用场景和不适用场景 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

MongoDB是一款開源的分布式架構(gòu)的NoSQL數(shù)據(jù)庫管理系統(tǒng)。在前面的NoSQL和SQL對比學(xué)習(xí)中,我們知道了NoSQL數(shù)據(jù)庫系統(tǒng)和傳統(tǒng)的RDBMS的不同和優(yōu)點(diǎn)

1、MongoDB優(yōu)點(diǎn)

可以簡單列舉MongoDB一些明顯的主要的優(yōu)點(diǎn)

  • 速度:MongoDB比一般的關(guān)系型數(shù)據(jù)庫快很多,作為面向文檔的NoSQL數(shù)據(jù)庫,MongoDB可以通過索引使訪問文檔變得很容易而且快速
  • 分片:MongoDB另外一個(gè)優(yōu)勢是允許用戶存儲大量的數(shù)據(jù),其通過分片的方式將數(shù)據(jù)分發(fā)到多個(gè)服務(wù)器上。
  • 靈活性:因?yàn)镸ongoDB是非結(jié)構(gòu)化的數(shù)據(jù)庫系統(tǒng),而且多種數(shù)據(jù)類型,所以不需要像關(guān)系型數(shù)據(jù)那樣,進(jìn)行特別的表結(jié)構(gòu)設(shè)計(jì),存儲數(shù)據(jù)更加靈活
  • 分布式:MongoDB數(shù)據(jù)庫默認(rèn)支持分布式,內(nèi)帶分布式的解決方案

2、MongoDB局限性

  • 不支持連接:與支持連接的理性數(shù)據(jù)庫不同,MongoDB 不支持。盡管可以通過手動編碼來添加連接功能,但執(zhí)行起來可能會很慢并影響性能。
  • 數(shù)據(jù)大小有限制:MongoDB允許的文檔最大值為16MB
  • 不能無限嵌套:MongoDB的數(shù)據(jù)格式是BSON的,但是其不支持無限的嵌套,用戶不能超過100級的文檔嵌套
  • 高內(nèi)存:MongoDB會存儲每個(gè)值對的鍵名。它還受到數(shù)據(jù)冗余的影響,因?yàn)樗狈B接的功能。這會導(dǎo)致高內(nèi)存使用率。
  • 不支持業(yè)務(wù)復(fù)雜查詢:MySQL這些類型數(shù)據(jù)庫都可以進(jìn)行表連接等等復(fù)雜業(yè)務(wù)查詢,MongoDB是文檔型的數(shù)據(jù)庫,所以不支持聯(lián)表(Collection)查詢

3、適用場景

歸納了MongoDB一些比較明顯的特征后,我們可以知道MongoDB的一些適用場景。

在MongoDB官網(wǎng)也會列舉了MongoDB的適用場景:

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

4、不適用場景

  • 1)高度事務(wù)性系統(tǒng):例如銀行或會計(jì)這些金融系統(tǒng)。傳統(tǒng)的關(guān)系型數(shù)據(jù)庫目前還是更適用于需要大量原子性復(fù)雜事務(wù)的應(yīng)用程序。
  • 2)傳統(tǒng)的商業(yè)智能應(yīng)用:針對特定問題的 BI 數(shù)據(jù)庫會對產(chǎn)生高度優(yōu)化的查詢方式。對于此類應(yīng)用,關(guān)系型可能是更合適的選擇。

所以,對于需要復(fù)雜 SQL 查詢的問題。MongoDB是不太適合的,在技術(shù)選項(xiàng)上需要根據(jù)業(yè)務(wù)場景和公司實(shí)際情況選擇合適的數(shù)據(jù)庫,關(guān)系型數(shù)據(jù)庫和NoSQL數(shù)據(jù)庫各有優(yōu)缺點(diǎn),應(yīng)該根據(jù)實(shí)際場景合理選擇數(shù)據(jù)庫

5、參考資料

  • MongoDB應(yīng)用場景:https://hevodata.com/learn/mongodb-use-case/
  • MongoDB 官網(wǎng)地址:https://www.mongodb.com/
  • MongoDB 官方英文文檔:https://docs.mongodb.com/manual/
  • MongoDB 各平臺下載地址:https://www.mongodb.com/download-center#community

總結(jié)

以上是生活随笔為你收集整理的MongoDB系列之适用场景和不适用场景的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。