定義
MongoDB 是一個(gè)基于分布式文件存儲(chǔ)的數(shù)據(jù)庫(kù)。由 C++語(yǔ)言編寫(xiě)。旨在為 WEB應(yīng)用提供可擴(kuò)展的高性能數(shù)據(jù)存儲(chǔ)解決方案。
MongoDB 是一個(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ù)的。
資料
官網(wǎng)
文檔
了解 MongoDB 看這一篇就夠了-知乎
功能支持
視圖
- 只讀視圖(從MongoDB 3.4開(kāi)始)
- 按需實(shí)例化視圖(從MongoDB 4.2開(kāi)始)。
高性能
MongoDB提供高性能的數(shù)據(jù)持久性。特別是,
- 對(duì)嵌入式數(shù)據(jù)模型的支持減少了數(shù)據(jù)庫(kù)系統(tǒng)上的I / O活動(dòng)。
- 索引支持更快的查詢,并且可以包括來(lái)自嵌入式文檔和數(shù)組的鍵。
豐富的查詢語(yǔ)言
MongoDB支持豐富的查詢語(yǔ)言,以支持讀寫(xiě)操作(CRUD)以及:
也可以看看
高可用性
MongoDB的復(fù)制工具(稱為副本集)提供:
- 自動(dòng)故障轉(zhuǎn)移
- 數(shù)據(jù)冗余。
甲副本集是一組保持相同的數(shù)據(jù)集,從而提供冗余和提高數(shù)據(jù)可用性的MongoDB服務(wù)器。
水平可伸縮性
MongoDB提供水平可伸縮性作為其核心 功能的一部分:
- 分片在一組計(jì)算機(jī)集群分布數(shù)據(jù)。
- 從3.4開(kāi)始,MongoDB支持基于shard鍵創(chuàng)建數(shù)據(jù)區(qū)域。在平衡的集群中,MongoDB僅將區(qū)域覆蓋的讀寫(xiě)定向到區(qū)域內(nèi)的那些分片。有關(guān) 更多信息,請(qǐng)參見(jiàn)區(qū)域手冊(cè)頁(yè)。
支持多種存儲(chǔ)引擎
MongoDB支持多個(gè)存儲(chǔ)引擎:
- WiredTiger存儲(chǔ)引擎(包括對(duì)靜態(tài)加密的支持 )
- 內(nèi)存中存儲(chǔ)引擎。
此外,MongoDB提供可插拔的存儲(chǔ)引擎API,允許第三方為MongoDB開(kāi)發(fā)存儲(chǔ)引擎。