Redis的作用
传统Rdbms vs Nosql:
传统RDBMS:高度组织化结构化数据,结构化查询语言(SQL),数据和关系都存储在具体的表中,数据操纵语言-数据定义语言,严格的一致性,事务
NoSQL:代表不仅仅是SQL,没有声明性查询语言,没有预定义的模式,键值对存储、列存储、文档存储、图形库存储,最终一致性而非acid属性,非结构化和不可预知的数据,cap原理,高性能、高可用和伸缩性
Redis,Mongdb,MemoryCache
NoSQL数据模型:聚合模式(KV键值,Bson-类似于json串的数据表达,列族,图形)
NoSQL数据库四大模型:
KV键值:美团(Redis + tair),阿里百度(Redis + memcache)
文档型数据库:bson格式较多 Mangdb
列存储数据库:HBASE,
图关系数据库:朋友圈社交网络,广告推荐系统
CAP原理:
传统的acid:原子性,一致性,独立性,持久性
CAP:Consistency(强一致性),Availablity(可用性),Partition tolerance(分区容错性)
CAP的三进二:一个分布式不可能同时满足CAP,因此根据CAP原理将NoSQL数据库分为CA原则,CP原则和AP原则
CA:单点集群,满足一致性,可用性的原则,通常在可扩展性上不太强大----传统Oracle数据库
CP:满足一致性,分区容忍必的系统,通常对性能要求不是很高----------------Redis,MongDB
AP:满足可用性,分区容忍性的系统,通常可能对一致性要求低一些----------大多数网站架构下的选择
BASE原理:基本可用(Basically Available),软状态(Soft state),最终一致性(Eventualy consistent)
分布式:不同的服务器上部署不同的服务模块
集群:不同服务器上部署相同的服务模块
Redis远程字典服务器:是一个用C语言编写,免费开源的,遵守BSD协议。高性能的分布式内存数据库,基于内存运行,也支持持久化的NoSQL数据库,
三个特点:
使用:
原文:https://www.cnblogs.com/shemlo/p/11670998.html