redis bigKey问题

bigKey的产生

1、使用String存储了大文件的二进制。

2、使用集合没有考虑到数据的规模,或者规模的增长。

3、哈希中冗余了大量键值对。

bigKey问题

1、操作大key时会阻塞线程:redis是单线程。

2、网络阻塞:在网络中占用大量网络流量。

3、阻塞工作线程:其他命令不能正常执行。

如何查看?

1、使用自带的--bigkeys,但是会影响主线程。

2、使用自带的scan命令。

3、使用开源工具redis-rdb-tools等分析RDB文件。

如何处理?

1、分割:将一个大的key分成多个小key。

2、手动清理:redis4.0之后使用unlink 启动异步线程去清理一个或多个指定key。

3、采用合适的数据结构。

相关推荐
海南java第二人13 小时前
Nebula Graph 实战:基于图数据库存储 CMDB 实体关系
数据库·图数据库·nebula
曹牧13 小时前
oracle:“not all variables bound”
数据库·oracle
数据库百宝箱13 小时前
Oracle RMAN Image Copy 本地恢复
数据库·oracle
轻刀快马14 小时前
Redis 架构进阶:全景解析 RDB、AOF 与混合持久化机制
redis
zuYM4g7Dp15 小时前
NoSql数据库设计心得
数据库·nosql
睡不醒男孩03082316 小时前
第七篇:揭秘 PostgreSQL 数据库内核级管控:CLup 深度架构设计与高可用底座技术白皮书
数据库·postgresql·clup
cmes_love17 小时前
Level 2逐笔成交历史数据下载方法笔记
数据库·笔记·oracle
swordbob17 小时前
MySQL字符集陷阱:从Oracle迁移踩坑到utf8mb4强制规范
数据库·sql
牛油果子哥q18 小时前
【C++ STL string 】C++ STL string 终极精讲:底层原理、内存机制、全套API、深浅拷贝、易错坑点与工程实战规范
数据库·c++
十五年专注C++开发18 小时前
MySql中各种功能用sql语句实现总结
数据库·sql·mysql