logo

如何实现日榜/周榜/月榜?为什么要为不同时间窗口创建不同 Sorted Set,并把冷数据迁移到冷存储?

How do you implement daily/weekly/monthly leaderboards, and why use separate sorted sets and cold storage?

题目类型: 技术面试题

这是一道技术面试题,常见于澳洲IT公司面试中。

难度: medium

分类: System Design

标签: time-window, daily-weekly-monthly, cold-storage

参考答案摘要

答案 时间窗口榜单的关键是隔离数据:日榜只看当天,周榜只看本周。 为每个窗口创建独立的 Sorted Set(例如 lb:daily:2026-01-19 、 lb:weekly:2026-W03 )。 写入时同时更新对应窗口的集合(或通过流处理异步聚合)。 过期窗口的数据可迁移到 冷存储 (对象存储/数据湖),节省 Redis/热存储成本。 热门筛选(如地区、好友圈)可预计算,降低实时计算压力。

本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。

← 返回面试题库

如何实现日榜/周榜/月榜?为什么要为不同时间窗口创建不同 Sorted Set,并把冷数据迁移到冷存储?

Mediumsystem-designleaderboardrediscacheserverlessscalabilityreliabilitysecuritywebsocket

想查看完整答案?

登录匠人学院学习中心,获取 STAR 格式回答和详细技术解析

前往学习中心查看答案