1. Mongo有多种类型的collection, 默认的是随着document 数目的增多自动增大; 还有一些collection被称为capped collection, 只能包含固定数目的document, 当向里面添加document时, 最老的文档就会被新加的文档替换。
  2. 每个mongo collection都有唯一的名字,名字可以包含数字,letter和下划线,但$符不能用,是mongo保留字符。Collection的名字的最大允许长度是128,.
  3. 每个Mongo数据库默认最多允许24000个命名空间,每个collection至少需要两个命名空间:一个是collection自身,另一个是默认创建的第一个index. 也就是说,一个数据库最多可以允许12000个collection,这还是在每个collection只有一个索引的情况下。

    24000的限制可以通过执行mongod的时候通过提供nssize参数来更改。

  4. Mongo中的字段类型如下:

类型

说明

例子

string

 

{Country: "China"}

Integer(32b or 64b)

 

{Rank:1}

BOOLEAN

TRUE or FALSE

 

Double

存放浮点数

 

Min/Max keys

分别用来将一个值和最小/最大的BSON元素进行比较

 

Arrays

 

["aa","bb"]

Timestamp

用来存储时间戳。用来记录一个document创建或者修改的信息的时候很方便。

 

Object

用来存储embedded document.

 

Null

用来表示Null值。

 

Date

用UNIX时间格式(POSIX时间)来存储当前日期或者时间

 

Object ID

用来存储document的ID

 

Binary data

用来存储binary data.

 

Regular express

存储正则表达式

 

JavaScript Code

用来存储Javascript代码

 

 

最后五种数据类型是非JSON数据类型,是BSON允许你用的特殊数据类型。在后面,将学到如何用$type操作符来鉴别你的数据类型。

 

  1. 用MongoDB, 尽可能把能放在一起的信息都放在一个文档里,这样存取都非常快,因为它们在磁盘上是放在一起的。

    当你的应用程序是给多个用户用的时候,Good practise是把每个用户以及他们添加的数据分别放在不同的collection中,这个是与关系型数据库不同的地方。 Mongo允许你用两种方式在Collection之间创建引用:手动方式和自动方式。自动方式使用DBRef, 它在一个collection从给一个文档切换到下一个文档时提供了很大的灵活性。

     

  2. Mongo中的ObjectId是个12位的值:包含三位时间戳(从epoch开始的秒数),3位机器id, 3位进程id, 3位计数器。

    要创建一个ObjectId,有两个选择:一个是用Mongo命令行调用ObjectId()命令来创建一个 ObjectId,另一个可以用ObjectId(string)来用你自己的值来创建。

     

     

(The Definitive Guide to MongoDB)

最新文章

  1. 【.net 深呼吸】跨应用程序域执行程序集
  2. Redis配置文件redis.conf
  3. cron表达式使用详解
  4. IOS面试题总结
  5. 让我们一起Go(十一)
  6. 流行趋势:25款很酷的长阴影效果 LOGO 设计
  7. PHP 实现多服务器共享 SESSION 数据
  8. dll和ocx比较
  9. MySQL数据类型(四)
  10. HBase(一): c#访问hbase组件开发
  11. 360 chrome不能登录Google账户
  12. Oracle XE修改默认HTTP端口8080
  13. 【转】图说Android的8年演变史
  14. 【转】PYTHON open/文件操作
  15. MYSQL主从同步故障一例及解决过程
  16. CSS预编译与PostCSS以及Webpack构建CSS综合方案
  17. JAVA课程设计猜数游戏 个人
  18. Python - 首字母大写(capwords) 和 创建转换表(maketrans) 具体解释
  19. nlp L1
  20. centos7.5上一步步部署jumpserver

热门文章

  1. UVA 11947 Cancer or Scorpio 水题
  2. wikioi 3130 CYD刷题(背包)
  3. Push导航栏黑影问题
  4. SQL 死锁进程查询
  5. MVC之Global.asax解析
  6. jconsole监控上Linux上的JVM
  7. MySQL内核整理(一)
  8. DHT(Distributed Hash Table,分布式哈希表)
  9. 邮件基本常识普及(to/cc/bcc)
  10. warning,C4996,sprintf,deprecated,C4996,strcpy,C4996,strcat