第一章 MongoDB简介

MongoDB简介

MongoDB是基于文档的一款NoSQL数据库,与传统的关系型数据库不同,它不再采用预定义模式(MySQL创建表就是预定义模式),而是采用类似JSON格式来记录一条文档。

1.文档

文档就是键值对的有序集合,类似JSON格式。它具体类型为BJSON是比JSON拥有更为丰富的数据类型。下图是展示一条文档。

{
	name: "tome",
	age: 25,
	status: "A",
	groups: ["new", "sports"]
}

MongoDB不但区分类型,而且还区分大小写。例如,下面三个文档是不同的:

{"foo": 3}
{"Foo": 3}
{"foo": "3"}

注意,MongoDB的文档中不能有重复的键。

{
	"name": "tom",
	"name": "Baom"   --- 非法文档
}

2.集合

集合就像数据库中一张表,可以存储相同一行数据。不过MongoDB的集合是动态模型,可以把不同文档存储在一个集合里。例如,我们在集合products存储两文档。

{
 "name": "Java并发编程",
 "price": 50.5,
 "total": 100
},
{
	"name": "高性能MySQL",
	"price": 50.8,
	"date": "2020-08-19"
}

虽然集合可以动态模型,可以存储不同文档,但是往往为了方便数据的管理,我们通常把同类型文档放在一个集合里。

3.支持数据类型

数据 类型
字符串 string 支持UTF-8
整数 int 32位或64位
浮点数 double
布尔值 True 或 False
Null 值 Null值或者不存在的值
日期 Timestamp
最大值/最小值 Max/Min
数组 Array
正则表达式 Regular
内嵌文档 document

4.MongoDB VS RDBMS

对象 RDBMS 对象 MongoDB
数据库 database 数据库 database
table 集合 collection
row 文档 document
column 字段 field

你可能感兴趣的:(MongoDB,mongodb)