私はMongoDBで初心者ですので、私の質問は簡単かもしれません...ユーザーに自分のアドレス帳をアップロードさせたいと思います。 追加することが効率的になります - ドキュメントは、私が 私の質問があるmongodbでインデックスを頻繁に更新するコレクションの効率性
{"contacts.phoneNumber":"+14129123456"}
すなわち、相互の連絡先とuseresを見つけるために電話番号による検索を実行したいと考え、以下の構造 {
"_id" : "56f29ecc2a00001800dbdf54",
"contacts" : [
{
"name" : "John",
"phoneNumber" : [
"+18144040000"
]
},
{
"name" : "Andrew ",
"phoneNumber" : [
"+14129123456"
]
}
]
}
を持っていますユーザーが頻繁にあちこちに自分のアドレス帳を更新するという事実を考慮すると、このインデックス
db.addresses.createIndex({ "contacts.phoneNumber": 1 }, { unique: false }, {background: true})
現在のデータを上書きする、または新しいデータを挿入する電話機。このアップロードは、連絡先の配列がそれぞれ電話番号の配列を保持する単一のドキュメントです。 各アップロード/更新には数百/数千のレコードが含まれますか?
あなたの非機能要件によって異なります。アップロードプロセスは、オンラインのプロセスまたはバッチプロセスと同期していますか?アップロードには1000件のドキュメントがあると述べていますか? – notionquest
@notionquestそれを指摘してくれてありがとう、私はちょうどその点を精緻化する私の質問を編集しました。各ユーザーには1つの文書があります。 – igx