将索引顾问与 Query Insights 搭配使用

本页面介绍如何将 Cloud SQL for PostgreSQL 索引顾问与 Query Insights 搭配使用。

您可以将索引顾问与 Query Insights 搭配使用来查看索引顾问建议并创建建议索引来提高查询性能。如需详细了解索引顾问,请参阅索引顾问概览。如需了解如何使用索引顾问以表形式查看和查询建议,或是请求按需分析和报告,请参阅使用索引顾问

准备工作

  1. 设置 Gemini
  2. 如需使用 Query Insights,您需要特定 IAM 权限。创建自定义角色并向其中添加 cloudtrace.traces.get IAM 权限。然后,将此角色添加到需要使用 Query Insights 的每个用户账号。

  3. 如需查看查询计划及其端到端视图,您的 Google Cloud 项目必须启用 Trace API。此设置可让您的 Google Cloud 项目接收来自已经过身份验证的来源的跟踪记录数据,而无需额外付费。此数据可帮助您检测和诊断实例中的性能问题。

    如需确认已启用 Trace API,请按照以下步骤操作:

    1. 在 Google Cloud 控制台中,转到 API 和服务

      转到“API 和服务”

    2. 点击启用 API 和服务
    3. 在搜索栏中,输入 Trace API
    4. 如果系统显示 API 已启用,则表示此 API 已启用,您无需执行任何操作。否则,请点击启用

启用索引顾问建议

如需启用索引顾问建议,请将 cloudsql.enable_index_advisor 标志添加到 Cloud SQL for PostgreSQL 实例。如需详细了解如何向实例添加标志,请参阅配置数据库标志

查看和过滤索引顾问建议

  1. 在 Google Cloud 控制台中,转到 Cloud SQL 实例页面。

    转到“Cloud SQL 实例”

  2. 如需打开实例的概览页面,请点击实例名称。
  3. 点击 Query Insights。索引顾问建议会显示在热门查询和标记部分的建议列中。
  4. (可选)如需仅查看具有 CREATE INDEX 建议的查询,请为建议:创建索引添加过滤条件。

查看针对查询的建议

如需查看针对特定查询的索引建议的详细信息,请按照以下步骤操作:

  1. 在 Google Cloud 控制台中,转到 Cloud SQL 实例页面。

    转到“Cloud SQL 实例”

  2. 如需打开实例的概览页面,请点击实例名称。
  3. 点击 Query Insights
  4. 热门查询和标记部分中,点击查询
  5. 如需了解有关查询的建议详细信息,请执行以下操作之一:
    • 点击某个查询以详细了解针对所选查询的建议,包括以下信息:
      • 性能影响(高、中、低):创建所有建议索引后的估算查询速度。
      • 建议:创建索引建议。
      • 受影响的表:创建索引时将受到影响的表的数量。
      • 所需的额外估算存储空间:创建所有建议索引所需的估算存储空间大小。
      • 受影响的查询数量:工作负载中受索引建议影响的查询总数。一个索引可能使多个查询受益。
    • 针对特定查询点击创建索引以了解有关创建索引以提高查询性能的详细建议。

查看受影响的查询

  1. 在 Google Cloud 控制台中,转到 Cloud SQL 实例页面。

    转到“Cloud SQL 实例”

  2. 如需打开实例的概览页面,请点击实例名称。
  3. 点击 Query Insights
  4. 主要维度(按数据库负载)表中,点击查询
  5. 针对特定查询点击创建索引
  6. 点击显示受影响的查询
  7. 点击某个查询即可详细了解受影响的查询。
  1. 在 Google Cloud 控制台中,转到 Cloud SQL 实例页面。

    转到“Cloud SQL 实例”

  2. 如需打开实例的概览页面,请点击实例名称。
  3. 点击 Query Insights
  4. 主要维度(按数据库负载)表中,点击查询
  5. 针对特定查询点击创建索引
  6. 点击复制所有索引命令。系统会将 CREATE INDEX 命令复制到剪贴板。
  7. 通过命令行连接到主实例。
  8. 如需创建建议索引,请运行复制到剪贴板的命令,例如:

    CREATE INDEX ON "public"."demo_order" ("customer_id");
    

后续步骤