海量积分数据实时排名处理

您所在的位置:网站首页 积分榜设计PS 海量积分数据实时排名处理

海量积分数据实时排名处理

2024-07-14 04:59| 来源: 网络整理| 查看: 265

需求概述

积分排名在很多项目都会出现,大家都不会陌生,需求也很简单,积分排名主要满足以下需求:

查询用户名次。 查询TopN(即查询前N名的用户) 实时排名(很多项目是可选的)

当排序的数据量不大的时候,这个需求很容易满足,但是如果数据量很大的时候比如百万级、千万级甚至上亿的时候,或者有实时排名需求;这个时候要满足性能、低成本等需求,在设计上就变得复杂起来了。

常规积分排名处理

这里列举下日常对于排名的常规做法和缺陷。

1. 数据库解决方案

这是最简单的做法,数据存储在数据库里面,然后利用数据库做排序处理。

这里分两种情况:

1.1单库/单表

参与排名的数据量小的时候的做法,所有数据存储在一张表上。

查询操作示例:

查询用户名次:

SELECT count(*) as rank FROM 积分表 WHERE 积分 > (SELECT 积分 FROM 积分表 WHERE uid=’用户ID’)



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3