redis实战学习笔记p1-12

1.redis定义

内存的键值数据库,在内存中的优势是访问速度比磁盘高几个量级,缺点是成本高昂,掉电不能持久保存,因此有运行过程中持久化的需求,也就是掉电之后能从持久化存储中恢复。

2.AOF日志和RDB快照

这两个都是用来解决持久化的方法,AOF通过存储数据库执行过的指令,来恢复,并且因为存储的是已经执行成功的指令不存在指令有语法错误的情况。

因为数据库可能对同一个位置进行多次操作,因此对于一个位置的最新值我们保留过往的记录是有浪费的,因此可以在一段时间后就重写AOF日志

RDB也叫Redis database,在磁盘以文件的形式存储redis在内存中的状态,为了防止阻塞主线程使用了fork子进程生成快照的方法,为了让redis在生成快照时可写可读使用了写时拷贝的机制,同时为了防止redis快照花费时间多在多次快照之间用AOF日志记录操作的命令。

3.高可用的方法:使用主从一致,主库写,多库读的模式来分担压力,需要解决的问题是主从数据库的一致性问题。

使用全量复制RDB快照来复制,同时在复制之后会通过基于长连接的命令以及增量的RDB快照来减少资源消耗。

4.主库崩溃的解决方法

添加监控,使用哨兵监控主库,同时为了确保主库是真的下线避免无所谓的换主库使用哨兵集群少数服从多数监控;之后哨兵需要选从库,依据筛选和打分的机制;最后是通知其他从库和客户端。

5.哨兵集群

哨兵集群的互相发现是通过在主库订阅和发布信息,然后互相得到对方的信息,从库列表信息是从主库获得,同时客户端了解哨兵集群也是通过在主库发布和订阅信息。

6.String的问题

对于小数据,string的额外信息占用空间大

7.统计方法

聚合统计、排序统计、二值统计、基数统计

相关推荐
发际线还在33 分钟前
互联网大厂Java三轮面试全流程实战问答与解析
java·数据库·分布式·面试·并发·系统设计·大厂
小王不爱笑1321 小时前
MyBatis 执行流程源码级深度解析:从 Mapper 接口到 SQL 执行的全链路逻辑
数据库·sql·mybatis
山峰哥2 小时前
SQL优化实战:从索引策略到执行计划的极致突破
数据库·sql·性能优化·编辑器·深度优先
总要冲动一次2 小时前
离线安装 percona-xtrabackup-24
linux·数据库·mysql·centos
lcrml2 小时前
nacos2.3.0 接入pgsql或其他数据库
数据库
阿达_优阅达2 小时前
告别手工对账:xSuite 如何帮助 SAP 企业实现财务全流程自动化?
服务器·数据库·人工智能·自动化·sap·企业数字化转型·xsuite
IvorySQL2 小时前
IvorySQL v5 发布后,我们想听听大家的使用体验
数据库·postgresql·开源
Maverick062 小时前
01- Oracle核心架构:理解数据库如何运转
数据库·oracle·架构
TDengine (老段)3 小时前
TDengine IDMP 组态面板 —— 画布
大数据·数据库·物联网·时序数据库·tdengine·涛思数据
buhuimaren_3 小时前
MySQL数据库初体验
数据库·mysql