1、键名 t_1minx年月日时分 例如t_1min*2019-5-22 16:05
使用hash value=>数据值
会产生很多hash值
2、键名 t_1min
使用sorted-set 分数就是时间戳=>数据值
只会产生一个有序列表
同一场景下
比如 或者今日每一分钟的数据
哪一个数据会更快 设计更优
两个方案我用ab测试了下 没有明显的区别
1、键名 t_1minx年月日时分 例如t_1min*2019-5-22 16:05
使用hash value=>数据值
会产生很多hash值
2、键名 t_1min
使用sorted-set 分数就是时间戳=>数据值
只会产生一个有序列表
同一场景下
比如 或者今日每一分钟的数据
哪一个数据会更快 设计更优
两个方案我用ab测试了下 没有明显的区别
对于redis key的命名规范很重要,只要抓住两点就可以:
我们可能会使用特殊字符做业务上的分割,很可能引入难以排查的bug;
尽量从业务层次规避重复问题。
从你说的效率方面来说两者没有太大差别,如果没有其他需求建议使用第二种方案。
1 回答4k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
2 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
1 回答1.9k 阅读✓ 已解决
1 回答1.4k 阅读✓ 已解决
2 回答2.2k 阅读
两种模型,没太大区别,感觉区别还是业务上的操作有什么吧。
另外,用sorted,要注意不要让列表太大,不然某些操作可是O(n)了,Hash也是的。