この質問が何度か聞かれたことは知っていますが、私の検索スキルに関する限り、すべての投稿はこれをSQLデータベースに実装する方法であり、NoSQLデータベースについては言及されていません。
タグ付け機能を実装したいドキュメントがあります。
ユーザーは好きな文字列でタグを付けることができます。次に、(これらの汎用タグを使用して)できるだけ速くドキュメントをクエリできるようにする必要があります。
String
このように、タグの配列(任意の数のタグをサポートできるようにする)が必要ですか?
{"_id":"aaa", "prop":"value", "tags":["tag1","tag2","tagN"]}
または、タグの数をたとえば5に制限し、次のように異なるプロパティとしてタグを付けます。
{"_id":"aaa", "prop":"value", "tag1":"value", "tag2":"value", "tag3":"value" }
特にmongodbでの高速クエリには、どの構造が適していますか?
2番目の構造を使用すると、このフィールドでコレクションにインデックスを付けることができますが、5つのインデックスをお勧めしますか?タグを少なくする必要がありますか?