用redis是否适合实现统计功能?

目前有一个需求就是统计一些日报的数据,并且用echarts做图表展示,因为可能涉及到需要根据日计算月或者年的总和这种运算,所以希望找一个可以代替mysql做运算的方式,第一个想到的就是redis,但是查了一些资料,只找到计算数量的方法,没有找到计算key里面具体值之和的方法,所以想问一下redis能做这样的事情吗?如果不能,有什么好的解决方案吗?

以前这一类的统计需求都是直接通过mysql计算的,但是这个需求有些大,害怕mysql扛不住。


牛魔王的故事
浏览 640回答 1
1回答

拉丁的传说

一、redis的主要的一个功能就是做缓存,解决的问题是高并发情况下的,二、如果问题是在数据量巨大,mysql处理时间长的话其实只能优化mysql了,和redis没有什么关系,三、如果你是将mysql的数据处理完后将缓存打到redis上,这个其实是可以的,比如将日或者月或者年的数据总和存到redis中然后取数据从redis中取,但是可能会出现的问题是,当缓存策略失效,会让请求打到mysql中,这样其实请求也会变慢,四、还有一种解决办法就是建立一个统计表,这个表是专门统计数据的,定时去跑脚本更新数据,数据取的是这个统计表,这样的话其实数据请求会变快,原理和redis出不多。五、redis是key:value形式的数据库,对于value来说,redis还没有什么计算的方法,因为你无法确定value的值类型,一般都是奖value自己取出来然后手动计算。
打开App,查看更多内容
随时随地看视频慕课网APP