MongoDB教程
第三章 MongoDB概念
| 关系型数据库 | MongoDB | 解释说明 | | ----- | ----- | | database | database | 数据库 | | table | collection | 数据表/集合 | | row | document | 数据行/文档 | | column | field | 字段/域 | | index | index | 索引 | | table joins | | 表连接,MongoDB 中不支持 | | primary key | primary key | 主键,MongoDB 会自动将 _id 字段设置为主键 | #### 数据库(DATABASE) 一个mongodb中可以建立多个数据库。 MongoDB的默认数据库为"db",该数据库存储在data目录中。 MongoDB的单个实例可以容纳多个独立的数据库,每一个都有自己的集合和权限,不同的数据库也放置在不同的文件中。 "show dbs" 命令:显示所有数据的列表。 "db" 命令:显示当前数据库对象或集合。 "use"命令:连接到一个指定的数据库。 #### 集合 集合就是 MongoDB 文档组,类似于 RDBMS (关系数据库管理系统:Relational Database Management System)中的表格。 集合存在于数据库中,集合没有固定的结构,这意味着你在对集合可以插入不同格式和类型的数据,但通常情况下我们插入集合的数据都会有一定的关联性。 当第一个文档插入时,集合就会被创建。 #### 固定大小集合(capped collections) 它有很高的性能以及队列过期的特性(过期按照插入的顺序). 有点和 "RRD" 概念类似。 Capped collections是高性能自动的维护对象的插入顺序。它非常适合类似记录日志的功能 和标准的collection不同,你必须要显式的创建一个capped collection, 指定一个collection的大小,单位是字节。collection的数据存储空间值提前分配的。 Capped collections 可以按照文档的插入顺序保存到集合中,而且这些文档在磁盘上存放位置也是按照插入顺序来保存的,所以当我们更新Capped collections 中文档的时候,更新后的文档不可以超过之前文档的大小,这样话就可以确保所有文档在磁盘上的位置一直保持不变。 由于 Capped collection 是按照文档的插入顺序而不是使用索引确定插入位置,这样的话可以提高增添数据的效率。MongoDB 的操作日志文件 oplog.rs 就是利用 Capped Collection 来实现的。 要注意的是指定的存储大小包含了数据库的头信息。 ```shell db.createCollection("mycoll", {capped:true, size:100000}) ``` 在capped collection中,你能添加新的对象。 能进行更新,然而,对象不会增加存储空间。如果增加,更新就会失败 。 数据库不允许进行删除。使用drop()方法删除collection所有的行。 注意: 删除之后,你必须显式的重新创建这个collection。 在32bit机器中,capped collection最大存储为1e9( 1X109)个字节。 #### 文档(Document) 文档是一个键值(key-value)对(即BSON)。MongoDB 的文档不需要设置相同的字段,并且相同的字段不需要相同的数据类型,这与关系型数据库有很大的区别,也是 MongoDB 非常突出的特点。
顶部
收展
底部
[TOC]
目录
第一章 NoSQL和MongoDB简介
第二章 MongoDB安装
第三章 MongoDB概念
第四章 MongoDB数据类型
第五章 MongoDB连接数据库
第六章 MongoDB数据库增删查
第七章 MongoDB集合增删查
第八章 MongoDB文档增删查改
第九章 MongoDB查询构造器
第十章 MongoDB备份与恢复
第十一章 MongoDB复制(副本集)
第十一章 MongoDB分片
第十一章 MongoDB监控
第十二章 MongoDB索引
相关推荐
MongoDB进阶
PHP操作MongoDB
MongoDB用户及安全
MongoDB优化