MongoDB 介绍
一、什么是MongoDB
MongoDB是一个提供高性能、高可用性和自动扩展的开源文档数据库。
简单来说,你可以说—Mongo DB 是一个面向文档的数据库。它是一个开源产品,由一家名为 10gen 的公司开发和支持。
MongoDB 在通用公共许可下免费提供,也可以在制造商的商业许可下提供。
制造公司 10gen 将 MongoDB 定义为:
“MongoDB 是一个可扩展的、开源的、高性能的、面向文档的数据库。” - 10gen
MongoDB 旨在与商品服务器一起使用。现在它被所有行业的各种规模的公司使用。
二、MongoDB的历史
MongoDB 的最初开发始于 2007 年,当时该公司正在构建一个类似于 window azure 的平台即服务。
MongoDB 是由一个名为 10gen 的纽约组织开发的,该组织现在被称为 MongoDB Inc.。它最初是作为 PAAS(平台即服务)开发的。2009 年晚些时候,它作为开源数据库服务器引入市场,由 MongoDB Inc. 维护和支持。
从 2010 年 3 月发布的 1.4 版本开始考虑 MongoDB 的第一个现成产品。
MongoDB2.4.9 是 2014 年 1 月 10 日发布的最新稳定版本。
三、MongoDB的应用场景
所有现代应用程序都需要大数据、快速的功能开发、灵活的部署,而旧的数据库系统能力不足,因此需要 MongoDB。
构建 MongoDB 的主要目的是:
- 可扩展性
- 高性能
- 高可用性
- 从单服务器部署扩展到大型、复杂的多站点架构。
- MongoDB的关键点
- 发展更快
- 部署更轻松
- 规模更大
四、MongoDB的特点
以下是 MongoDB 的一些重要特性:
1.支持即时查询
在 MongoDB 中,您可以按字段搜索,范围查询,它还支持正则表达式搜索。
2. 索引
您可以索引文档中的任何字段。
3. 复制
MongoDB 支持主从复制。
master 可以执行读写操作,slave 从 master 复制数据,只能用于读取或备份(不能写入)
4. 数据重复
MongoDB 可以在多个服务器上运行。数据被复制以保持系统正常运行,并在硬件故障的情况下保持其运行状态。
5.负载均衡
由于数据放置在分片中,它具有自动负载平衡配置。
6.支持map reduce和aggregation工具。
7. 使用JavaScript而不是程序。
8. 它是一个用C++编写的无模式数据库。
9. 提供高性能。
10. 轻松存储任何大小的文件,而不会使您的堆栈复杂化。
11.在失败的情况下易于管理。
12.它还支持:
具有动态模式的 JSON 数据模型
自动分片以实现水平可扩展性
内置复制以实现高可用性
现在每天有许多公司使用 MongoDB 创建新类型的应用程序,提高性能和可用性。
热门文章
优秀文章