Performance Advisor では、未使用のインデックス、冗長なインデックス、および非表示のインデックスを削除して、書込みパフォーマンスを向上させ、ストレージ容量を増やすことを提案しています。
Tip
不要なインデックスの影響の詳細については、「 不要なインデックスの排除 」を参照してください。
未使用のインデックス
クエリをサポートしていない場合、インデックスは使用されません。
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を使用してインデックスを非表示および再表示するには、Atlas インデックスの管理を参照してください。
Performance Advisor では常に非表示のインデックスを削除することを推奨します。 非表示インデックスが不要と判断した場合は削除します。
注意
Atlas Performance Advisor ページでは、ページを読み込むと、最もアクティブな名前空間の上位20の非表示インデックスが表示されます。 20を超える名前空間がある場合、Performance Advisor ページに非表示のインデックスを持つ名前空間がすべて表示されない可能性があります。
インデックスの削除または非表示
Performance Advisor を使用してインデックスを削除または非表示にするには、次の手順に従います。
Atlas で、プロジェクトの Clusters ページに移動します。
まだ表示されていない場合は、希望するプロジェクトを含む組織を選択しますナビゲーション バーのOrganizationsメニュー
まだ表示されていない場合は、ナビゲーション バーのProjectsメニューから目的のプロジェクトを選択します。
サイドバーで、 Database見出しの下のClustersをクリックします。
[ Clusters (クラスター) ] ページが表示されます。
削除または非表示にするインデックスで、Drop Index をクリックします。
Performance Advisor には、そのインデックスを削除するためのAtlas UIとコピー可能なMongoDB Shellコマンドへのリンクを含むダイアログボックスが表示されます。
ダイアログ ボックスには、そのインデックスを非表示にするためのコピー可能なMongoDB Shell コマンドも用意されています。
Atlas UI または MongoDB Shell を使用して、インデックスを削除または非表示にします。
Atlas UIを使用してインデックスを削除または非表示にするには、 Indexesタブをクリックし、インデックスの横にある Drop Index または Hide Index アイコンをクリックします。Atlas に、選択を確認するダイアログボックスが表示されます。詳細については、「Atlas インデックスの管理」を参照してください。
MongoDB Shell を使用してインデックスを削除または非表示にするには、Performance Advisor が提供する コマンドを貼り付けて実行します。