ドロップインデックスの推奨事項を確認する
Performance Advisor では、未使用のインデックス、冗長なインデックス、および非表示のインデックスを削除して、書込みパフォーマンスを向上させ、ストレージ容量を増やすことを提案しています。
未使用のインデックス
クエリをサポートしていない場合、インデックスは使用されません。
Performance Advisor では、インデックスが作成されるか、サーバーが再起動されてから 7 日以上クエリをサポートしていない場合、そのインデックスには未使用というフラグが付けられます。
注意
Performance Advisor は、未使用のインデックスの最もアクティブなコレクション 20 件のみを検査します。
Redundant Indexes
インデックスは、別のインデックスが可能性のあるクエリをサポートしている場合、冗長です。
Performance Advisor は、同じコレクション内の別のインデックスのプレフィックスと一致する場合、そのインデックスに冗長フラグを付けます。
例
コレクションにインデックスが含まれている場合、次のようになります。
{ a: 1 }
{ b: -1 }
{ a: 1, b: -1 }
{ a: 1 }
はプレフィックス{ a: 1, b: -1 }
と一致するため冗長です。
{ b: -1 }
はどのプレフィックスにも一致しないため、冗長ではありません。
Performance Advisor では、冗長インデックスは赤色のRedundant
バッジでマークされます。 Performance Advisor は、各冗長インデックスの下に、それをカバーする関連インデックスを表示します。
注意
冗長なインデックスを安全に削除できることを確認するために、関連インデックスが表示されます。 関連インデックスは削除には推奨されません。
Hidden Indexes
Atlas は クエリをサポートするために非表示インデックスを使用することはありません。 これらは引き続き書込みパフォーマンスに影響を与え、ストレージ容量を消費します。 詳細については、「 非表示のインデックス 」を参照してください。
インデックスを削除する前に、削除の影響を判断できるように インデックスを非表示 にできます。 インデックスを再表示する時間も、削除されたインデックスを再構築するよりも短くなります。 Atlas UI を使用してインデックスを非表示および再表示するには、「 インデックスの作成、表示、削除、および非表示 」を参照してください。
Performance Advisor では常に非表示のインデックスを削除することを推奨します。 非表示インデックスが不要と判断した場合は削除します。
注意
Atlas Performance Advisor ページでは、ページを読み込むと、最もアクティブな名前空間の上位20の非表示インデックスが表示されます。 20を超える名前空間がある場合、Performance Advisor ページに非表示のインデックスを持つ名前空間がすべて表示されない可能性があります。
インデックスの削除または非表示
注意
インデックスを削除する前に非表示にすることを検討してください。 Atlas は MongoDB バージョン5.0以上の非表示インデックスをサポートしています。
Performance Advisor を使用してインデックスを削除または非表示にするには、次の手順に従います。
削除または非表示にするインデックスで、[ ]Drop Index をクリックします。
Performance Advisor には、そのインデックスを削除するためのAtlas UIとコピー可能なMongoDB Shellコマンドへのリンクを含むダイアログボックスが表示されます。
MongoDB 5.0 以降では、 ダイアログ ボックスには、そのインデックスを非表示にするコピー可能な MongoDB Shell コマンドも用意されています。
Atlas UI または MongoDB Shell を使用して、インデックスを削除または非表示にします。
Atlas UI を使用してインデックスを削除または非表示にするには、 Indexesタブをクリックし、インデックスの横にあるDrop IndexまたはHide Indexアイコンをクリックします。 Atlas に、選択を確認するダイアログボックスが表示されます。 詳細については、「インデックスの作成、表示、削除、非表示 」を参照してください。
MongoDB Shell を使用してインデックスを削除または非表示にするには、Performance Advisor が提供する コマンドを貼り付けて実行します。