目录
一、文档
文档是MongoDB中的基本数据单元,相当于传统关系型数据库中的行,它是一组有序键值的集合。每个文档都有子一个特殊的键“_id”,其在所属的集合中是唯一的。
文档中的键是字符串类型。
键中不能含有\0(空字符)。这个字符用于表示一个键的结束。
.和$是特殊字符,只能在某些特定情况下使用。通常情况下,可以认为这两个字符是MongoDB的保留字符,如果使用不当,那么驱动程序将无法正常工作。
二、集合
1、集合
集合就是一组文档。可以看做是具有动态模式的表。
集合具有动态模式的特性。这意味着一个集合中的文档可以具有任意数量的不同形态。
但是,将不同类型的文档存放在一个集合中会出现很多问题:
- 文档中可以存放任意类型的变量,但是,这里不建议将不同类型的文档保存在同一个集合中,开发人员需要确保每个查询只返回特定模式的文档,或者确保执行查询的应用程序代码可以处理不同类型的文档;
- 获取集合列表比提取集合中的文档类型列表要快得多,减少磁盘查找次数;
- 想相同类型的文档存放在同一个集合中可以实现数据的局部性,对于集合,让使用者见文知意;