mongodb
★什么是关系型数据库:
关系数据库,是建立在关系数据库模型基础上的数据库,借助于集合代数等概念和方法来处理数据库中的数据,同时也是一个被组织成一组拥有正式描述性的表格,该形式的表格作用的实质是装载着数据项的特殊收集体,这些表格中的数据能以许多不同的方式被存取或重新召集而不需要重新组织数据库表格。
关系型数据库的定义:
关系数据库的定义造成元数据的一张表格或造成表格、列、范围和约束的正式描述。每个表格(有时被称为一个关系)包含用列表示的一个或更多的数据种类。 每行包含一个唯一的数据实体,这些数据是被列定义的种类。当创造一个关系数据库的时候,你能定义数据列的可能值的范围和可能应用于那个数据值的进一步约束。
非关系型数据库产品是传统关系型数据库的功能阉割版本,通过减少用不到或很少用的功能,来大幅度提高产品性能。
非关系型数据库的优势:1. 性能NOSQL是基于键值对的,可以想象成表中的主键和值的对应关系,而且不需要经过SQL层的解析,所以性能非常高。2. 可扩展性同样也是因为基于键值对,数据之间没有耦合性,所以非常容易水平扩展。
★为什么要用mongodb
灵活的文档数据模型
可伸缩可扩展性
二级索引
丰富的查询语言
健壮的操作工具
特点:1,存储数量大2,查询数据快3,结构特点
★什么时候使用mongodb
1.需要写入大量的数据,但是这些这些数据的价值并不是太高,比如:日志
2.未来数据会很大
3.适合存储量大但是相对于不太重要的信息(微博,淘宝,等评论)
4.数据增长量较大,而且数据结构有时候还不一致
mongodb主要目标 :性能与扩展(分布式存储)
面向文档的数据库
无模式(无须建表、也无须建数据库)
以BSON格式存储数据
javascript作为操作语言
支持多种语言:php、python、java、c++
★各公司使用nosql的情况
新浪微博:redis
google:bigtable
Amazon:SimpleDB
淘宝数据平台:Tair
优酷视频:MongoDB
飞信空间:HandlerSocket
视觉中国网站:MongoDB