星空网 > 软件开发 > ASP.net

Redis命令拾遗四(集合类型)—包含简单搜索筛选商品设计实例。

本文版权,归博客园和作者吴双共同所有。转载和爬虫请注明博客园蜗牛Redis系列文章地址 http://www.cnblogs.com/tdws/tag/NoSql/

Redis数据类型之集合(Set)。

单个集合中最多允许存储2的三十二次方减1个元素。内部使用hash table散列表实现。

SADD Key members.....,向集合中增加多个元素,返回成功个数。另外由于集合中不允许有重复元素,所以当添加重复元素时,会忽略不计,当然也不计影响个数。

SMEMBERS Key   获取目标集合Key下的所有元素。

SREM  Key members  从目标集合中移除多个元素。

Redis命令拾遗四(集合类型)—包含简单搜索筛选商品设计实例。 

SISMEMBER Key Member,判断指定元素 是否在指定集合中存在。时间复杂度O(1)

Redis命令拾遗四(集合类型)—包含简单搜索筛选商品设计实例。

下面简单介绍集合运算。


首先提醒一点,多个集合运算,是按照顺序,一路算下去的结果。 

SDIFF Keys计算差集。

Redis命令拾遗四(集合类型)—包含简单搜索筛选商品设计实例。

Redis命令拾遗四(集合类型)—包含简单搜索筛选商品设计实例。  请注意Result位置,和两次差集结果Result。

SINTER Keys 计算并集。注意Result位置。

Redis命令拾遗四(集合类型)—包含简单搜索筛选商品设计实例。

Redis命令拾遗四(集合类型)—包含简单搜索筛选商品设计实例。

SUNION 计算交集。

Redis命令拾遗四(集合类型)—包含简单搜索筛选商品设计实例。

 

下面简单介绍一下使用场景。


 比如在天猫或者京东当中,筛选商品,你想要七天包退换,货到付款,可分期这样的商品。我们先把这样的标记叫做标签(Tag),

GoodsIdGoodsTag
Goods:1新上架马蓉版充XX娃
Goods:2新上架《淘宝这十年XXX》
Goods:3新上架VR眼镜
Tag:IdTag:Name
Tag:1七天包退换
Tag:2货到付款
Tag:3可分期
Tag:IdGoods:Id
Tag:1Goods:1,Goods:2,Goods:3
Tag:2Goods:1.Goods:2
Tag:3Goods:1

那么我们需要维护并设计的Redis数据“存储结构”如上,三个“表”。当然这是我的随意设计,还算是比较合理。并不了解人家JD,ALi是如何设计的。那么现在你就可以对你需要的符合七天包退换,货到付款,可分期这三种Tag的商品进行筛选咯。很显然,解决办法就是计算最后一个表的,Tag1,Tag2,Tag3这三种标签所拥有的商品Id的并集,并集之后的结果也就是Goods:1,对应的商品是“新上架马蓉版充XX娃”。

 

 

值得注意的是,NoSql中的设计思路,和关系型数据库稍有不同,多思考使用场景,对转换思想好处多多。
欢迎关注,蜗牛将持续发博分享,明天将会补充集合命令,下一篇将会简单介绍有序集合,如果你学会了这个简单的设计,请为自己点赞!

 




原标题:Redis命令拾遗四(集合类型)—包含简单搜索筛选商品设计实例。

关键词:Redis

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

【必备科普】亚马逊Listing七要素,提升转化全靠它!:https://www.ikjzd.com/articles/124984
亚马逊运营QA集锦(824-833):https://www.ikjzd.com/articles/124985
那些一看就知道是爆款的产品,适合中小卖家去做吗?:https://www.ikjzd.com/articles/124986
Shopee各站点要求,政策更新通知:https://www.ikjzd.com/articles/124987
卖家必看:一文看懂跨境电商物流相关小知识:https://www.ikjzd.com/articles/124988
亚马逊选品:如何找到潜在的热销品?:https://www.ikjzd.com/articles/124989
皇家游轮航线 皇家邮轮旅游攻略:https://www.vstour.cn/a/408245.html
2017春节旅游攻略有吗:https://www.vstour.cn/a/408246.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流