公告介绍 MongoDB 8.0,史上最快的 MongoDB!阅读更多 >>介绍 MongoDB 8.0,史上最快的 MongoDB!>>

MongoDB是一款通用型文档数据库,专为现代应用程序开发和云服务而设计。其横向扩展架构允许您通过添加更多节点来共享负载,以满足系统日益增长的需求。

MongoDB的关键特性

以下是您在学习MongoDB时可能会遇到的一些关键概念和术语。


文档:文档数据库中的记录

MongoDB以JSON文档的形式存储数据。

文档数据模型自然地映射到应用程序代码中的对象,使开发者可以轻松学习和使用。

JSON文档中的字段可以因文档而异。与传统的关系型数据库表相比,添加字段意味着在数据库表中添加一列,从而影响到数据库中的每个记录。

文档可以嵌套以表达层次关系,并存储如数组之类的结构。

JSON Document

文档模型提供了处理来自多个来源的复杂、快速变化、混乱数据的灵活性。它使开发者能够快速交付新的应用程序功能。

为了实现更快的内部访问并支持更多数据类型,MongoDB将文档转换为称为二进制JSON或BSON的格式。但从开发者的角度来看,MongoDB是一个JSON数据库


集合:文档分组

在MongoDB中,集合是一组文档。

如果您熟悉关系型数据库,可以将集合视为表。但MongoDB中的集合具有更大的灵活性。除非您进行配置,否则集合不强制执行模式,同一集合中的文档可以具有不同的字段。

每个集合都与一个MongoDB数据库相关联。要显示特定数据库中的哪些集合,请使用命令listCollections


副本集:确保高可用性

确保高可用性的重要方法之一是保留多个数据副本。在MongoDB中,高可用性是设计的一部分。

在MongoDB中创建数据库时,系统会自动创建至少两个数据副本,称为副本集。副本集是一组至少三个MongoDB实例,它们之间持续复制数据,提供冗余并防止系统故障或计划维护时的停机。


分片:处理大规模数据增长的扩展性

现代数据平台需要能够处理非常快速的查询和大规模数据集,并使用由小型机器组成的更大的集群。分片是将数据智能地分布到多个机器的术语。

MongoDB中的分片是如何工作的?MongoDB在集合级别分片数据,将集合中的文档分布到集群中的分片中。结果是支持甚至最大型应用的可扩展架构。

Sharding with MongoDB


索引:提高查询速度

索引支持查询的高效执行。MongoDB提供了多种不同的索引策略,包括多个字段的复合索引。精心选择索引可以加快查询速度,因为查询扫描的是索引,而不是读取集合中的每个文档。

分析哪些查询可以从添加索引中受益仍需做大量工作。一个为您执行此分析的工具是性能顾问,它可以分析查询并建议可以改进查询性能的索引。


聚合管道:快速数据流

MongoDB提供了一个灵活的框架,用于创建数据处理的管道,称为聚合管道。它具有数十个阶段和超过150个运算符和表达式,能够让您以规模处理、转换和分析任何结构的数据。最近新增的是联合阶段,它可以灵活地聚合多个集合的结果。

MongoDB Aggregation Pipeline


编程语言:MongoDB支持您的语言吗?

您可以使用哪些语言与MongoDB一起使用?支持的语言列表包括Node.js、C、C++、C#、GoJava、Perl、PHP、Python、Ruby、Rust、Scala、Swift等等。每种语言的库都得到积极维护,这意味着它会随着新特性、错误修复、安全补丁和性能改进进行更新。


如何监控MongoDB

您可以通过检查实例状态、集群操作和连接指标、硬件指标等方式,仅使用一些实用工具和命令来监视集群的健康状况和性能。监控可以帮助您在问题变得严重之前检测和响应。


MongoDB云服务

MongoDB最初是一个开源数据库,它仍然可以通过MongoDB社区版以这种方式使用。

在MongoDB企业版中,高级功能通过商业许可证提供。

MongoDB Atlas是MongoDB企业版的一种数据库即服务(DBaaS)版本,可在所有公共云上提供。

MongoDB Atlas已通过内置的紧密集成功能进行了扩展,例如Atlas搜索、Atlas矢量搜索和其他用于地理定位数据和备份的高级功能。


了解更多:超越基础

现在,您已经熟悉了在学习MongoDB时可能会遇到的术语,为什么不立即开始使用MongoDB Atlas呢?在此过程中,加入MongoDB社区,该社区提供从论坛到网络研讨会再到MongoDB大学的免费课程。一个好的开始是介绍性的M001:MongoDB基础课程。

MongoDB是一种通用数据库,具有广泛的使用案例。如果您仍在考虑MongoDB是否是您应用程序的正确选择,请查看为什么使用MongoDB?文章。


在我们的MongoDB基础系列中了解更多。


准备好开始了吗?

免费使用 MongoDB Atlas 在云端尝试 MongoDB。无需信用卡。