MongDB入门系列--什么是MongDB?
# 简介
## 一 什么是 MongDB?
1.MongDB 是 c++ 语言编写的,是一个基于分布式存储的开源数据库系统,在高节点的情况下,添加更多的节点,可以保证服务器性能
** 性能非常高,每秒钟读写可以达到 2 万次 **
2.MongDB 旨在为 WEB 应用提供可扩展的高性能数据存储解决方案
3.MongDB 将数据存储为一个文档,数据结构由键值对组成,MongDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组
## 二 历史
1、2007 年 10 月,MongoDB 由 10gen 团队所发展。2009 年 2 月首度推出。
2、2012 年 05 月 23 日,MongoDB2.1 开发分支发布了! 该版本采用全新架构,包含诸多增强。
3、2012 年 06 月 06 日,MongoDB 2.0.6 发布,分布式文档数据库。
4、2013 年 04 月 23 日,MongoDB 2.4.3 发布,此版本包括了一些性能优化,功能增强以及 bug 修复。
5、2013 年 08 月 20 日,MongoDB 2.4.6 发布,是目前最新的稳定版。
.................
## 三 主要特点
1,你可以在 MongoDB 记录中设置任何属性的索引 (如:FirstName="Sameer",Address="8 Gandhi Road") 来实现更快的排序。
2. 你可以通过本地或者网络创建数据镜像,这使得 MongoDB 有更强的扩展性。
3. 如果负载的增加(需要更多的存储空间和更强的处理能力) ,它可以分布在计算机网络中的其他节点上这就是所谓的分片。
4.Mongo 支持丰富的查询表达式。查询指令使用 JSON 形式的标记,可轻易查询文档中内嵌的对象及数组。
5.MongoDb 使用 update() 命令可以实现替换完成的文档(数据)或者一些指定的数据字段 。
6.Mongodb 中的 Map/reduce 主要是用来对数据进行批量处理和聚合操作。
7.Map 和 Reduce。Map 函数调用 emit(key,value) 遍历集合中所有的记录,将 key 与 value 传给 Reduce 函数进行处理。
8.Map 函数和 Reduce 函数是使用 Javascript 编写的,并可以通过 db.runCommand 或 mapreduce 命令来执行 MapReduce 操作。
9.GridFS 是 MongoDB 中的一个内置功能,可以用于存放大量小文件。
MongoDB 允许在服务端执行脚本,可以用 Javascript 编写某个函数,直接在服务端执行,也可以把函数的定义存储在服务端,下次直接调用即可。
10.MongoDB 支持各种编程语言:RUBY,PYTHON,JAVA,C++,PHP,C# 等多种语言。
11.MongoDB 安装简单。