Redis基本类型-哈希类型
Java操作哈希类型
- 将fiele:value插入Hash表key中:
jedis.hset("bigcity","big","beijing");
- 获取Hash表key中域为feild的value:
jedis.hget("bigcity","big");
- 插入一个map至Hash表key中:
jedis.hmset("bigCity2",map);
- 通过List接收从Hash表key中返回的多个域:
List<String> list = jedis.hmget("bigCity2","big1","big2");
- 删除Hash表key中的多个feild:
jedis.hdel("bigCity2","big1","big2");
- 获取Hash表的长度:
jedis.hlen("bigcity");
- 是否存在Hash表key:
jedis.exists("bigCity2");
- 返回Hash表中所有feilds:
jedis.hkeys("bigCity2")
- 返回Hash表中所有values:
jedis.hvals("bigCity2")
用处
- 操作某个字段
深入
- rehash
- Redis为追求高性能,不堵塞服务,所以采用渐进式rehash策略。
- 渐进式rehash:
在rehash同时保留两个hash结构,查询时会查询两个hash结构。
在后续的定时任务以及hash操作指令中,循序渐进地将旧hash的内容一点点地迁移到新的hash结构中。
当hash移除了最后一个元素之后,该数据结构被自动删除,内存被回收。
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 yanglau0527@gmail.com
文章标题:Redis基本类型-哈希类型
文章字数:276
本文作者:Cynaith
发布时间:2020-05-02, 02:19:36
最后更新:2020-05-02, 02:21:52
原始链接:https://cynaith.github.io/2020/05/02/Redis%E5%9F%BA%E6%9C%AC%E7%B1%BB%E5%9E%8B-%E5%93%88%E5%B8%8C%E7%B1%BB%E5%9E%8B/版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。