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.统计方法

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

相关推荐
jiayou641 天前
KingbaseES 表级与列级加密完全指南
数据库·后端
GBASE2 天前
G术时刻 |GBase 8s数据库事务并发控制之封锁技术介绍(下)
数据库
RainCity2 天前
Java Swing 自定义组件库分享(十二)
java·笔记·后端
xiezhr2 天前
逛GitHub发现了一款免费的带AI功能的数据库管理工具
数据库·ai编程·dba
吃糖的小孩3 天前
给 QQ AI 机器人设计“可控记忆”:会话摘要、手动长期记忆与角色卡边界
数据库
笃行3504 天前
金仓数据库数据安全双防线:静态存储加密与传输加密实战
数据库
笃行3504 天前
金仓数据库物理备份实战:sys_rman 全流程演练与误覆盖抢救
数据库
笃行3504 天前
金仓数据库逻辑备份实战:从全库导出到 Schema 替换的完整闭环
数据库
SelectDB5 天前
阶跃星辰基于 SelectDB 构建 PB 级 Agent 可观测平台
大数据·数据库·aigc