创建索引或重新配置联接设置

本页面介绍如何管理实例联接缓冲区中没有索引的联接数量。此 recommender 称为创建索引或重新配置联接设置

此 Recommender 会每天监控联接缓冲区中没有索引的联接数量。联接缓冲区是基于连接的内存缓冲区,用于在无法使用索引的联接操作期间存储数据。如果没有索引的联接总数超过每小时 500 个,则建议创建索引或增加 join_buffer_size 的值。

如需详细了解如何增加 join_buffer_size 的值,请参阅其他内存消耗

价格

创建索引或重新配置联接设置 Recommender 属于标准 Recommender 价格层级

准备工作

启用 Recommender API

所需的角色和权限

如需获得查看和使用数据分析和建议的权限,请确保您具有所需的 Identity and Access Management (IAM) 角色

任务 角色
查看建议 recommender.cloudsqlViewercloudsql.admin
采纳建议 cloudsql.editorcloudsql.admin
如需详细了解 IAM 角色,请参阅 IAM 基本角色和预定义角色参考文档以及管理对项目、文件夹和组织的访问权限

列出建议

如需列出建议,请按以下步骤操作:

控制台

如需列出有关实例性能的建议,请按照以下步骤操作:

  1. 转到 Cloud SQL 实例页面。

打开“Cloud SQL 实例”

  1. 调查问题并根据建议采取相应措施,从而改善实例健康状况横幅上,点击展开详细信息

或者,请按以下步骤操作:

  1. 转到 Recommendation Hub。另请参阅通过 Recommendation 查找和应用建议

    转到 Recommendation Hub

  2. 所有建议卡片中,点击性能

gcloud

运行 gcloud recommender recommendations list 命令,如下所示:

gcloud recommender recommendations list \
--project=PROJECT_ID \
--location=LOCATION \
--recommender=google.cloudsql.instance.PerformanceRecommender \
--filter=recommenderSubtype=MYSQL_CREATE_INDEX_OR_RECONFIG_JOIN_BUFFER

替换以下内容:

  • PROJECT_ID:您的项目 ID
  • LOCATION:实例所在的区域,例如 us-central1

API

调用 recommendations.list 方法,如下所示:

GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/recommenders/google.cloudsql.instance.PerformanceRecommender/recommendations

替换以下内容:

  • PROJECT_ID:您的项目 ID
  • LOCATION:实例所在的区域,例如 us-central1

查看数据分析和详细建议

如需查看数据分析和详细建议,请按以下步骤操作:

控制台

执行下列其中一项操作:

  • 性能建议页面上,点击性能建议卡片,然后点击创建索引或重新配置联接设置。系统会显示建议面板,其中包含实例的分析洞见和详细建议。

  • 实例页面上,点击创建索引或重新配置联接设置。实例列表仅显示建议适用的实例。

gcloud

运行 gcloud recommender insights list 命令,如下所示:


gcloud recommender insights list \
--project=PROJECT_ID \
--location=LOCATION \
--insight-type=google.cloudsql.instance.PerformanceInsight \
--filter=insightSubtype=MYSQL_HIGH_JOINS_WITHOUT_INDEXES

替换以下内容:

  • PROJECT_ID:您的项目 ID
  • LOCATION:实例所在的区域,例如 us-central1

API

调用 insights.list 方法,如下所示:


GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/insightTypes/google.cloudsql.instance.PerformanceInsight/insights

替换以下内容:

  • PROJECT_ID:您的项目 ID
  • LOCATION:实例所在的区域,例如 us-central1

应用建议

如需实施此建议,请执行以下操作:

  • 在实例中创建适当的索引,以防止出现大量没有索引的联接。

  • 如果您无法为联接创建索引,请增加 join_buffer_size 的值,直到建议消失。联接缓冲区可以按会话增加,也可以在全局范围内增加。我们建议您在具有大量联接的会话中增加联接缓冲区。

    如需详细了解如何增加 join_buffer_size 的值,请参阅其他内存消耗

后续步骤