Redis学习笔记(二)

栏目: 数据库 · Redis · 发布时间: 6年前

内容简介:Redis需要考虑需要哪些keys以及对应的value使用合适的数据类型进行存储。在retwis例子中,我们需要users,user的粉丝列表, user的关注用户列表等等。和传统的关系型数据库一样,每个用户有一个唯一的id关联,使用INCR创建唯一的id。

解读 Retwis官网 例子

Redis需要考虑需要哪些keys以及对应的value使用合适的数据类型进行存储。在retwis例子中,我们需要users,user的粉丝列表, user的关注用户列表等等。

Users

和传统的关系型数据库一样,每个用户有一个唯一的id关联,使用INCR创建唯一的id。

Redis学习笔记(二)

除了这些值以外,有时候我们希望根据用户名找到用户的id,所以每增加一个用户信息,我们需要存用户的id。因为 redis 没法根据值来查询key。

HSET和HMSET的区别就是,HMSET允许设置多个field/value。

Redis学习笔记(二)

Redis学习笔记(二)

Followers(粉丝), Following(关注), Updates(更新)

用户的粉丝和关注都使用Sets集合存储,因为需要是唯一的集合,并且可以使用Sorted sets有序集合存储,这样可以根据关注或被关注的时间进行排序。

接下来先再添加一个用户

Redis学习笔记(二)

用户2关注用户1

Redis学习笔记(二)

用户1增加一个粉丝

Redis学习笔记(二)

通过ZRANGE命令查询所有的关注对象

ZRANGE key start stop

stop为-1表示查到集合中倒数第一个数,-2查到倒数第二个数,以此类推。

Redis学习笔记(二)

接下来使用List来存储用户的更新,并且按照更新的时间倒序,以及使用LRANGE来进行翻页查询。

Redis学习笔记(二) Redis学习笔记(二) Redis学习笔记(二) Redis学习笔记(二)

为了避免将session存在应用服务里,因为应用服务可以部署在不同的机器上,所以可以将session放在redis里,持久存储。

如果用户认证成功,需要将生成的session添加到用户hash结构里。同时,如果我们需要根据session得到用户id。

Redis学习笔记(二)

这样就基本上能满足twitter-clone例子中的数据存储


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

图解机器学习

图解机器学习

杉山将 / 许永伟 / 人民邮电出版社 / 2015-4 / 49

本书用丰富的图示,从最小二乘法出发,对基于最小二乘法实现的各种机器学习算法进行了详细的介绍。第Ⅰ部分介绍了机器学习领域的概况;第Ⅱ部分和第Ⅲ部分分别介绍了各种有监督的回归算法和分类算法;第Ⅳ部分介绍了各种无监督学习算法;第Ⅴ部分介绍了机器学习领域中的新兴算法。书中大部分算法都有相应的MATLAB程序源代码,可以用来进行简单的测试。 本书适合所有对机器学习有兴趣的初学者阅读。 187张图......一起来看看 《图解机器学习》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具