小编给大家分享一下redis中有哪些数据结构,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!
redis数据结构有哪些?
字符串(strings):
存储整数(比如计数器)和字符串(废话。。),有些公司也用来存储json/pb等序列化数据,并不推荐,浪费内存;
哈希表(hashes):
存储配置,对象(比如用户、商品),优点是可以存取部分key,对于经常变化的或者部分key要求atom操作的适合;
列表(lists):
可以用来存最新用户动态,时间轴,优点是有序,确定是元素可重复,不去重;
集合(sets):
无序,唯一,对于要求严格唯一性的可以使用;
有序集合(sorted sets):
集合的有序版,很好用,对于排名之类的复杂场景可以考虑;
位图(bitmaps):
这个不是新增的数据类型,只是可以把字符串类型按照单个位的形式进行操作,没有实际使用过。网上很多人用bitmaps来做活跃用户统计和用户签到功能,性能比去数据库load高很多。
计数器(hyperloglogs,翻译待定):
如名字,添加元素只记录元素个数,并不会存储元素本身,节省空间并且避免重复count,这个感觉直接用incr就可以实现;
地理空间(geospatial indexes):
用来做地理位置查询,比如两点之间的距离,一个点附近有多少元素,适合点比较固定的场景,或者只考虑当前位置的场景,像附近的人这种就不适合,一是需要考虑某段时间内的点,二是点经常更新,压力比较大。
看完了这篇文章,相信你对redis中有哪些数据结构有了一定的了解,想了解更多相关知识,欢迎关注编程之家行业资讯频道,感谢各位的阅读!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。