ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
<table> <thead> <tr> <th style="width:20%">类型</th> <th style="width:50%">描述</th> <th style="width:30%">场景</th> </tr> </thead> <tbody> <tr> <td>String(字符串)</td> <td>可以包含任何数据。比如jpg图片或者序列化的对象。<br>string 类型是 Redis 最基本的数据类型,string 类型的值最大能存储 512MB。</td> <td>常规key-value缓存应用,常用命令:get、set、incr、decr、mget等</td> </tr> <tr> <td>Hash(哈希)</td> <td>一个键值(key =&gt; value)对集合。Redis hash 是一个 string 类型的 field 和 value 的映射表,hash 特别适合用于存储对象.<br>键值对集合,即编程语言中的Map类型 </td> <td>常用命令:hget,hset,hgetall 等。主要用来存储对象信息</td> </tr> <tr> <td>List(列表)</td> <td>列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)。 <br>Redis list的实现为一个双向链表,即可以支持反向查找和遍历,更方便操作,不过带来了部分额外的内存开销 </td> <td>消息队列</td> </tr> <tr> <td>Set(集合)</td> <td>string类型的无序集合。集合是通过hashtable实现的,概念和数学中个的集合基本类似,可以交集,并集,差集等等,set中的元素是没有顺序的。所以添加,删除,查找的复杂度都是O(1)。<br>Set 就是一个集合,集合的概念就是一堆不重复值的组合。利用Redis提供的Set数据结构,可以存储一些集合性的数据。 </td> <td>Redis set对外提供的功能与list类似是一个列表的功能,特殊之处在于set是可以自动排重的,当你需要存储一个列表数据,又不希望出现重复数据时,set是一个很好的选择,并且set提供了判断某个成员是否在一个set集合内的重要接口,这个也是list所不能提供的。<br><strong>交集,并集,差集</strong> </td> </tr> <tr> <td>zset(sorted set:有序集合)</td> <td>Redis zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。不同的是每个元素都会关联一个double类型的分数。<br>redis正是通过分数来为集合中的成员进行从小到大的排序。<br>zset的成员是唯一的,但分数(score)却可以重复。 </td> <td>带权重的消息队列</td> </tr> </tbody> </table>