(一):MongoDB文档型数据库特点介绍
简介
1、memcached、redis
-------> kv数据库(key/value)
- 即一个独特的key指向一个独特的value,之间通过哈希算法关联起来,以达到快速查询目的。
- 给出一个key,可以在时间复杂度为1的情况下,找到value在哪,并将其取出来
2、mongodb
-------> 文档数据库
- 存储的是文档(即:Bson文档:json的二进制化(其实就是json二进制化后的对象)).
特点:内部执行引擎为JS解释器, 把文档存储成bson结构,在查询时,转换为JS对象,并可以通过熟悉的js语法来操作.

3、mongo和传统型数据库(mysql等)相比,最大的不同:
传统型数据库: 结构化数据, 定好了表结构后,每一行的内容,必是符合表结构的,就是说--列的个数、类型都一样.
mongo文档型数据库: 表下的每篇文档,都可以有自己独特的结构 (也可以说是json对象都可以有自己独特的属性和值)
举例:
思路: 如果有电影, 影评, 影评的回复, 回复的打分
1、在传统型数据库中, 至少要4张表, 关联度非常复杂.

2、在文档数据库中,通过1篇文档,即可完成. 体现出文档型数据库的反范式化.
{
fiim:’天龙八部’
time:120min
comment:[
{content:’影评1:王家卫的电影风格’,
reply:[‘支持’,’好’]
}
{content:’影评2:很不错’,
reply:[‘支持’,’好’]
}
]
}
#电影的相关评论、回复、打分都在comment中,以数组的形式保存,到了范式存储

浙公网安备 33010602011771号