可观测性能力介绍

相比Redis云数据库 Tair(兼容 Redis)提供了维度更广、种类更多及功能更强大的可观测性能力(Observability)。

背景信息

可观测性是以系统的指标、日志、链路追踪三大数据支柱为基础,衍生出如数据监控、问题分析、系统诊断等一系列的能力。

  • 指标(Metrics):记录一段时间内各个维度的量化信息,用来观察系统的某些状态和趋势。

  • 日志(Logs):记录程序运行过程中产生的一些离散事件。

  • 链路追踪(Traces):记录一次请求从接收到处理完成整个生命周期内的调用链路。

同时,云数据库 Tair(兼容 Redis)还基于三大数据支柱进行信息聚合,提供数据分析能力,下表为云数据库 Tair(兼容 Redis)Redis的可观测性能力对比。为便于浏览和内容表达,表格约定使用下述注释:

  • ✔️表示支持。

  • ❌表示不支持。

  • ➖表示不涉及。

可观测性能力

Redis

阿里云Redis开源版

Tair(企业版)

指标

性能指标

✔️

✔️(更细化)

✔️(更细化)

日志

运行日志

✔️

✔️

✔️

慢日志

✔️

✔️

✔️

审计日志

✔️

✔️

时延洞察

✔️

✔️

链路追踪

分析能力

实时热Key分析

✔️

✔️

实时大Key分析

✔️

✔️

离线全量Key分析

✔️

✔️

实例诊断

✔️

✔️

说明

链路追踪通常需要对客户端进行改造或由中间件提供。

指标

Redis提供了丰富的统计指标,包含Memory(内存分配、内存使用、内存碎片率情况等), Stats(连接数、命令、网络、同步状态等)、CPU使用情况、Keyspace信息等。云数据库 Tair(兼容 Redis)结合用户的使用体验,在Redis的基础上增加了更细化的指标,例如读QPS、写QPS等,更多信息请参见查看性能指标

与此同时,云数据库 Tair(兼容 Redis)的指标可观测性能力还具备如下优势:

日志

云数据库 Tair(兼容 Redis)提供了查询运行日志、慢日志、审计日志、时延洞察等功能。

  • 运行日志(Redis log)

    按行输出Redis运行过程中的日志信息,记录运行过程中持久化、同步复制、报错信息以及代码中定义的调试记录等。

    在控制台目标实例详情页的日志管理 > 运行日志页签中,查看该实例的运行日志信息,更多信息请参见查询运行日志

  • 慢日志(Slowlog)

    记录Redis中执行时间(不含命令排队与网络传输时间)超过指定阈值的请求,慢日志信息包含执行时间戳、执行时长、命令参数、客户端信息等。您可以通过该功能第一时间查询耗时过长的命令列表,并进行相应优化,避免线上服务发生阻塞。

    在控制台目标实例详情页的日志管理 > 慢日志页签中,查看该实例的慢日志信息,更多信息请参见查询慢日志

  • 审计日志(Audit log)

    云数据库 Tair(兼容 Redis)基于日志服务SLS(Log Service),提供审计日志功能,每条审计日志包含日志类型、执行时长、DB序号、客户端IP、账户名、命令详细信息以及扩展信息等。基于该功能,为您提供在线查询、分析操作日志(包含敏感操作FLUSHALLFLUSHDBDEL等)、慢日志及运行日志等,并且支持导出。

    在控制台目标实例详情页的日志管理 > 审计日志页签中,查看该实例的审计日志信息,更多信息请参见审计日志

  • 时延洞察(Latency metric)

    时延洞察是云数据库 Tair(兼容 Redis)提供的升级版时延统计功能,支持记录多达27个事件及所有Redis命令的执行耗时,并支持保存最近3天内所有的时延统计数据。

    在控制台目标实例详情页的CloudDBA > 时延洞察页签中,查看该实例的时延信息,更多信息请参见时延洞察

分析能力

分析能力是基于指标、日志、链路追踪三大基础数据进行的信息聚合,是云数据库 Tair(兼容 Redis)重要的服务能力。

  • 热Key与大Key分析

    当某个Key接收的访问次数显著高于其它Key时,可以将其称为热Key(Hotkeys),若未能及时处理热Key可能会导致访问倾斜甚至缓存击穿等问题;当某个Key含有较多数据成员或者占用较大内存时,可以将其称为大Key(Big keys),若未能及时处理大Key会导致执行命令的耗时增加,严重时甚至引发内存溢出(Out Of Memory)。

    您可以通过云数据库 Tair(兼容 Redis)实时Top Key统计功能,帮助定位热Key与大Key,实时Top Key统计功能支持实时展示实例中的热Key和大Key信息,同时支持查看4天内大Key和热Key的历史信息。实时Top Key统计功能准确性高,且对性能几乎无影响,帮助您掌握Key在内存中的占用、Key的访问频次等信息,溯源分析问题,为您的优化操作提供数据支持。

    在控制台目标实例详情页的CloudDBA > 实时Top Key统计页签中,进行热Key与大Key分析,更多信息请参见实时Top Key统计

  • 离线全量Key分析

    离线全量Key分析功能支持全数据结构、全实例架构及Redis各个版本的离线RDB备份文件解析,对线上服务无影响。相比开源工具redis-rdb-tool的解析速度,离线全量Key分析在大小Key混合(占比1:9)的场景下实现4倍速度提升,在中大Key场景下实现20倍速度提升,同时保证进程内存占用固定维持在1 GB以内,避免大Key解析可能带来内存溢出的问题。离线全量Key分析还提供了最长子元素查询,方便进一步业务排查。

    在控制台目标实例详情页的CloudDBA > 离线全量Key分析页签中进行分析,更多信息请参见离线全量Key分析

  • 实例诊断

    云数据库 Tair(兼容 Redis)综合了性能指标、慢日志、key分析等能力,提供了一站式全链路的实例诊断功能,从性能水位、访问倾斜情况、慢日志等多方面评估实例的健康状况,并给出改善建议,极大程度地提高了Redis实例的自动化运维能力,降低使用成本。

    在控制台目标实例详情页的CloudDBA > 诊断报告页签中,进行实例诊断,更多信息请参见实例诊断