查找 Spanner Omni 数据库中的热点

本文档介绍了如何诊断 Spanner Omni 数据库中的热点(即 CPU 使用率高的查询)。诊断热点的流程与 Spanner 热点诊断基本相同,但有以下区别:

  • 您可以在 Grafana 中查看 Spanner Omni 系统分析洞见信息中心。如需详细了解如何设置此信息中心,请参阅设置 Grafana。

  • 您可以使用 Spanner Omni CLI 直接查询数据库,而无需前往 Google Cloud 控制台查询 SPANNER_SYS.* 表。例如,以下查询会显示数据库中过去 5 小时内 CPU 使用率最高的数据分块,并按 CPU 使用率对其进行排名:

    spanner sql \
    --database DATABASE_ID --execute \
    "SELECT * \
    FROM SPANNER_SYS.SPLIT_STATS_TOP_MINUTE \
    WHERE INTERVAL_END > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), \
    INTERVAL 5 HOUR) \
    ORDER BY CPU_USAGE_SCORE DESC"
    

    将 DATABASE_ID 替换为数据库标识符,例如 MY_DATABASE。

已知问题

  • 如果 Spanner Omni 部署的总计算容量低于每个服务器 3.5 个 vCPU,则 SPANNER_SYS.* 表中的拆分 CPU 使用率得分可能低于系统概览信息中心内的正确得分。信息中心会显示正确的分块 CPU 使用率得分,但您需要查询 SPANNER_SYS.* 表,才能确定与这些得分对应的分块。