识别可能导致高延迟的事务

使用系统分析洞见信息中心和内置统计信息表来识别导致 Spanner Omni 中出现高延迟时间的事务。为了确保多个并发事务保持一致,Spanner Omni 使用锁定来控制对数据的访问。当许多事务需要频繁访问同一锁定时,就会发生锁争用,从而导致延迟时间较长。

如果 Spanner Omni 操作是读写事务的一部分,则会获取锁。 只读事务不会获取锁。

如需识别导致高延迟的事务,请按以下步骤操作:

  1. 使用系统数据分析检查延迟时间是否出现高峰

  2. 使用锁定等待时间指标确定是否存在锁争用问题

  3. 找出有问题的交易

准备工作

如果您尚未下载并安装 Spanner Omni 控制台,请先完成此操作。如需了解详情,请参阅 Spanner Omni 下载启动 Spanner Omni 控制台

使用系统数据分析检查延迟时间是否出现高峰

Spanner Omni 不使用 Cloud Monitoring。请改用 Spanner Omni 控制台或 Grafana 中的系统洞见信息中心。如需在 Spanner Omni 控制台中检查是否存在延迟高峰,请执行以下操作:

  1. 在 Spanner Omni 控制台中,点击导航窗格中的系统分析洞见

  2. 在系统数据分析信息中心内,检查延迟时间图表是否显示以下内容:

    • 请求延迟时间(P50P90P99

    • 交易延迟时间(P50P90P99

    在延迟时间图表中查看写入操作的第 99 百分位 (P99)。 如果您发现延迟时间出现高峰,但 CPU 利用率或错误并未出现相应的高峰,则延迟时间很可能是由于锁争用问题所致。

检查是否存在锁争用问题

如需检查高延迟是否是由锁争用导致的,请使用系统概览信息中心内提供的锁等待时间指标。

检查是否存在较长的锁定等待时间

在 Spanner Omni 控制台的“系统概览”信息中心内检查是否存在较长的锁定等待时间:

  1. 找到锁定等待时间图表,该图表以 5 分钟为间隔显示所选数据库的锁定冲突总锁定等待时间。

  2. 检查此指标是否显示出与您观察到的延迟时间峰值相关的增幅。

使用系统表分析锁定等待数据

确认锁定争用是导致高延迟的原因后,请使用系统统计信息表分析锁定等待数据,并确定导致争用的事务。您可以使用 Spanner Omni CLI查询 Spanner 文档中的统计信息表。

如需详细了解锁统计信息表,请参阅 Spanner 文档中的锁统计信息

识别竞争事务

如需找出导致高延迟时间的具体交易,请检查数据库的交易统计信息。重点关注平均延迟时间较长的交易。优化交易形状以缩短延迟时间。请考虑应用 Spanner 文档中推荐的实践来减少锁争用

如需详细了解事务统计信息表,请参阅 Spanner 文档中的事务统计信息

后续步骤