查找 Spanner Omni 数据库中的热点

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

  • Spanner Omni 系统分析洞见信息中心可在 Grafana 中使用。如需详细了解如何设置此信息中心,请参阅 设置 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.* 表,以确定与这些得分对应的分块。