《MongoDB入门教程》第01篇 MongoDB简介

Posted 不剪发的Tony老师

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了《MongoDB入门教程》第01篇 MongoDB简介相关的知识,希望对你有一定的参考价值。

MongoDB

MongoDB 是一个开源、跨平台、分布式文档数据库,属于 NoSQL(Not Only SQL)数据库的一种。

简单易用

MongoDB 是一个面向文档的数据库,使用文档(document)对象存储数据,这种方式比关系型数据库(RDBMS)中的数据行格式更加灵活。

文档可以支持在单个记录中表示复杂的层级关系。

MongoDB 不需要预定义模式结构(schema),可以更加方便快捷地增加或删除文档中的字段。

可扩展

随着数据量的增长,我们将会面临可扩展性的挑战。一般来说,扩展方式有两种:

  • 纵向扩展(Scaling up),升级服务器的资源(CPU、RAM 等)。
  • 横向扩展(Scaling out),为集群增加更多的服务器。这种方式比纵向扩展更加经济、可扩展性更好,缺点就是管理更加复杂。

MongoDB 天生具有横向扩展性。

MongoDB 可以将数据分布式存储到多个服务器中,同时可以自动管理跨节点的负载均衡,将数据操作路由到相应的服务器。下图演示了 MongoDB 使用 sharding 分片进行横向扩展的示意:

功能丰富

作为一个数据库管理系统,MongoDB 支持数据的插入、更新、删除以及查询。除此之外,MongoDB 还提供了以下功能:

  • 索引
  • 聚合
  • 指定集合与索引的类型
  • 文件存储

我们将会在后面的教程中详细介绍这些功能。

高性能

MongoDB 提供了高性能的数据存储,例如,嵌入式数据模型可以减少 I/O 操作,索引可以加速查询。

MongoDB 的理念就是创建一个可扩展、灵活且高性能的全功能数据库。

MongoDB 版本

MongoDB 提供了三种不同的版本:社区版、企业版以及云数据库(Atlas)。

MongoDB 社区版

MongoDB 社区版可以免费使用,支持 Windows、Linux 以及 macOS 平台。

MongoDB 社区版使用(SSPL) 许可证,意味着如果我们将 MongoDB 作为一个公共服务提供给其他人使用,必须开源支持该服务的软件代码,例如管理或者监控该服务的工具。否则,我们需要购买企业版。

如果我们使用 MongoDB 社区版作为应用程序的一个组件,而不是最终的产品,可以免费使用。

MongoDB 企业版

MongoDB 企业版是 MongoDB 的商业版本,也是 MongoDB 企业高级订阅的一部分。

MongoDB 企业版提供了很多社区版不支持的功能,例如:

  • 内存(In-Memory)存储引擎
  • 审计功能
  • Kerberos 认证
  • LDAP 代理认证和 LDAP 授权
  • 静态加密

MongoDB Atlas

MongoDB Atlas 是一个全球云数据库服务。它是一种数据库即服务(database as a service),可以让我们专注于应用开发,而不是管理数据库。

MongoDB Atlas 支持各种常见的云平台,包括 AWS、Azure 以及 GCP,国内的阿里云、腾讯云也提供了相应的服务。MongoDB Atlas 为个人提供了用于学习的免费数据库服务。

以上是关于《MongoDB入门教程》第01篇 MongoDB简介的主要内容,如果未能解决你的问题,请参考以下文章

《MongoDB入门教程》第02篇 MongoDB安装

《MongoDB入门教程》第04篇 MongoDB客户端

《MongoDB入门教程》第04篇 MongoDB客户端

《MongoDB入门教程》第04篇 MongoDB客户端

《MongoDB入门教程》第03篇 MongoDB基本概念

《MongoDB入门教程》第03篇 MongoDB基本概念