使用
更好吗?......如果你想的话:
我正在使用弹性搜索,因此我使用的是Lucene。
答案 0 :(得分:5)
在弹性搜索中,我认为根据您的信息,我会使用1个索引。我的理解是用户只搜索自己的文档,文档似乎相对类似。
效果 - 搜索时,您可以使用Filtered Query过滤仅与用户匹配的文档。用户ID过滤器可以缓存,而且速度很快。
可扩展 - 在Elasticsearch中,您可以在索引级别控制分片和复制。 Elasticsearch可以处理大量索引,我只是认为配置适当的分片和复制对整个索引都很有价值。
在单个索引中,您仍然可以轻松地删除数据(请参阅delete by query),除非您查询错误,否则应该很少关注其他数据。使用该过滤器的过滤查询只会导致与用户ID相关联的查询非常简单。类似于每个用户搜索不同索引的复杂性。
您的确切需求可能更适合不同的方法。根据我到目前为止,我会选择一个索引。