[发明专利]一种数据结构切换方法、装置、设备和存储介质有效
申请号: | 201811460054.0 | 申请日: | 2018-11-30 |
公开(公告)号: | CN109344303B | 公开(公告)日: | 2020-12-29 |
发明(设计)人: | 黄元兵 | 申请(专利权)人: | 广州虎牙信息科技有限公司 |
主分类号: | G06F16/9038 | 分类号: | G06F16/9038;G06F16/904 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 孟金喆 |
地址: | 511400 广东省广州市番禺区南村镇万博二*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据结构 切换 方法 装置 设备 存储 介质 | ||
1.一种数据结构切换方法,其特征在于,应用于排行列表的构建,包括:
若满足预设的周期切换条件,则获取在先一个或多个周期中对排行列表监测的针对列表操作的操作数据;
根据所述操作数据分别预估使用至少两种数据结构更新所述排行列表的至少两个性能消耗值;
根据所述至少两个性能消耗值从所述至少两种数据结构中选择目标数据结构;
在本周期中,使用所述目标数据结构更新所述排行列表;
其中,所述性能消耗值是根据所述操作数据对所述排行列表进行性能的评估得到的,与所述排行列表的性能为负相关。
2.根据权利要求1所述的方法,其特征在于,根据所述操作数据分别预估使用至少两种数据结构更新所述排行列表的至少两个性能消耗值,包括:
获取使用至少两种数据结构更新所述排行列表的性能消耗权重;
结合所述操作数据与所述性能消耗权重分别计算使用所述至少两种数据结构更新所述排行列表的至少两个性能消耗值。
3.根据权利要求2所述的方法,其特征在于,所述操作数据为列表操作的操作频次,所述性能消耗权重为所述列表操作的操作耗时;
结合所述操作数据与所述性能消耗权重分别计算使用所述至少两种数据结构更新所述排行列表的至少两个性能消耗值,包括:
针对每种数据结构,计算归属于同一个所述列表操作的操作频次与操作耗时之间的乘积,作为预估时长;
计算所述预估时长之和,作为所述数据结构的性能消耗值。
4.根据权利要求2或3所述的方法,其特征在于,所述获取使用至少两种数据结构更新所述排行列表的性能消耗权重,包括:
获取对排行列表进行列表操作的样本操作数据;
针对每种数据结构,根据所述样本操作数据模拟使用所述数据结构对所述排行列表进行更新,以获得操作耗时。
5.根据权利要求1所述的方法,其特征在于,所述预设的周期切换条件为所述排行列表中的列表数据的更新率超过预设的阈值。
6.根据权利要求1所述的方法,其特征在于,在满足预设周期切换条件,则获取上一个或多个周期的统计数据之前,还包括:
确定使用至少两种数据结构创建所述排行列表的至少两个性能初始值;
根据所述至少两个性能初始值从所述至少两种数据结构中选择特征数据结构;
使用所述特征数据结构创建排行列表;
所述性能初始值用于表示初始情况下,所述至少两种数据结构对应的性能消耗值。
7.根据权利要求6所述的方法,其特征在于,所述数据结构包括如下至少一个:线性列表、跳跃表和排序树;
所述特征数据结构包括线性列表;
所述列表操作包括如下至少一个:创建、单查询、批量查询、累加和修改。
8.一种数据结构切换方法,其特征在于,应用于网站中排行列表的构建,所述排行列表为排行榜,包括:
根据网站实时获取的列表数据,确定满足预设的周期切换条件;
按照预设更新方式使用所述列表数据更新排行列表,其中,所述预设更新方式包括:获取在先一个或多个周期中对排行列表监测的针对列表操作的操作数据;根据所述操作数据分别预估使用至少两种数据结构更新所述排行列表的至少两个性能消耗值;根据所述至少两个性能消耗值从所述至少两种数据结构中选择目标数据结构;在本周期中,使用所述目标数据结构更新所述排行列表;
将更新后的排行列表在所述网站进行显示;
其中,所述性能消耗值是根据所述操作数据对所述排行列表进行性能的评估得到的,与所述排行列表的性能为负相关。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州虎牙信息科技有限公司,未经广州虎牙信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811460054.0/1.html,转载请声明来源钻瓜专利网。