メモリ使用量が多いクエリを最適化する

このページでは、メモリ使用量が多いクエリを報告する Cloud SQL 高メモリクエリ最適化 Recommender について説明します。

この Recommender は、過去 24 時間以内にメモリ不足エラーを防ぐために終了したクエリのテキストを正規化して報告します。その後、そのようなインスタンスを最適化してパフォーマンスを改善する方法に関する推奨事項が提示されます。推奨事項は毎日生成されます。

料金

Cloud SQL 高メモリクエリ最適化の Recommender は、Recommender の料金のスタンダード ティアに含まれます。

始める前に

推奨事項と分析情報を表示するには、事前に次の操作を行う必要があります。

メモリ使用量が多いクエリを最適化するための推奨事項を一覧取得する

メモリ使用量が多いクエリを最適化するための推奨事項を一覧取得するには、Google Cloud コンソール、gcloud CLI、または Recommender API を使用します。

コンソール

インスタンスのパフォーマンスに関する推奨事項を一覧取得するには、

Google Cloud コンソールで、次の操作を行います。

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

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

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

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

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

    おすすめハブに移動

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

gcloud CLI

gcloud CLI を使用してメモリ使用量が多いクエリの最適化の推奨事項を一覧取得するには、次のように gcloud recommender recommendations list コマンドを実行します。

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

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

  • PROJECT_ID: プロジェクト ID。
  • LOCATION: インスタンスが配置されているリージョン(us-central1 など)。

API

Recommendations 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 など)。

Recommender は終了したクエリがあるインスタンスを報告する場合、それらのインスタンスをテーブルに一覧表示します。各行には、インスタンス名、推奨事項の概要、現在のマシンタイプ、推奨マシンタイプ、ロケーション、最終更新日が表示されます。

分析情報と詳細な推奨事項を表示する

メモリ使用量の多いクエリを最適化するための分析情報と詳細な推奨事項を表示するには、Google Cloud コンソール、gcloud、Recommender API のいずれかを使用します。

コンソール

次のいずれかを行います。

  • [パフォーマンスに関する推奨事項] ページで、[パフォーマンスに関する推奨事項] カードをクリックし、[メモリ使用量が多いクエリを最適化] をクリックします。推奨事項のパネルが表示されます。このパネルには、インスタンスの分析情報と詳細な推奨事項が含まれています。

  • [インスタンス] ページで、[メモリ使用量が多いクエリを最適化] をクリックします。インスタンスのリストには、推奨事項が適用されるインスタンスのみが表示されます。

gcloud CLI

gcloud を使用して、メモリ使用量が多いクエリを最適化するための分析情報と詳細な推奨事項を表示するには、次のように gcloud recommender insights list コマンドを実行します。

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

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

  • PROJECT_ID: プロジェクト ID。
  • LOCATION: us-central1 などのリージョン。

API

Recommendations 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 などのリージョン。

推奨事項を適用する

推奨事項を慎重に評価し、以下のいずれかを行います。

  • 詳細については、メモリ使用量が多いインスタンスを最適化するをご覧ください。
  • 推奨事項を閉じて強調を解除し、グレー表示するには、[閉じる] をクリックします。
  • 推奨事項を適用または拒否せずにパネルを閉じるには、[キャンセル] をクリックします。

次のステップ