redis初学建表问题
高洛峰
高洛峰 2016-11-11 13:56:02
0
1
734

假设目前有mysql表article结构为
id
title标题
info内容
tags标签id集合
status状态(-1,0,1,2)
atime添加时间
utime更新时间
ptime发布时间
需求按(标签/状态)获取文章根据(添加/更新/发布)时间排序
此时redis表应当如何设计?
目前的想法是
string类型
article:title:{id}
article:info:{id}
article:tags:{id}
article:status:{id}
article:atime:{id}
article:utime:{id}
article:ptime:{id}
set类型
全部集合:article:list
根据状态分开存储集合:article:status:{-1/0/1/2}
根据标签分开存储集合article:tag:{tag_id}

使用类似sort article:tag:1 by article:atime:*来获得排序,这样设计是否合理?

还有一个问题,尝试做搜索的时候,使用
zrangebylex article:status:0 [f (g
结果报错
ERR unknown command 'zrangebylex'
是什么原因?


高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(1)
三叔

zrangebylex需要redis >= 2.8.9

sort article:tag:1 by article:atime:* 这句话是获得添加时间排序的标签为1的文章id排序吧?这设计可行

string类型的话不太推荐,会造成key过多


热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板