開いているテーブルとそのテーブル定義を管理する

このページでは、開いているテーブルと開いているテーブル定義の数が多いインスタンスを管理する方法について説明します。この Recommender は開いているテーブルの管理と呼ばれます。

この Recommender によって、次の指標が毎日分析されます。

  • インスタンスの開いているテーブルまたは開いているテーブル定義の数。
    • 開いているテーブルの数または開いているテーブルの定義が直近の 24 時間に 2 秒ごとに 1 つ以上の速さで増加している場合。
    • 開いているテーブルまたは開いているテーブル定義の数が、それぞれ table_open_cache と table_definition_cache の値以上である場合。いずれかが true の場合、Recommender からは table_open_cache または table_definition_cache の値を増やすよう推奨されます。

table_open_cache と table_definition_cache の値を増やす方法について詳しくは、テーブルの上限をご覧ください。

料金

開いているテーブルの管理の Recommender は、標準の Recommender の料金ティアに含まれています。

始める前に

Recommender API を有効にします。

必要なロールと権限

分析情報と推奨事項を表示して操作するための権限を取得するには、必要な Identity and Access Management(IAM)ロールが付与されていることを確認してください。

タスク ロール
推奨事項を表示する recommender.cloudsqlViewer または cloudsql.admin
推奨事項を適用する cloudsql.editor または cloudsql.admin
IAM ロールの詳細については、IAM の基本ロールと事前定義ロールのリファレンスとプロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。

推奨事項を一覧取得する

推奨事項を一覧取得する手順は次のとおりです。

コンソール

インスタンスのパフォーマンスに関する推奨事項を一覧表示する手順は次のとおりです。

  1. Cloud SQL の [インスタンス] ページに移動します。

Cloud SQL の [インスタンス] に移動

  1. [問題を調査し、推奨事項に従い対策を行うことで、インスタンスの健全性を向上させます] バナーで、[詳細を表示] をクリックします。

または、次の方法を行います。

  1. [Active Assist] に移動します。おすすめハブで推奨事項を探して適用するもご覧ください。

    Active Assist に移動

  2. [すべての推奨事項] カードで [パフォーマンス] をクリックします。

gcloud

次のように gcloud recommender recommendations list コマンドを実行します。

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

次のように置き換えます。

  • 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=INSIGHT_SUBTYPE

次のように置き換えます。

  • PROJECT_ID: プロジェクト ID
  • LOCATION: インスタンスが配置されているリージョン(us-central1 など)
  • INSIGHT_SUBTYPE: このパラメータを次のいずれかに設定します。
    • MYSQL_HIGH_NUMBER_OF_OPEN_TABLES: インスタンスの開いているテーブルの数に関する分析情報を表示する
    • MYSQL_HIGH_NUMBER_OF_OPEN_TABLE_DEFINITIONS: インスタンスの開いているテーブル定義の数に関する分析情報を表示する

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)

推奨事項を適用する

この推奨事項を適用するには、次のいずれかを行います。

  • 開いているテーブルの数が多い場合は、推奨事項が表示されなくなるまで table_open_cache の値を 1,000 ずつ増やすか、使用率がピークのときの open_tables の値を確認し、table_open_cache の値を open_tables の値より大きくします。

  • 開いているテーブル定義の数が多い場合は、推奨事項が表示されなくなるまで table_definition_cache の値を 500 ずつ増やすか、使用率がピークのときの open_table_definitions の値を確認し、table_definition_cache の値を open_table_definitions の値より大きくします。

この推奨事項は毎日更新されるため、table_open_cache または table_definition_cache の値を増やした後、24 時間経過してから再び確認してください。table_open_cache と table_definition_cache の値を増やす方法について詳しくは、テーブルの上限をご覧ください。

次のステップ