【技术实现步骤摘要】
一种热点识别方法及一种限流方法
[0001]本说明书一个或多个实施例涉及计算机应用
,尤其涉及一种热点识别方法及一种限流方法。
技术介绍
[0002]分布式数据库中,会将一个较大的数据库的数据分成多份存在不同物理机上。如果某一段时间内,数据库内的一条数据被频繁访问,由于一条数据的访问服务一般是由单台物理机所承担的,在这条数据的访问量较大时,则会形成热点,即分布式系统中,访问请求集中于一台物理机,比如微博热搜、电商秒杀等场景下,容易发生热点问题。在发生热点问题的情况下,热点所在的物理机将可能由于流量较多而宕机,影响分布式数据库服务的稳定性。
[0003]对于非关系型数据库来说,每条数据一般对应于一个主键(key),相关技术中一些分布式数据库一般是通过统计每个主键的访问次数来识别热点的,但是对于单台物理机存储的数据较多的数据库来说,这种方法会占用大量内存,影响数据库的正常运行。
[0004]可见,针对单台物理机数据量较大的分布式数据库(且是非关系型数据库),缺乏一种可以避免系统宕机的热点识别方法。
【技术保护点】
【技术特征摘要】
1.一种热点识别方法,预先将热点识别树包括的多个热点索引对应的计数值初始化为0;所述热点识别树中热点索引的数量小于数据库中数据的数量;所述方法包括:在收到数据访问请求的情况下,确定所述数据访问请求所访问数据的主键;计算所述主键对应的热点索引,并根据所述热点索引在热点识别树中确定对应的计数值;响应于所述计数值满足预设的热点条件,确定述主键是热点主键;响应于所述计数值不满足预设的热点条件,将所述计数值加一。2.根据权利要求1所述的方法,所述热点识别树包括第一层和第二层;所述计算所述主键对应的热点索引,并根据所述热点索引在热点识别树中确定对应的计数值,包括:根据所述热点识别树第一层对应的散列函数,计算所述主键对应的第一层热点索引;响应于所述热点识别树中不存在所述第一层热点索引对应的第二层热点索引,将所述第一层热点索引对应的技术值确定为所述对应的计数值;响应于所述热点识别树中存在所述第一层热点索引对应的第二层热点索引,根据第二层对应的散列函数确定所述主键对应的第二层热点索引,并将所述第二层热点索引对应的计数值确定为所述对应的计数值。3.根据权利要求2所述的方法,所述预先将热点识别树包括的多个热点索引对应的计数值初始化为0,包括:预先将热点识别树第一层包括的多个热点索引对应的计数值初始化为0;所述方法还包括:响应于加1后的第一层热点索引对应的计数值超过预设扩展阈值,新建所述第一层热点索引对应的多个第二层热点索引,并将多个第二层热点索引对应的计数值初始化为0。4.根据权利要求1所述的方法,所述方法还包括:在收到针对任意数据的数据访问请求的情况下,将访问请求数加1;在所述访问请求数大于预设的访问请求阈值的情况下,将所述访问请求数重置为0,并将所述热点识别树包括的多个热点索引对应的计数值置为0;所述响应于所述计数值满足预设的热点条件,确定述主键是热点主键,包括:响应于所述计数值达到预设的热点阈值,确定所述主键为热点主键。5.根据权利要求1所述的方法,所述响应于所述计数值满足预设的热点条件,确定述主键是热点主键,包括:响应于所述计数值占所有计数值之和的比例超过预设的热点比例,确定所述主键为热点主键。6.根据权利要求1所述的方法,...
【专利技术属性】
技术研发人员:陈亚东,汪翔,杨文龙,沈春辉,杨成虎,
申请(专利权)人:阿里云计算有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。