Redis各种数据结构内存占用测试
启动时:(redis为空)
插入数据量都为100W(100W个key或者list中100W个值,或者1000个key,每个key中1000个值)
String
Key value
# Memory
used_memory:121763808
used_memory_human:116.12M
used_memory_rss:124956672
used_memory_peak:121762584
used_memory_peak_human:116.12M
used_memory_lua:31744
mem_fragmentation_ratio:1.03
mem_allocator:jemalloc-3.2.0
List
Key value如下
# Memory
used_memory:81375240
used_memory_human:77.61M
used_memory_rss:84156416
used_memory_peak:121762496
used_memory_peak_human:116.12M
used_memory_lua:31744
mem_fragmentation_ratio:1.03
mem_allocator:jemalloc-3.2.0
Set
Key value
# Memory
used_memory:89764296
used_memory_human:85.61M
used_memory_rss:94650368
used_memory_peak:153269416
used_memory_peak_human:146.17M
used_memory_lua:31744
mem_fragmentation_ratio:1.05
mem_allocator:jemalloc-3.2.0
ZSET
# Memory
used_memory:143119144
used_memory_human:136.49M
used_memory_rss:146919424
used_memory_peak:165802136
used_memory_peak_human:158.12M
used_memory_lua:31744
mem_fragmentation_ratio:1.03
mem_allocator:jemalloc-3.2.0
Hash
# Memory
used_memory:137763776
used_memory_human:131.38M
used_memory_rss:157798400
used_memory_peak:183714248
used_memory_peak_human:175.20M
used_memory_lua:31744
mem_fragmentation_ratio:1.15
mem_allocator:jemalloc-3.2.0
设置:
##ziplist中允许的条目个数
hash-max-ziplist-entries 512
##ziplist中每个条目(K-V)的V允许的最大字节数
hash-max-ziplist-value 64
##如果达到阀值,则重构为hashtable
# Memory
used_memory:21946472
used_memory_human:20.93M
used_memory_rss:25464832
used_memory_peak:183714248
used_memory_peak_human:175.20M
used_memory_lua:31744
mem_fragmentation_ratio:1.16
mem_allocator:jemalloc-3.2.0
结论:100W数据在key和value都在10Byte左右时,占用空间100M左右,若使用Hash的压缩列表特性,内存占用减少到1/5.
Redis各种数据结构内存占用测试的更多相关文章
- android应用内存占用测试(每隔一秒打印procrank的信息)
1.内存占用 对于智能手机而言,内存大小是固定的:因此,如果单个app的内存占用越小,手机上可以安装运行的app就越多:或者说app的内存占用越小,在手机上运行就会越流畅.所以说,内存占用的大小,也是 ...
- Map存储容量及内存占用测试
Integer a = 1; long start = 0; long end = 0; // 先垃圾回收 System.gc(); start = Runtime.getRuntime().free ...
- redis实战笔记(9)-第9章 降低内存占用
本章主要内容 1.短结构( short structure) 2.分片结构( shared structure) 3.打包存储二进制位和字节 本章将介绍3种非常有价值的降低Redis内存占用的 ...
- 选择合适Redis数据结构,减少80%的内存占用
redis作为目前最流行的nosql缓存数据库,凭借其优异的性能.丰富的数据结构已成为大部分场景下首选的缓存工具. 由于redis是一个纯内存的数据库,在存放大量数据时,内存的占用将会非常可观.那么在 ...
- 降低Redis内存占用
1.降低redis内存占用的优点 1.有助于减少创建快照和加载快照所用的时间 2.提升载入AOF文件和重写AOF文件时的效率 3.缩短从服务器进行同步所需的时间 4.无需添加额外的硬件就可以让redi ...
- C#中使用Redis不同数据结构的内存占有量的疑问和对比测试
最近在大量使用Redis来进行数据统计前的清洗和整理,每天的数据量超5千万+,在开发过程中,数据量小,着重注意业务规则的处理,在上线基本测试后发现了大量的问题,其中之一就是Redis存储数据过多,内存 ...
- 美团在Redis上踩过的一些坑-3.redis内存占用飙升(转载)
一.现象: redis-cluster某个分片内存飙升,明显比其他分片高很多,而且持续增长.并且主从的内存使用量并不一致. 二.分析可能原因: 1. redis-cluster的bu ...
- Redis主节点内存占用过高
0. 基本情况 Redis采用集群模式,560个主节点,主从比为1:1,单台机器上为16个节点.info memory观察到主节点A单个Redis内存used_memory_rss_human为9.2 ...
- [转帖]美团在Redis上踩过的一些坑-3.redis内存占用飙升
美团在Redis上踩过的一些坑-3.redis内存占用飙升 博客分类: 运维 redis redismonitor内存突增client listinfo 转载请注明出处哈:http://car ...
随机推荐
- Machine Learning and Data Science 教授大师
http://www.cs.cmu.edu/~avrim/courses.html Foundations of Data Science Avrim Blum, www.cs.cornell.edu ...
- python时间处理之datetime
python时间处理之datetime 标签: pythondateimportstringc 2012-09-12 23:21 20910人阅读 评论(0) 收藏 举报 分类: Python系列( ...
- WCF入门教程四[WCF的配置文件]
一.概述 配置也是WCF编程中的主要组成部分.在 以往的.net应用程序中,我们会把DBConn和一些动态加载类及变量写在配置文件里.但WCF有所不同.他指定向客户端公开的服务,包括服务的地址. 服务 ...
- linux概念之IPC
一切皆文件,文件类型为普通,目录,管道,socket,链接,块设备,字符设备cd /proc/2305/fd/ 该进程打开了6个文件描述符,三个为字符设备即012,三个为socket即345,sock ...
- linux中Zabbix邮件报警设置配置步骤
使用外部邮箱账号发送报警邮件设置 配置Zabbix服务端外部邮箱 vi /etc/mail.rc #编辑,添加以下信息 set from=xxx@163.com smtp=smtp.163.com s ...
- SharePoint 2010 最佳实践学习总结------第2章 SharePoint Windows PowerShell指南
第2章 SharePoint Windows PowerShell指南 SharePoint 2010是SharePoint系列产品中第一个开始支持Windows PowerShell的产品,在以前的 ...
- openstack(liberty): devstack中的iniset/iniget函数分析
这个ini开头的函数在devstack的启动配置中用的非常多,他主要负责.ini文件的配置,这个过程包括对相关ini文件的添加,注释,删除,获取信息,多行信息获取等. 这里主要说的iniset和ini ...
- 【linux】grub详解
参数解释 1. default=0 # default后加一个数字n,表示n+1个“title”操作系统,0表示第一个“title” 的操作系统,以此类推. 2. timeout=0 # timeou ...
- 关于Tomcat自动加载更新class的小技巧
在Tomcat的server.xml或者Tomcat.xxx\conf\Catalina\localhost\project.xml文件中里Context标签内:<!-- reloadable为 ...
- IntelliJ IDEA安装lombok插件
Settings→Plugins→Browse repositories 输入lom后选择Install Plugin 按照提示重启IDEA 来自为知笔记(Wiz)