sql >> データベース >  >> NoSQL >> MongoDB

Mongodb:いつensureIndexを呼び出すのですか?

    私のコメントは少し誤解されているようですので、はっきりさせておきます。初めてfind()を呼び出す前のある時点で呼び出される限り、いつ呼び出すかは重要ではありません。 つまり、インデックスを作成するときに、使用する前にインデックスが存在する限り、インデックスを作成するかどうかは重要ではありません。

    私がよく目にする一般的なパターンは、ensureIndexのコーディングです。 find()と同時に(そして同じ場所で) 電話。 ensureIndex インデックスが存在するかどうかを確認し、存在しない場合は作成します。 find()を呼び出す前にensureindexを呼び出すことには、間違いなくある程度のオーバーヘッドがあります(非常に小さいですが)。したがって、これを行わないことが望ましいです。

    私はensureIndexを呼び出します デプロイメントを簡素化し、データベースとコードベースを別々に管理する必要をなくすためのコードで。デプロイメントの容易さのトレードオフは、ensureIndex(私にとって)への後続の呼び出しの冗長性のバランスを取ります。



    1. MongoDBの配列内のフィールドの合計を検索します

    2. データベースエラーMongoDB:データベースが消えました

    3. redisデータをMySQLに移動するためのより高速な方法

    4. MongodbfindがObjectidで機能していません