当前位置 > it书童 > redis > 正文
推荐小册
java高效编程
怎样更高效地用 java 编程

juc并发工具库
java并发编程工具库

设计模式
设计模式

jvm调优
jvm调优

rabbitmq实战
rabbitmq实战

redis实战
redis实战

Keepavlied高可用集群
Keepavlied高可用集群

nginx入门到实战
nginx入门到实战

java调试
java调试中遇到的各种坑

java输入输出流
java输入输出流

redis 查看所有key的value值所占内存大小

redis it书童 2019-10-04 17:19:02 0赞 0踩 1794阅读 0评论

redis 虽好,却是个吃内存兽,因此在写入 redis 数据时,应该避免写入无用的数据,浪费内存。

如果我们要分析哪些 key 占用了大量的存储空间,就需要有工具辅助对所有的 value 所点空间进行排序,如此才能有的放矢进行优化

redis-rdb-tools 可以将所有 key 对应的 value 大小用 csv 格式导出

安装如下:

$ pip install rdbtools python-lzf
$ git clone https://github.com/sripathikrishnan/redis-rdb-tools
$ cd redis-rdb-tools
$ sudo python setup.py install

接下来找到 redis 的 dump.rdb 位置

首先定位到 redis.conf 位置

$ whereis redis.conf
redis: /etc/redis.conf
$ cat /etc/redis.conf | grep dir | grep redis
dir /var/lib/redis
$ cat /etc/redis.conf | grep dump.rdb
dbfilename dump.rdb

综上,得知其路径为:/var/lib/redis/dump.rdb

按内存值导出 csv

$ rdb -c memory /var/lib/redis/dump.rdb > /tmp/redis.csv

结果如下:

关于我
一个文科出身的程序员,追求做个有趣的人,传播有价值的知识,微信公众号主要分享读书思考心得,不会有代码类文章,非程序员的同学请放心订阅
转载须注明出处:https://www.itshutong.com/articles/187/redis-view-the-memory-occupied-by-the-value-value-of-all-keys