Database Manual

Introduction to MongoDBMongoDB简介

You can create a MongoDB database in the following environments:您可以在以下环境中创建MongoDB数据库:

To learn more about creating a MongoDB database with the Atlas UI, see Get Started with Atlas.要了解有关使用Atlas UI创建MongoDB数据库的更多信息,请参阅Atlas入门

Document Database文献数据库

A record in MongoDB is a document, which is a data structure composed of field and value pairs. MongoDB documents are similar to JSON objects. The values of fields may include other documents, arrays, and arrays of documents.MongoDB中的记录是一个文档,它是由字段和值对组成的数据结构。MongoDB文档类似于JSON对象。字段的值可能包括其他文档、数组和文档数组。

A MongoDB document.

The advantages of using documents are:使用文档的优点是:

  • Documents correspond to native data types in many programming languages.文档对应于许多编程语言中的本机数据类型。

  • Embedded documents and arrays reduce need for expensive joins.嵌入式文档和数组减少了对昂贵连接的需求。
  • Dynamic schema supports fluent polymorphism.动态模式支持流畅的多态性。

Collections/Views/On-Demand Materialized Views集合/视图/按需物化视图

MongoDB stores documents in collections. Collections are analogous to tables in relational databases.MongoDB将文档存储在集合中。集合类似于关系数据库中的表。

In addition to collections, MongoDB supports:除了集合,MongoDB还支持:

Key Features主要特点

High Performance高性能

MongoDB provides high performance data persistence. In particular,MongoDB提供高性能数据持久性。特别地,

  • Support for embedded data models reduces I/O activity on database system.对嵌入式数据模型的支持减少了数据库系统上的I/O活动。

  • Indexes support faster queries and can include keys from embedded documents and arrays.索引支持更快的查询,并且可以包含来自嵌入式文档和数组的键。

Query API查询API

The MongoDB Query API supports read and write operations (CRUD) as well as:MongoDB Query API支持读写操作(CRUD)以及:

High Availability高可用性

MongoDB's replication facility, called replica set, provides:MongoDB的复制设施称为副本集,提供:

  • automatic failover自动故障转移
  • data redundancy.数据冗余。

A replica set is a group of MongoDB servers that maintain the same data set, providing redundancy and increasing data availability.副本集是一组维护相同数据集的MongoDB服务器,提供冗余并提高数据可用性。

Horizontal Scalability水平可伸缩性

MongoDB provides horizontal scalability as part of its core functionality:MongoDB提供横向可扩展性作为其核心功能的一部分:

  • Sharding分片 distributes data across a cluster of machines.在一组机器上分发数据。
  • Starting in 3.4, MongoDB supports creating zones of data based on the shard key. In a balanced cluster, MongoDB directs reads and writes covered by a zone only to those shards inside the zone. See the Zones manual page for more information.从3.4开始,MongoDB支持基于分片键创建数据区域。在平衡集群中,MongoDB只将区域覆盖的读写操作定向到区域内的那些分片。有关更多信息,请参阅区域手册页面。

Support for Multiple Storage Engines支持多个存储引擎

MongoDB supports multiple storage engines:MongoDB支持多种存储引擎

In addition, MongoDB provides pluggable storage engine API that allows third parties to develop storage engines for MongoDB.此外,MongoDB提供了可插拔存储引擎API,允许第三方为MongoDB开发存储引擎。