存储对象User

String存储方式:

SET media:1155315 939
  GET media:1155315
  > 939

String结构存储该对象

User243 243600

存储量 使用内存(KB) 使用时间(毫秒) 使用cpu
100 30.72 2983  
100 30.72 1224  
100 40.96 2638  
100 40.96 1543  
100 40.96 3335  
4487 1934.62 21760(21.76秒) 0.05
4487 1934.59 21732(21.732秒) 0.05
       
1000000 84.042MB 70.672分(单线程)  

String结构存储该对象

存储量 使用内存(KB) 使用时间(秒) 使用cpu
100 30.72 0.2983  
100 30.72 0.1224  
100 40.96 0.2638  
100 40.96 0.1543  
100 40.96 0.3335  
4487 1934.62 21.76  
4487 1934.62 21.732  
       
1000000 84.042MB 70.672(分钟)  

Hash结构存储该对象

100

存储量 使用内存(KB) 使用时间(秒) 使用cpu
100 367.76 0.454  
100 37.37 0.458  
50.50 0.461  
100 40.44 0.467  
100 35.50 0.489  
4487 1805.1 21.729  
4487 1844.23 21.712  
4487 1844.23 21.778  
       
1000000 68.70MB    
HSET "mediabucket:1155" "1155315" "939"
  HGET "mediabucket:1155" "1155315"
  > "939"
存储量 使用内存(KB) 使用时间(毫秒) 使用cpu
100 367.76 454  
100 37.37 458  
100 50.50 461  
100 40.44 467  
100 35.50 489  
   
     
     
     
4487 1805.1 21729 0.06
4487 1844.23 21712 0.05
4487 1844.23 21778  
1000000 0                   68.70MB  
       

Hash结构继续优化

类似

HSET "1155" "315" "939"
  HGET "1155" "315"
  > "939"
存储量 使用内存(KB) 使用时间(毫秒) 使用cpu
100 367.76 454  
100 37.37 458  
100 50.50 461  
100 40.44 467  
100 35.50 489  
4487 1803.29 21879 0.06
4487 1842.43 21931 0.05
       

參考文章:

http://www.searchdatabase.com.cn/showcontent_54724.htm

节约内存:Instagram的Redis实践

redis之Hash存储与String存储内存消耗对照的更多相关文章

  1. StackExchange.Redis 之 hash 类型示例

    StackExchange.Redis 的组件封装示例网上有很多,自行百度搜索即可. 这里只演示如何使用Hash类型操作数据: // 在 hash 中存入或修改一个值 并设置order_hashkey ...

  2. redis内存消耗详解

    Redis所有的数据都存在内存中,相对于廉价的硬盘,内存资源还是比较昂贵的,因此如何高效利用redis内存变得非常重要. 内存消耗分析 管理内存的原理和方法 内存优化技巧 一.内存消耗 理解redis ...

  3. 一文了解 Redis 内存监控和内存消耗

    Redis 是一种内存数据库,将数据保存在内存中,读写效率要比传统的将数据保存在磁盘上的数据库要快很多.所以,监控 Redis 的内存消耗并了解 Redis 内存模型对高效并长期稳定使用 Redis ...

  4. ***Redis hash是一个string类型的field和value的映射表.它的添加、删除操作都是O(1)(平均)。hash特别适合用于存储对象

    http://redis.readthedocs.org/en/latest/hash/hset.html HSET HSET key field value   (存一个对象的时候key存) 将哈希 ...

  5. Redis学习03——存储字符串(String)

    --------------------- 作者:愤怒的小明 来源:CSDN 原文:https://blog.csdn.net/qiwenmingshiwo/article/details/78118 ...

  6. 直接在安装了redis的Linux机器上操作redis数据存储类型--String类型

    一.概述: 字符串类型是Redis中最为基础的数据存储类型,它在Redis中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG图像数据或Json对象描述信息等.在Redis中字符串类型 ...

  7. 一个 -100.01 的double 在内存中怎么存储的. 一个中文String 在内存中占多少直接 utf-8 / GBK

    一.-100.01 的double 在内存中怎么存储的 double双精度数据类型存储格式IEEE 双精度格式为8字节64位,由三个字段组成:52 位小数 f : 11 位偏置指数 e :以及 1 位 ...

  8. redis和ehcache的区别,存储方式(各属于内存还是外存)

    ehcache属于内存存储,redis的缓存属于内存存储,redis的持久文件属于外存存储: redis是通过socket访问到缓存服务,效率比ecache低,比数据库要快很多,处理集群和分布式缓存方 ...

  9. Redis系列-存储篇string主要操作命令

    Redis系列-存储篇string主要操作命令 通过上两篇的介绍,我们的redis服务器基本跑起来.db都具有最基本的CRUD功能,我们沿着这个脉络,开始学习redis丰富的数据结构之旅,当然先从最简 ...

随机推荐

  1. Gym - 101981I The 2018 ICPC Asia Nanjing Regional Contest I.Magic Potion 最大流

    题面 题意:n个英雄,m个怪兽,第i个英雄可以打第i个集合里的一个怪兽,一个怪兽可以在多个集合里,有k瓶药水,每个英雄最多喝一次,可以多打一只怪兽,求最多打多少只 n,m,k<=500 题解:显 ...

  2. [BZOJ1821][JSOI2010]部落划分

    感觉学了这么久还是有那么一丢丢进步的...上个学期看到这道题,虽然早就学过并查集和二分了但还是一点思路都没有,现在可以秒切了呢 思路就是二分+并查集,有些人说是生成树,其实它没有变成树,只是运用了生成 ...

  3. [DP专题]悬线法

    参考:https://blog.csdn.net/twtsa/article/details/8120269 先给出题目来源:(洛谷) 1.p1387 最大正方形 2.P1169 棋盘制作 3.p27 ...

  4. Linux学习笔记--文件夹结构

    暂时先上一张图学习吧,先大致了解好,再进行深入的学习.

  5. 5.26 idea生成javadoc

  6. nodejs __dirname 与 process.cwd()的区别

    var cwd = process.cwd(); console.log(cwd); console.log(__dirname); 1 2 3 cwd() 是当前执行node命令时候的文件夹地址 _ ...

  7. CSS自定义消息提示

    1.效果 2.源码 <%@ page contentType="text/html;charset=UTF-8" language="java" %> ...

  8. 使用 CSS 追踪用户

    原文地址:Crooked Style Sheets 作者:jbtronics 除了使用 JS 追踪用户,现在有人提出了还可以使用 CSS 进行网页追踪和分析,译者认为,这种方式更为 优雅,更为 简洁, ...

  9. matplotlib之pyplot 学习示例

    现在通过numpy和matplotlib.pyplot 在Python上实现科学计算和绘图,而且和matlab极为相像(效率差点,关键是方便简单) 这里有大量plots代码例子.  1. 简单的绘图( ...

  10. Christopher G. Atkeson 简介

    有一个事实:双足机器人的稳定性问题单靠算法是搞不定的!!! 在2015 DARPA 机器人挑战赛中,许多参赛团队的机器人使用了Atlas,他们通过安装他们自己的软件并修改来让机器人保持平衡.来自WPI ...