如何查找Redis中key对应的大小和排序?

经常发生Redis内存使用快到瓶颈的时期,但是不知道哪些key是没有设置过期时间,哪些key占用内存较大,这个该怎么统计?
已邀请:

采菊篱下 - 无分享不快乐 助力技术开源分享 运维一枚

赞同来自: being

github上有一个开源工具命令:https://github.com/sripathikrishnan/redis-rdb-tools#generate-memory-report 
安装和使用方法文档上写了,如果安装完成找不到rdb命令的话,直接在安装目录下执行也可以:
rdbtools/cli/rdb.py -c memory /path/to/your/dump.rdb > result.csv
查看结果:
keys.png

结果列中的sizeinbytes就是你要的大小,导出后自己排下序就可以了。另外,注意修改你自己dump.rdb的文件路径。对于数据量太大的情况我没测试过,分析估计会比较慢。
 
 

要回复问题请先登录注册