我正在使用 Apache Solr 对我的 mongo 数据库进行索引和搜索。当我在 Solr 中索引一个实体时,我只保存该实体的 ID,以便我可以从 mongo 检索完整结果。问题是因为我只保存 ID,我不知道该 ID 在哪个集合中。所以,这就是我正在考虑的内容,并且输入任何这些选项都会很棒(或其他选项我没想到)
是否可以在所有集合中搜索以通过其 ID 找到适当的实体?
- 如果这是可能的,它是否容易变得缓慢/效率低下?
由于上述方法对我来说似乎不是很好,是否可以创建一个复合索引,用于在适当的集合中查找适当的实体?
连同 ID,将集合的名称保存在 Solr 中,并将其与搜索结果一起返回
- 虽然从效率的角度来看这似乎是最好的,但如果/当我需要更改集合的名称或添加新集合的名称时,我似乎可能会给自己制造问题
编辑: 我使用 mongo 的本机 ObjectId 作为 ID,因此 ID 在所有集合中应该是唯一的