当Tair和Redis内存使用率升高或CPU使用率升高时,您可以使用Top Key统计功能快速找到大Key和热Key。本功能支持展示实例中实时和历史的大Key、热Key信息,包括元素数量多的Key、占用内存大的Key、访问频次高的热Key,帮助您有效解决实例性能问题。
大Key和热Key的统计排名机制
为避免对数据库造成额外的资源占用,本功能仅会统计客户端操作(读、写)过的Key,并仅保留和展示每种Key类型的Top数量,而不会实时扫描数据库中的所有Key。同时,在实例重启后或HA切换后,原先统计的TopKey信息将被清空,统计将重新开始,因此长时间未操作过的Key可能不会被纳入统计。如需了解数据库中所有Key的内存占用、数量分布等信息,请使用离线全量Key分析功能。
Key类型 | 适用版本 | 统计机制 | 展示说明 |
大Key(子元素数量) |
| 元素数量(如Hash中的field数、Set中的member数等)达到阈值(默认2000)及以上时,被统计为大Key。可通过设置参数 说明 若参数设置未显示此参数,请升级小版本后重试。 | 最多展示每个数据类型排名前3的大Key,当Key的元素数量相同时优先展示先写入的Key。 说明 若实例总共仅展示3个大Key,请升级小版本后重试。 |
大Key(内存占用) | Tair(企业版)内存型云原生版且小版本25.6.0.0及以上。 |
| 最多支持展示排名前3的Key,当Key的大小相同时按字符串字典序排序。 |
热Key(QPS) |
| Key的QPS超过5000时,被记录为热Key。可通过设置参数 说明 支持统计不存在的Key。当数据类型显示not-exist-key,代表此Key不存在但存在高频访问。 | 在同一时间内,系统最多展示前50个热Key,支持实时展示其精确QPS。 说明 建议您升级实例版本至Redis开源版7.0.18、6.0.2.9、5.5.2.9或Tair内存型5.0.50、25.2.0.0版本及以上。在上述版本之前:热Key的QPS统计阈值为3000且不支持调整,同时仅能展示其大致的QPS范围,且Redis开源版仅支持统计20个热Key。 |
热Key(流量) | Tair(企业版)内存型云原生版且小版本25.2.0.0及以上。 | Key的访问流量超过1MB/s时,被记录为热Key。 | 在同一时间内,系统最多展示前50个热Key,支持实时展示其精确出、入流量和访问频次。 |
操作步骤
访问实例列表,在上方选择地域,然后单击目标实例ID。
在左侧导航栏,单击 。
根据业务需求,选择查询实时数据或历史数据。
图 1. Key分析
说明如果实例为集群架构或读写分离架构,您还可以在当前节点下拉框中选择要展示数据的节点。
查询历史数据时,支持查询最近4天的大Key和热Key信息,且最大查询时间范围不能超过3小时。
相关API
DAS产品的API接口 | 说明 |
获取当前内存中实时的热Key和大Key信息。 | |
获取一段时间内排名前20的热Key信息。 | |
获取一段时间内排名前20的大Key信息。 | |
获取Redis实例的热Key信息。 |
常见问题
Q:为什么大Key(子元素数量)中会显示String类型Key?
A:在Redis开源版和部分早期Tair版本中会显示String类型长度大于阈值(默认为2000)的Key。