数据类型-Hash
参考数据类型与底层数据结构,Hash类型存在压缩列表和字典两种数据结构。
当Hash中节点比较少的情况下,底层才用压缩列表ziplist进行存储数据,随着数据的增加,底层的ziplist就可能会转成字典结构,具体配置如下:filed元素个数小于 hash-max-ziplist-entries(默认512),同时任意一个 value 的占用字节大小都小于hash-max-ziplist-value(默认64) 。 hash-max-ziplist-entries 512 hash-max-ziplist-value 64
Hash的field越多,当使用HgetAll获取全量数据时,性能越差,该命令的性能与field字段的数量成正比。
1、在filed数量小于阈值时,hgetall是hmget的性能的15倍以上
2、在filed数量大于阈值时,hmget是hgetall的性能的3倍以上
3、字典结构hmget是ziplist结构hmget的性能的30倍以上
4、存储量,字典结构是ziplist的5倍以上
生产环境配置
hash-max-ziplist-entries=512
hash-max-ziplist-value=64
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构