一种基于Redis的热点数据的嗅探方法技术

技术编号:42001796 阅读:16 留言:0更新日期:2024-07-12 12:24
本发明专利技术涉及计算机技术领域,尤其为一种基于Redis的热点数据的嗅探方法,首先,建立维度D1和维度D2,并进行数据采样来判定是否热点数据,其中:维度D1为每秒的访问次数;维度D2为设定周期内的加权访问频率,维度D1采样逻辑,以内容唯一标识拼接当前时钟的秒数作为键Key,每当内容被访问时,使用Redis Incr命令,将访问次数加1,并设置此Key在t秒后过期,维度D2数据采用Bitmap实现近似访问频率的存储。首先规划一个64位的Redis Bitmap,其前40位用于存储Unix时间戳,后24位用于存储加权访问频率。本发明专利技术不依赖于OLAP数据库,极大地降低了热点数据的嗅探实施成本和运维开销,且具备较大的灵活性;内容缓存和监控数据都均可以采用Redis存储,对开发人员技术栈要求低。

【技术实现步骤摘要】

本专利技术涉及计算机,具体为一种基于redis的热点数据的嗅探方法。


技术介绍

1、随着互联网的普及,内容信息越来越复杂,用户数和访问量越来越大,为了降低数据库和服务器压力,redis缓存被广泛应用。但是由于redis服务器内存资源是有限的,所以一般只有热点数据才会存入redis缓存。

2、因此,如何及时发现热点数据就成为编程人员经常需要面对的问题。对于这个问题,目前主流的解决方案有2种:

3、a.结合业务预测可能成为热点的数据,在内容发布时,主动将其存入缓存,比如购物网站的秒杀商品信息

4、b.在内容被访问时,将访问记录存入olap数据库,然后基于大数据建立热点预测模型。

5、方案a,存在预测失误且无法应对突发流量,此外还得设计将数据从缓存移除的策略,较为死板无法应对复杂需求;

6、方案b,此实现会引入olap数据库,增大部署和维护成本,对技术团队要求高;

7、因此,针对上述问题提出一种基于redis的热点数据的嗅探方法。


技术实现思路

...

【技术保护点】

1.一种基于Redis的热点数据的嗅探方法,其特征在于:包括以下步骤:

2.根据权利要求1所述的一种基于Redis的热点数据的嗅探方法,其特征在于:所述存储Unix时间戳时,如果是RedisLua脚本,前40位的时间戳使用redis.call[0]获取;如果是Java代码,前40位的时间戳使用Instant.now().getEpochSecond()获取。

3.根据权利要求1所述的一种基于Redis的热点数据的嗅探方法,其特征在于:64位的RedisBitmap中的后24位用于存储加权访问频率的整数值对应的二进制。

4.根据权利要求1所述的一种基于R...

【技术特征摘要】

1.一种基于redis的热点数据的嗅探方法,其特征在于:包括以下步骤:

2.根据权利要求1所述的一种基于redis的热点数据的嗅探方法,其特征在于:所述存储unix时间戳时,如果是redislua脚本,前40位的时间戳使用redis.call[0]获取;如果是java代码,前40位的时间戳使用instant.now().getepochsecond()获取。

3.根据权利要求1所述的一种基于redis的热点数据的嗅探方法,其特征在于:64位的redisbit...

【专利技术属性】
技术研发人员:张炎坤商茎正李智超
申请(专利权)人:厦门最有料数字科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1