我知道这个问题被问了好几次,但就我的搜索技巧而言,每篇文章都是如何在 SQL 数据库中实现这个问题,而没有提到 NoSQL 数据库。
我有想要实现标记功能的文档。
用户将能够用他们想要的任何字符串标记它们,然后我需要能够尽可能快地查询文档(通过这些通用标签)
我是否应该为我的标签提供一个String
数组(这将允许我支持任意数量的标签),像这样
{"_id":"aaa", "prop":"value", "tags":["tag1","tag2","tagN"]}
或将标签的数量限制为 5 个,并将它们作为不同的属性,像这样
{"_id":"aaa", "prop":"value", "tag1":"value", "tag2":"value", "tag3":"value" }
哪种结构更适合快速查询,特别是在 mongodb 中?
使用第二种结构可以让我按此字段索引集合,但是否推荐使用 5 个索引?我应该有更少的标签吗?