リソースを大量に消費する Redis コマンドを使用している可能性があります。データの合計サイズまたはキーのサイズが増加すると、これらのコマンドの使用コストも増加します。コマンドを使用すると、次のパフォーマンスの問題が発生する可能性があります。
- レイテンシが高く、クライアントがタイムアウトする
- メモリ使用量を増やすコマンドが原因のメモリ不足
- Redis メインスレッドがブロックされているため、ノードのレプリケーションと同期中にデータ損失が発生する
- ヘルスチェック、オブザーバビリティ、レプリケーションの不足
これらのパフォーマンスの問題を解決するには、高コストのコマンドの健全性問題を使用します。この健全性問題にアクセスするには、データベース センターを使用します。これは、クラスタの健全性に関する問題を一元的に把握できる AI ダッシュボードです。
始める前に
高コストのコマンドの健全性問題の使用を開始する前に、このセクションの前提条件を満たしてください。
ロールと権限を割り当てる
データベース センターを使用して健全性に関する問題を表示して操作するには、データベース センターの IAM 権限が付与されている必要があります。これらの権限の取得の詳細については、IAM 権限を付与するをご覧ください。
また、IAM ロールの詳細については、IAM ロールと権限のインデックスとプロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
健全性の問題を表示する
高コストのコマンドの健全性に関する問題を表示する手順は次のとおりです。
Google Cloud コンソールで、データベース センターの [すべてのリソース] ページに移動します。
[商品] メニューを選択します。[Products] ダイアログで、次の操作を行います。
省略可: 商品が選択されている場合は、選択を解除します。
[Memorystore] ペインで、[Redis Cluster 7.0] を選択します。
[適用] をクリックします。
[問題] メニューを選択します。[問題] ダイアログで、次の操作を行います。
選択した問題をすべてクリアします。
[パフォーマンスと容量] ペインで、[高コストのコマンド] の健全性に関する問題を選択します。
[適用] をクリックします。データベース センター には、高コストのコマンドに関連するパフォーマンスの問題があるクラスタが表示されます。
クラスタの名前の横に表示されている問題をクリックします。[Expensive commands] の健全性に関する問題が別のペインで開きます。
問題がクラスタの横に表示されない場合は、クラスタにコストの高いコマンドを使用していません。
健全性の問題に関する詳細情報を表示するには、ペインの展開矢印(expand_more)をクリックします。
健全性の問題に対処する
高コストのコマンドに関する健全性問題を解決するには、高コストのコマンドを使用する代わりに、リソース効率の高いコマンドを使用します。たとえば、ファイルとリンクを削除する場合、コストの高い DEL コマンドの代わりに、リソース効率の高い UNLINK コマンドを使用できます。
また、Cloud Monitoring を使用して /cluster/cpu/maximum_utilization 指標とクライアントサイドのログを表示します。CPU 使用率が高い期間が、負荷の高いコマンドが実行された期間と一致するかどうかを確認します。