我想将文档索引到特定的ElasticSearch分片。
我知道我可以配置ES以查看字段,并将其发送到基于该字段的特定分片。
我不想那样做。我只想说:
1)好的,我决定本周将所有文档导入Shard 1,因为我感觉很满意。
我知道有一种方法可以将查询发送到特定的分片,但是导入呢?
我怎样才能做到这一点?
最佳答案
如果要完全控制分片,则应使用每个具有单个分片的多个索引,而不要使用具有多个分片的单个索引。这样,您将能够决定数据将转到哪个索引(和分片,因为每个索引只有一个分片)。您还可以创建一个别名,将所有此类索引组合为一个别名,因此您不必担心在搜索过程中列出所有索引。
从性能的 Angular 来看,搜索具有10个分片的单个索引与搜索具有10个分片的每个索引之间几乎没有什么区别。在这两种情况下,您都将搜索10个分片。在这种情况下,您应该担心的一件事就是保持映射兼容。您可能不想在一个索引中将字段索引为字符串,而在另一个索引中将索引索引为整数。
关于lucene - 如何将文档索引到特定的ElasticSearch分片?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19738583/