且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

MongoDB 简介(官方文档翻译)

更新时间:2022-05-15 15:17:04

  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 的水平扩展性是它提供的一项核心功能:

支持多种数据存储引擎

  MongoDB 支持多种数据引擎,比如:

另外,MongoDB 提供了可插拔式的数据存储引擎 API,它允许第三方为 MongoDB 继续开发存储引擎。