【面试题】即兴业务-Redis相关

题目描述:
有五个运动手环,ID分别是1001、1002、1003、1004、1005,每个手环每隔一分钟会上传心跳 heartbeat、运动步数 steps 以及其他数据,需求是:每天要统计用户的这些数据!
问:使用什么类型来存储这些数据?该如何存储?

先来分析一下这个业务:

  • 首先要清楚一点,Redis是没有条件查找指令的,所以说要满足查询条件,在存储数据的时候就应该设法按照可以满足这种查询条件的方式去存储。
  • 需求是要查看每项功能每天的数据,所以应该是每个手环的每项功能作为一个key来存储,而且是每天,所以时间也要加上。那么暂时可以确定Redis中这个key应该怎么去存储,比如 1001_20191207_heartbeart。
  • 上一步确定了怎么去存储key,那么应该就能想到用什么结构去存储了吧。对,用链表,也就是Redis常用五种数据类型中的 list。

好了,分析完了也就基本清楚了,下面简单看一下效果:

127.0.0.1:6379> lpush 1001_20191207_heartbeart 68
(integer) 1
127.0.0.1:6379> lpush 1001_20191207_heartbeart 70
(integer) 2
127.0.0.1:6379> lpush 1001_20191207_heartbeart 66
(integer) 3
127.0.0.1:6379> lpush 1001_20191207_heartbeart 71
(integer) 4
127.0.0.1:6379> lrange 1001_20191207_heartbeart 0 -1
1) "71"
2) "66"
3) "70"
4) "68"
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1 Redis介绍1.1 什么是NoSql为了解决高并发、高可扩展、高可用、大数据存储问题而产生的数据库解决方...
    克鲁德李阅读 10,809评论 0 36
  • NOSQL类型简介键值对:会使用到一个哈希表,表中有一个特定的键和一个指针指向特定的数据,如redis,volde...
    MicoCube阅读 9,494评论 2 27
  • Redis是单进程单线程的,Redis利用队列技术将并发访问变为串行访问,消除了传统数据库串行控制的开销。 Red...
    编辑小猿阅读 3,602评论 0 1
  • 转载:可能是目前最详细的Redis内存模型及应用解读 Redis是目前最火爆的内存数据库之一,通过在内存中读写数据...
    jwnba24阅读 3,811评论 0 4
  • “如果命运是一条孤独的河流,谁会是你的灵魂摆渡人?。 如果我真的存在,也是因为你需要我。 原来你在这里,我在这里...
    落情笔阅读 694评论 0 0

友情链接更多精彩内容