📜  MongoDB 是如何工作的?

📅  最后修改于: 2021-09-08 15:16:51             🧑  作者: Mango

MongoDB 是一个开源的面向文档的数据库。它用于存储大量数据,还允许您处理这些数据。 MongoDB 不是基于类似表的关系数据库结构,而是提供了一种完全不同的数据存储和检索机制,这就是为什么称为 NoSQL 数据库的原因。在这里,术语“NoSQL”意味着“非关系”。存储的格式称为 BSON(类似于 JSON 格式)。

现在,让我们看看这个 MongoDB 是如何工作的?但在开始工作之前,首先,让我们讨论一下 MongoDB 的一些重要部分——

  • 驱动程序:您的服务器上存在用于与 MongoDB 通信的驱动程序。 MongoDB 支持的驱动程序有 C、C++、C# 和 .Net、Go、 Java、Node.js、Perl、 PHP、 Python、Motor、Ruby、Scala、Swift、Mongoid。
  • MongoDB Shell: MongoDB Shell 或 mongo shell 是 MongoDB 的交互式 JavaScript 界面。它用于查询、数据更新,还执行管理操作。
  • 存储引擎:它是 MongoDB 的重要组成部分,通常用于管理数据如何存储在内存和磁盘上。 MongoDB 可以有多个搜索引擎。您可以使用自己的搜索引擎,如果您不想使用自己的搜索引擎,则可以使用默认搜索引擎,称为WiredTiger 存储引擎,这是一个出色的存储引擎,它可以像阅读一样有效地处理您的数据、写作等。

MongoDB 的工作 –

下图显示了 MongoDB 的工作原理:

MongoDB 分两层工作——

  • 应用层
  • 数据层

应用层也称为最终抽象层,它有两部分,第一是前端(用户界面) ,第二是后端(服务器) 。前端是用户在 Web 或移动设备的帮助下使用 MongoDB 的地方。这个 web 和 mobile 包括网页、移动应用程序、android 默认应用程序、IOS 应用程序等。后端包含一个服务器,用于执行服务器端逻辑,还包含驱动程序或 mongo shell 以在帮助下与 MongoDB 服务器交互查询。

这些查询被发送到数据层中的 MongoDB 服务器。现在,MongoDB 服务器接收查询并将接收到的查询传递给存储引擎。 MongoDB 服务器本身不会直接将数据读取或写入文件或磁盘或内存。将接收到的查询传递给存储引擎后,存储引擎负责读取或写入文件或内存中的数据,基本上它管理数据。

注意:与内存相比,文件的读写速度较慢。