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、采用合适的数据结构。

相关推荐
ApacheSeaTunnel5 小时前
一套替代四套!同程旅行用 Apache SeaTunnel 搭建多模态统一数据通道
大数据·数据库·ai·开源·数据集成·seatunnel·技术分享·数据同步
段一凡-华北理工大学5 小时前
向量数据库实战:选型、调优与落地~系列文章02:Embedding 嵌入模型选型指南:OpenAI、BGE、Jina、Cohere 横评
大数据·数据库·人工智能·embedding·高炉炼铁·jina·工业智能体
️学习的小王5 小时前
MySQL 数据库基础操作全解:从建库到增删改查
数据库·mysql·oracle
Spider Cat 蜘蛛猫5 小时前
OIDC 联邦 SSO(复旦 OP / 清华 RP)完整全链路(纯标准OIDC、无User Storage SPI、含用户浏览器操作)
数据库·iam
oradh5 小时前
Oracle 11g单库升级至19c单库(dbua图形方式)
数据库·oracle·11g升级19c·dbua升级方式
王九思6 小时前
对称加密与非对称加密详解
java·网络·数据库
周杰伦的稻香6 小时前
(1071, ‘Specified key was too long; max key length is 767 bytes‘)
数据库·mysql
Leo.yuan6 小时前
数据目录和数据字典有什么区别?一文讲清
大数据·数据库·人工智能
全堆鸿蒙6 小时前
鸿蒙应用开发实战【37】— 数据统计:countByStatus 聚合查询
数据库·华为·harmonyos·鸿蒙系统
惜分飞6 小时前
记录block 0损坏,数据文件大量坏块,使用不当数据库版本恢复等各种操作之后的故障处理---惜分飞
数据库·block0损坏·ora-17503