MongoDB教程学习手册

收录于 2023-04-20 00:10:05 · English · بالعربية · Español · हिंदीName · 日本語 · Русский язык · 中文繁體

MongoDB教程
MongoDB教程提供了SQL的基本和高级概念。我们的MongoDB教程是为初学者和专业人士设计的。
MongoDB是No SQL数据库。它是一个用C ++编写的开源,跨平台,面向文档的数据库。
我们的MongoDB教程包括MongoDB数据库的所有主题,例如插入文档,更新文档,删除文档,查询文档,投影,sort()和limit()方法,创建集合,放置集合等。还提供了MongoDB面试问题,以帮助您更好地了解MongoDB数据库。

什么是MongoDB

MongoDB 是一个开放源代码文档数据库,可提供高性能,高可用性和自动扩展
简单来说,您可以说-Mongo DB是一个面向文档的数据库。它是一个开放源代码产品,由一家名为10gen的公司开发和支持。
MongoDB可以免费获得General Public许可,也可以从制造商那里获得Commercial许可。
制造公司10gen将MongoDB定义为:
" MongoDB是可扩展的,开源的,高性能的,面向文档的数据库。" -10gen
MongoDB旨在与商品服务器配合使用。现在,它已被各行各业的各种规模的公司使用。

MongoDB的历史

MongoDB的最初开发始于2007年,当时该公司正在建立类似于window azure的平台即服务。
Window azure是Microsoft创建的一种云计算平台和基础架构,用于通过全球网络构建,部署和管理应用程序和服务。
MongoDB由位于纽约的名为10gen的组织开发,该组织现在称为MongoDBInc。它最初是作为PAAS(平台即服务)开发的。在2009年晚些时候,它作为由MongoDB Inc.维护和支持的开源数据库服务器引入市场。
已考虑从2010年3月发布的1.4版开始考虑生产MongoDB的第一个现成产品。
MongoDB2.4.9是2014年1月10日发布的最新且稳定的版本。

构建MongoDB的目的

它可能是一个非常真实的问题-"尽管有许多数据库在运行,但MongoDB仍需要什么?"
有一个简单的答案:
所有现代应用程序都需要大数据,快速的功能开发,灵活的部署,以及较旧的数据库系统功能不足,因此需要MongoDB。
构建MongoDB的主要目的是:
可扩展性 性能 高可用性 从单服务器部署扩展到大型,复杂的多站点架构。 更快发展 更轻松地部署 规模更大
首先,我们应该知道什么是面向文档的数据库吗?

面向文档的数据库示例

MongoDB是面向文档的数据库。这是MongoDB的关键功能。它提供了一个面向文档的存储。非常简单,您可以轻松地对其进行编程。
MongoDB将数据存储为文档,因此它被称为面向文档的数据库。
FirstName = "John",                                                                                                           
Address = "Detroit",                                                                                                   
Spouse = [{Name: "Angela"}].                                                                                           
FirstName ="John",  
Address = "Wick"
有两个不同的文档(用"."分隔)。
以这种方式存储数据称为面向文档的数据库。
Mongo DB属于一类称为面向文档的数据库的数据库。还有一个广泛的数据库类别,称为没有SQL数据库。

MongoDB的功能

这些是MongoDB的一些重要功能:
1、支持临时查询
在MongoDB中,您可以按字段,范围查询进行搜索,并且还支持正则表达式搜索。
2、索引
您可以索引文档中的任何字段。
3、复制
MongoDB支持Master Slave复制。
Master可以执行读写操作,而Slave从Master复制数据,并且只能用于读取或备份(不能写入)。
4、数据重复
MongoDB可以在多个服务器上运行。复制数据以保持系统正常运行,并在硬件出现故障时保持其运行状态。
5、负载均衡
由于数据放置在分片中,因此具有自动负载均衡配置。
6、支持地图缩小和聚合工具。
7、使用 JavaScript 代替过程。
8、它是用 C ++ 编写的无模式数据库。
9、提供高性能。
10、轻松存储任何大小的文件,而不会导致堆栈复杂。
11、发生故障时易于管理。
12、它还支持:
具有动态模式的JSON数据模型
自动分片以实现水平可伸缩性
内置复制以实现高可用性
如今,许多公司每天都在使用MongoDB创建新类型的应用程序,提高性能和可用性。