在Redis的使用过程中,我们经常会遇到BigKey(下文将其称为“大key”)及HotKey(下文将其称为“热key”)。大Key与热Key如果未能及时发现并进行处理,很可能会使服务性能下降、用户体验变差,甚至引发大面积故障。

【Redis】使用redis-cli的“--bigkeys”选项查找大Key_数据

下面将为大家介绍大Key的定义及查找方法:

一、什么是大Key?

通常我们会将含有较大数据或含有大量成员、列表数的Key称之为大Key,下面我们将用几个实际的例子对大Key的特征进行描述:

一个STRING类型的Key,它的值为5MB(数据过大)

一个LIST类型的Key,它的列表数量为20000个(列表数量过多)

一个ZSET类型的Key,它的成员数量为10000个(成员数量过多)

一个HASH格式的Key,它的成员数量虽然只有1000个但这些成员的value总大小为100MB(成员体积过大)

需要注意的是,在以上的例子中,为了方便理解,我们对大Key的数据、成员、列表数给出了具体的数字。为了避免误导,在实际业务中,大Key的判定仍然需要根据Redis的实际使用场景、业务场景来进行综合判断。


二、如何在Redis中查找大Key?

1、背景信息

当一个简单Key的Value过大或List、Hash等类型的数据中存储了大量的元素时,读取、删除这些数据的操作可能会花费过多的时间,阻塞单线程的Redis服务。此时您需要对内存结构进行优化,找出大Key并进行调整。查找大Key的方法多种多样,您可以根据业务需求选择最适合的方案。


2、前提条件

·拥有与Redis实例互通的ECS实例。

·ECS中已经安装了原生Redis。

提示:安装了原生Redis的目的是使用其自带的工具redis-cli。


3、实施步骤

在ECS实例中执行如下命令,查看大Key的情况。

redis-cli -h r-***************.redis.rds.aliyuncs.com -a XXX --bigkeys

注:

-h指定Redis的连接地址。

-a指定Redis的认证密码。

--bigkeys查找大Key。

--hotkeys用来查询热点Key。

系统显示类似如下。

【Redis】使用redis-cli的“--bigkeys”选项查找大Key_Redis_02

关于奇墨ITQM

奇墨科技是全域数字资产质量管理服务商,核心团队来自成功的连续创业者、500强企业。作为国内首批云管理服务伙伴,凭借近20年的服务经验与专业技能,已累计为全国近万家企业提供云+服务,业务涵盖全国各行各业。

基于企业客户IT逐步向云和数据方向发展的趋势,奇墨科技在全球创新提出了ITQM(IT质量管理)概念和标准,并自研了ITQM数字资产运营平台,为企业提供全云管理、FinOps成本优化、AIOps智能运维、质量管理、业务洞察、数据安全等IT治理能力和服务,致力于打造敏捷高效、安全合规的全栈数字资产管理服务体系,以“上好云·用好云·管好云” 为服务理念,助力企业加速数字化转型。奇墨ITQM平台是业界第一个成功通过中国信通院《可信云•云成本优化工具能力要求第二部分 混合多云成本优化工具》评估的IT管理平台。

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: redis