首页/数据/数据库速查/SCARD 集合基数
本包目录(495 条)
MySQL 基础与连接36 条SQL 语法52 条用户与权限21 条备份与恢复56 条主从复制与高可用53 条性能与调优57 条
Redis 命令96 条
Redis 运维与场景124 条

SCARD 集合基数

O(1) 返回集合成员数;用作规模监控、限流判空与「UV 统计」的精确计数(与 HyperLogLog 的估算对比)。

数据库速查数据更新于 2026-10-12

示例

示例
SADD uv:20261012 u1 u2 u3
SCARD uv:20261012      # 3
# 每日 UV 监控:
SCARD uv:20261012      # 采样上报,超过阈值告警
# 对比近似算法:
PFADD hll:uv:20261012 u1 u2 u3
PFCOUNT hll:uv:20261012   # 3(估算,误差约 0.81%)
返回成员个数;键不存在为 0
精确性精确
内存随成员数线性增长,注意大规模 UV 成本
UV 量级到千万以上时精确 Set 内存吃不消(每用户一个成员),可换 HyperLogLog:误差 0.81%,固定 12KB。

易错点

  • 千万级 UV 用 Set 精确统计:单键几百 MB,还是大 key
  • 把 PFCOUNT 当精确值对外展示:它有 0.81% 标准误差

数据来源与参考

  • Redis 官方文档: SCARD
  • Redis 官方文档: HyperLogLog

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌