MongoDB中要掌握的概念(2)
数据库
多个集合可以组成数据库。一个MongoDB实例可以承载多个数据库,他们之间完全独立。
MongoDB中的数据库和MySQL中的数据库概念类似,只是无需创建。
一个数据库中可以有多个集合,一个集合中可以有多个文档。
集合
集合就是一组文档,多个文档组成一个集合,集合类似于MySQL里面的表。
在关系型数据库中,一个表中的记录的结构完全一致,都是由固定的字段组成的。
但是在文档型中,集合仅仅是将多个文档整理在一起,而不去要求文档的结构一定要一致。
无模式就是指,在同一个集合中可以包含不同格式的文档,如:
{"Name":"MongoDB", "Type":"Nosql"}
{"UserName":"Tom", "age":20, "Gender": "male"}
以上两个文档可以放在同一个集合中。在MySQL中需要先建表在插入数据。
模式自由(schema-free):意思是集合里面没有行和列的概念。
注意:MongoDB中的集合不用创建、没有结构,所以可以放不同格式的文档。
文档
文档 是MongoDB中数据的基本单元,类似关系数据库的行(一条记录),多个键值对有序地放置在一起便是文档。
MongoDB中以文档的方式存取记录,如一条记录格式如下:
{"username":"Tom", "age":10, "email":"bashlog@foxmail.com", "sex":"男"}
{"username":"Tom", "age":"10", "email":"bashlog@foxmail.com"}
{"Username":"Tom", "age":10}
注意:
(1)以上是几个不同的文档,MongoDB区分大小写和数据类型,第一个age字段是数字类型,第二个age是字符串类型。
(2)每一个文档尺寸不能超过16M
MongoDB的数据体系
MongoDB | MySQL |
---|---|
文档(document) (单个文档最大16M) |
记录(row) |
集合(collection) | 表(table) |
数据库(database) (32位系统上,一个数据库的文件大小不能超过2G) |
数据库(database) |