Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Docs Menu
Docs Home
/
IntelliJ Plugin

インデックス パフォーマンスの警告

MongoDB for IntelliJ プラグインは、アプリケーションクエリがインデックスを使用しているかどうかを調べます。クエリがインデックスを使用していない場合、 またはインデックスによって部分的にしかカバーされていない場合、プラグインはそのクエリに対して警告を表示します。

警告を解決するには、クエリのインデックスを作成することを検討してください。

インデックスを追加する前に、次の点を考慮してください。

  • クエリは、読み取りを高速化するために書込みパフォーマンスを低下させるのに十分な頻度で実行されます。

  • クエリを変更して、既存のインデックスを使用できます。

インデックスの警告を無効にすることもできます。

インデックスの詳細については、インデックスを参照してください。

次のJavaコード スニペットの例では、awardsドキュメントフィールドがクエリで使用されていますが、そのフィールドはデータベースでインデックスされていません。

client.getDatabase( "sample_mflix" ).getCollection( "movies" ).find(
Filters.ne( "awards", "Comedy" )
)

サイド パネルの Performance Warnings の下に次の警告が表示されます。

IntelliJ プラグイン のインデックス警告。

クエリのインデックスを作成するには

1

プラグインには、インデックスを作成するためのテンプレート コードを持つ Database Explorer Playgrounds 画面が表示されます。

// region Queries covered by this index
// alt.mongodb.javadriver.JavaDriverRepository#getRatings at line 32
// endregion
// Learn about creating an index: https://www.mongodb.com/ja-jp/docs/v7.0/core/data-model-operations/#indexes
db.getSiblingDB("sample_mflix").getCollection("movies")
.createIndex({ "awards": 1 })
2

例コードで <your_field_1>awards に設定し、Database Explorer Playgrounds 画面で createIndex() メソッドを実行します。(例: )。

db.getSiblingDB("sample_database").getCollection("movies").
createIndex({"awards": 1})
  • 警告を無効にする

  • Indexes

  • 運用上の要因とデータモデル

戻る

タイプ検証

項目一覧