在介绍Redis前,先简单的说明Redis或者和Redis这种相类似的Nosql数据库是如何产生的(NoSql:不仅仅是sql,可以理解为对传统sql的扩展)。
一: 在现阶段的互联网项目中,存在着两个重大的问题:3V(海量,多样,实时),3高(高并发,高可扩,高性能),而
传统的关系型数据库(就算使用分布式)已经不能够满足这种高性能和高数据量的要求,这时,Redis或者Men这种非关系型数据库就慢慢的走上舞台了。
二: Redis是哟中Nosql数据库,Nosql有4打分类
1:Key -- Value 键值对型数据库 --->Redis就是这个阵营里面的
2:文档型数据库 bson格式的, 相关产品: CouchDB ,MongoDB
3:列存储数据库 Habase,分布式文件系统等
4:图关系数据库 。。。。。
三:Redis及分布式数据库的 CAP 原理 (CAP + Base )
C : 强一致行 (数据精准,比如用户的修改请求必须精确的反映到数据库的表结构中)
A : 可用性 (高可用)
P:分区容错性
Base
Ba :基本可用
s : 软状态
e :最终一致
不管是sql类型的数据库还是nosql类型的数据库,都不能够同时实现 CAP 则3个原则
传统的关系型数据库 实现的是 CA , Redis:实现的是 AP ,所以Redis和传统的关系型数据库,就能够实现CAP,如图
分布式:在不同的服务器上面部署不同的服务模块。
集群 :在不同的服务器上面部署相同的服务模块,(如数据库集群就是在不同的服务器上面安装相同的数据库服务模块)