NoSQL
- not only sql:泛指非关系型数据库(不仅仅是数据库)
- 关系型数据库:表,行,列
- 很多数据的存储不需要一个固定的格式,不需要多余操作就可以横向扩展
NoSQL特点
- 1.方便扩展(数据之间没有关系,很好扩展)
- 2.大数据量高性能(Redis一秒写8万次,读取11万,NoSQL的缓存记录级,是一种细粒度的缓存,性能会比较高)
- 3.数据类型是多样性的(不需要事先设计数据库,随取随用,如果是数据量十分大的表,很多人就无法设计了)
- 4.传统的RDMBS和NoSQL
传统的RDBMS
- 结构化组织
- SQL
- 数据和关系都存在单独的表中
- 严格的一致性
- 基础的事务
NoSQL
- 不仅仅是数据
- 没有固定的查询语言
- 键值对存储,列存储,文档存储,图形数据库(社交关系)
- 最终一致性
- 高性能,高可用,高可扩
- CAP定理和BASE
大数据时代的3V:主要是描述问题的
- 海量Volume
- 多样Variety
- 实时Velocity
大数据时代的3高:主要是对程序的要求
- 高并发
- 高可扩
- 高性能
实际应用:关系型数据库+NoSQL一起使用才是最强的。
NoSQL的四大分类
KV键值对:
- 新浪:Redis
- 美团:Redis+Tair
- ali+baidu:Redis+memache
文档型数据库(bason格式和json一样)
- MongoDB
- MongoDB是一个基于分布式文件存储的数据库,C++编写,主要用来处理大量的文档。
- MongoDB是一个介于关系型和非关系型数据库之间的产品,非关系型数据库中最像关系型数据库的
- ConthDB
- MongoDB是一个基于分布式文件存储的数据库,C++编写,主要用来处理大量的文档。
列存储数据库
- HBase
- 分布式文件系统
图关系数据库
- 不是用来存图形的,是用来存关系的:朋友圈社交网络,广告推荐
- Neo4j,InfoGrid
参考来自:参考地址