[解決済み] Mongodb: ensureIndex をいつ呼び出すか?
2022-02-08 05:37:28
質問
ensureIndexはいつ呼び出すべきですか?1つのレコードを挿入する前、1つのレコードを挿入した後、またはfind()を呼び出す前ですか?
ありがとうございます。
ジョニー
解決方法は?
私のコメントが少し誤解されているようなので、はっきりさせておきます。をいつ呼ぶかはあまり重要ではありません。 を初めて呼び出す前のある時点で呼び出されていればよいのです。 言い換えれば、インデックスを作成するタイミングは、それを使用することを想定する前にあれば、あまり重要ではありません。
よく見かけるパターンとしては
ensureIndex
と同時に(同じ場所に)配置されます。
find()
を呼び出します。
ensureIndex
はインデックスが存在するかどうかをチェックし、 存在しない場合は作成します。find() を呼び出す前に ensureindex を呼び出すと、 (非常に小さいとはいえ) 間違いなくオーバーヘッドが発生するので、 これを行わない方が望ましいでしょう。
私は
ensureIndex
は、デプロイを簡略化し、データベースとコードベースを別々に管理する必要がないようにするためです。デプロイを簡単にするというトレードオフが、その後の ensureIndex の呼び出しの冗長性と釣り合っているのです(私にとってはね)。
関連
-
[解決済み】MongoError: 最初の接続でサーバー [localhost:27017] への接続に失敗しました。
-
[解決済み】SocketException: アドレスはすでに使用中です。
-
[解決済み】MongoDBシェルですべてのコレクションを一覧表示するには?
-
CentOS7に新規インストールしたMongodbの初期設定
-
[解決済み] MongoDBに "like "を使ってクエリを実行する方法
-
[解決済み] pandasを使った "大量データ "ワークフロー【終了しました
-
[解決済み] コマンドラインからMongoDBデータベースを削除する方法を教えてください。
-
[解決済み] MongoDBとその逆の上にCouchDBを使用するとき
-
[解決済み】MongoDBでデータのバージョニングを実装する方法
-
[解決済み】MongoDB: 1つのフィールドですべてのドキュメントを更新する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】SocketException: アドレスはすでに使用中です。
-
[解決済み] MongoDB - 管理者ユーザが認証されていない
-
[解決済み] Mongodb ホットフィックス KB2731284
-
[解決済み] MongoDB Compass フィルタ (クエリ)
-
[解決済み] 条件付きでMongoDBを更新する
-
[解決済み] mongodb Failed: error connecting to db server: no reachable servers
-
undefinedエラー: getaddrinfo ENOTFOUND localhost または MongoDB connected disconnected
-
[解決済み] MongoDBでフィールドが存在することを確認する
-
[解決済み] Mongo で "NOT IN" クエリを実行するにはどうすればいいのですか?
-
[解決済み】Node.jsでMongooseを使用してページングする方法は?