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

使用系统分析洞见信息中心和内置统计信息表来识别导致 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. 在系统数据分析信息中心内,查看以下方面的延迟时间图表:

    • 请求延迟时间(P50、P90、P99)

    • 交易延迟时间(P50、P90、P99)

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

检查是否存在锁争用问题

如需检查延迟时间较长是否是由锁争用导致的,请使用系统数据分析信息中心内提供的锁定等待时间指标。

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

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

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

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

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

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

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

识别竞争事务

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

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

后续步骤