什么是nosql?非关系型数据库
关系型数据库(MySQL,Oracle,sqlserver)
特征:持久,主外键,sql语句,存放在硬盘中。
非关系数据库,缓存数据库,值存放在内存中----Java内置缓存。
redis—必须学会, 基本数据类型,redis持久化,redis高可用
mongdb—存储json格式
membase—
hbase-----
特征:存储在内存中,key,value存放,分布式情况多服务器共享数据,效率高,数据容易丢失(不用担心,数据备份,持久化)
互联网架构开发必备-----
什么是Redis?
nosql数据缓存数据库
标题为什么要使用redis
redis高级
数据库的值与redis的值不同步怎么解决?
清空缓存,再同步数据库中的值,缓存到redis。
redis 主从复制
哨兵机制使用的是投票选举(高可用)。
主从复制 分为什么样的角色?主master,从slave,redis中一个主,多从。之前的主满血复活后,只能当小弟了(从)。
使用keepalived监听,自动重启。哨兵机制,选举。
总结:主可以操作读写,从只能读,不能写,除非主死了,否则只能读。
思考题:
什么是读写分离?
答:读和写分库连接,读一个库,写一个库,互不影响,目的为了增加整体的吞吐量。主可写,从只能读。
redis 哨兵机制
哨兵机制主要是做心跳检测,故障转移(选举机制),监控,管理集群redis。
总结:如果master挂了,通过选举机制,从slave选出master,通过调整keepalived的时间,检查master是否还在,从而实现高可用。
redis持久化rdb
思考:redis宕机后,值是否会消失。
rdb存储,快照方式,二进制文件的方式,不是实时存储,默认60秒存10key以上,开始持久化,体积小。在规定的时间内key,value达到一定的数量后才开始做持久,
aof存储,日志方式,实时存储,日志文件,体积大,文件末尾追加。
redis默认开启rdb的方式。
思考题:
redis宕机后,redis值为失效吗?
答:不会,默认开启的是rdb方式存储。rdb方式断开连接,会自动备份。
最好采取aof方式持久化。
redis的事务机制。
开启事务,提交后,才能查询到。