MongoDB 簡介(官方文檔翻譯)
MongoDB 是一個開源的文檔型數據庫,它有著高性能,高可用性和自動擴展的優點。
文檔型數據庫(Document Database)
在 MongoDB 中的一條記錄就是一個以多個鍵值對形式的數據結構組成的一個文檔。 MongoDB 中的文檔類似於數個 JSON 對象。其中鍵所對應的值也可能包含其它的文檔、數組或者數組文檔。
{
name: "sue", <---- field:value
age: "26", <---- field:value
status: "A", <---- field:value
groups: [ "news", "sports"] <---- field:value
}
使用文檔的優勢體現在:
- 文檔(也就是對象)對應於許多編程語言中的本地數據類型;
- 在嵌入文檔和數組方麵減少了高成本的耗費;
- 動態的模式支持流暢的數據多樣性
主要特性
高性能
MongoDB 提供了高性能的數據持久化。尤其是,
- 在嵌入數據模型時對減少數據係統 I/O 活動的支持;
- Indexes 支持更快的查詢,並且可以包含嵌入的文檔和數組中的鍵。
豐富的查詢語言
MongoDB 為讀寫操作(CRUD)提供了豐富的查詢語言,比如:
高效性
MongoDB 的同步複製功能,也稱為 replica set 複製集,提供如下功能:
- 自動故障轉移
- 數據冗餘
一個複製集 replica set 就是一組維護相同數據集的 MongoDB 服務器,它提供了冗餘度並提高了數據可用性。
Horizontal Scalability 水平可擴展性
MongoDB 的水平擴展性是它提供的一項核心功能:
- 分片 Sharding功能將數據分布到一個計算機集群中;
- MongoDB 3.4 基於shard key 片鍵創建了數個數據區 zones of data. 在均衡的集群下,MongoDB 隻會對每個有分片嵌入的區進行讀寫操作。查看 Zones 獲 取更多的信息。
支持多種數據存儲引擎
MongoDB 支持多種數據引擎,比如:
另外,MongoDB 提供了可插拔式的數據存儲引擎 API,它允許第三方為 MongoDB 繼續開發存儲引擎。
最後更新:2017-08-19 13:02:13