NoSQL
NoSQL = Not-Only SQL(不仅仅是SQL)
Redis不同于之前学习的MySQL、Oracle这些关系型数据库,Redis是一种非关系型数据库,即我们常说的NoSQL(Not-Only SQL),NoSQL主要解决海量用户和海量数据下的数据处理问题,是关系型数据库的一个补充。
Nosql四大分类:
- 键值对 存储数据库
- 列存储 数据库
- 文档型 存储数据库
- 图形 数据库
NoSQL的特点:
- 方便扩展(数据之间没有关系,很好扩展)
- 大数据量高性能(Redis一秒写8万次,读取11万次,NoSQL的缓存记录级,是一种细粒度的缓存,性能会比较高)
- 数据类型是多样的(不需要事先设计数据库,随取随用,如果是数据量十分大的表,很多时候就无法设计了)
传统RDBMS 和 NoSQL的区别
传统的 RDBMS
- 结构化组织
- SQL
- 数据和关系都存在单独的表中
- 操作数据,数据定义语言
- 严格的一致性
- 基础的事务
- ... ...
NoSQL
- 不仅仅是数据
- 没有固定的查询语言
- 键值对存储,列存储,文档存储,图形数据库(社交关系)
- 最终一致性
- CAP定理和BASE理论(异地多活)
- 高性能,高可用,高可扩
- ... ...
常见的NoSQL数据库有:
- Redis
- Memcache
- HBase
- MongoDB