原来redis hash这么好用!

1前言:

    以前总是使用redis 的string,list,set来存储。以前做机票业务的时候,使用string来保存很少的飞机的航班信息,由于redis 是分片分槽存储的,在terminal中使用keys 的时候总是获取不到想要的结果。

    来到sunlands两个月,发现项目大部分都是使用redis的hash进行存储。考虑了一下,大概有以下好处:

      1 .将具有同一类规则的数据放到redis中的一个数据容器里,便于查找数据。

    例如:下面是我们统计一些机构投放的素材数,机构名字作key,数量作为value 都是这样的类型。在redis中通过“大”key便可以很直观的查看到这次定时任务执行出了多少个机构,他们分别对应的数据是多少!

    2.使用hash 省内存。在hash类型中,一个key可以对应多个多个field,一个field对应一个value。将一个对象存储为hash类型的好处之一:较于每个字段都单独存储成string类型来说,更能节约内存。

3.java中常见操作:(springboot项目)

        

  @Autowired

  RedisTemplateredisTemplate;

  BoundHashOperations boundHashOps =redisTemplate.boundHashOps(CacheKey_AllDaysDurations);

//放值

boundHashOps.put(t,o);

//设置过期时间

boundHashOps.expire(90L, TimeUnit.MINUTES);

boundHashOps:就是类似操作一个hashmap一样去获取你想要的结果

你可能感兴趣的:(原来redis hash这么好用!)