使用 Spanner 索引顾问

本页面介绍了 Spanner 索引顾问,以及如何查看和应用其索引建议。索引顾问适用于 GoogleSQL 方言数据库和 PostgreSQL 方言数据库。

Spanner 索引顾问会分析您的查询,以推荐可提高查询性能的新索引或更改后的索引。您可以在 Google Cloud 控制台中使用以下任一方法查看索引顾问的建议:

如需查看 CREATE INDEXALTER INDEX 建议,您可以使用 Google Cloud 控制台。

如需详细了解 Spanner 索引,请参阅二级索引

限制

Spanner 索引顾问存在以下限制:

  • 仅提供 CREATE INDEXALTER INDEX 建议。不提供针对现有索引的 DROP INDEX 建议。

  • 只有在索引建议能带来显著的性能优势时,系统才会显示该建议。

  • 如果您是精细访问权限控制用户,或者您没有 DDL 访问权限,则无法执行索引建议 DDL 语句。您可以复制并保存建议。

使用查询执行计划

如需查看并应用查询执行计划中的索引顾问建议,请按以下步骤操作。

查看建议

如需查看查询执行计划,请在 Google Cloud 控制台中运行查询:

  1. 前往Google Cloud 控制台中的 Spanner 实例页面。

    转到实例

  2. 选择包含您要查询的数据库的实例。

  3. 选择要查询的数据库的名称。

  4. 在导航菜单中,点击 Spanner Studio

  5. 打开新的 SQL 编辑器标签页。

  6. 在编辑器窗格中,输入 SQL 查询。

  7. 点击运行

  8. 查询运行完毕后,如需查看查询执行计划,请点击说明标签页。

    信息面板会显示有关查询的详细信息。如果 Spanner 确定新索引或更改后的索引可以提高查询性能,则系统会显示索引建议卡片。

  9. 如需查看索引建议 DDL 语句,请在索引建议卡片中点击查看详细信息以查看索引。

采纳建议

Spanner 索引建议会为建议的索引提供完整的 CREATE INDEXALTER INDEX DDL 语句。

如需应用索引顾问的建议,请完全按照所示将索引顾问的 DDL 语句复制到 Spanner Studio 编辑器中并运行。

  1. 索引建议窗格中,选中要复制的 DDL 语句旁边的复选框。

  2. 点击复制到新标签页

  3. 在新 Spanner Studio 编辑器标签页中,运行复制的 DDL 语句。

使用 Query Insights 信息中心

如需在 Query Insights 信息中心内查看和应用索引顾问建议,请按照以下步骤操作。

查看建议

  1. 前往Google Cloud 控制台中的 Spanner 实例页面。

    转到实例

  2. 选择包含您要查询的数据库的实例的名称。

  3. 选择要查询的数据库的名称。

  4. 在导航菜单中,点击 Query Insights

  5. 查看排名前 N 的查询和标记表。

    下表显示了建议列。如果 Spanner 确定新索引或更改后的索引可以提高查询性能,则系统会显示索引建议。如需查看索引建议在 Google Cloud 控制台中是什么样子,请参阅识别可能存在问题的查询或请求标记

  6. 如需查看索引建议 DDL 语句,请点击索引建议

采纳建议

Spanner 索引建议会为建议的索引提供完整的 CREATE INDEXALTER INDEX DDL 语句。

如需应用索引顾问的建议,请完全按照所示将索引顾问的 DDL 语句复制到 Spanner Studio 编辑器中并运行。

  1. 索引建议窗格中,选择要复制的 DDL 语句。

    Spanner 会每 12 小时为前 12 小时内执行的 TopN 查询生成建议。索引建议窗格会显示上次刷新时间的记录。

    索引建议的视图。

  2. 点击复制到 Spanner Studio。Google Cloud 控制台会显示 Spanner Studio 编辑器。

    如果您是精细访问权限控制用户,则不会看到复制到 Spanner Studio 按钮,并且无法运行 DDL 语句。

  3. 在 Spanner Studio 编辑器中,运行复制的 DDL 语句。

后续步骤