目录
MongoDB简介
MongoDB优势
MongoDB概念解析
MongoDB简介
MongoDB是一个基于分布式文件存储的数据库,由C++语言编写。旨在 为 WEB 应用提供可扩展的高性能数据存储解决方案。将数据存储为一个文档(类似JSON对象),数据结构由键值(key=>value)对组成支持丰富的查询表达,可以设置任何属性的索引,也可以嵌套文档来表示层次关系,并存储诸如数组之类的结构。
MongoDB是一个介于非系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。
MongoDB优势
(1)文档结构的存储方式,能够更便捷的获取数据,单个对象的结构是明确的。
(2)性能优越。在使用场合下,千万级别的文档对象,近10G的数据,对有索引的ID的查询不会比mysql慢,而对非索引字段的查询,则是全面胜出。
(3)深度查询能力。MongoDB使用与SQL一样强大的基于文档的查询语言支持对文档的动态查询。
(4)第三方支持丰富。开源的文档数据库MongoDB背后有商业公司为它提供商业培训和支持。
(5)全索引支持,扩展到内部对象和内嵌数组,没有复杂的连接。
小贴士:虽然MongoDB优势不少,但是在使用时也有注意一些缺点,比如不支持事务操作、占用空间过大,没有如MySQL那样成熟的维护工具。
MongoDB概念解析
在MongoDB中有3个比较核心概念,那就是文档、集合、数据库,下面通过一个表格与SQL术语进行对比,帮助你对它有更深理解:
SQL术语/概念 | MongoDB术语/概念 | 解释/说明 |
database | database | 数据库 |
table | collection | 数据库表 / 集合 |
row | document | 数据记录行 / 文档 |
column | field | 数据字段 / 域 |
index | index | 索引 |
table joins | 表连接 ,MongoDB 不支持 | |
primary key | primary key | 主键 ,MongoDB 自动将 _id 字段设置为主键 |