【发布时间】:2016-08-24 13:15:04
【问题描述】:
我想知道是否可以在批量请求的正文中(使用 NEST 或 ES JSON)设置所有文档的写入一致性,或者在每个文档的基础上设置?我的代码目前正在使用:
bulkDescriptor.Consistency(Consistency.All);
这会生成一个 JSON 请求,该请求使用 URI 中的参数设置写入一致性。问题是我的主机正在剥离 URI 末尾的查询字符串,因此删除了写一致性设置。我需要一种通过 JSON 请求正文设置写入一致性的方法。
【问题讨论】:
-
问题是为什么“我的主机正在剥离 URI 末尾的查询字符串”以及如何规避这个问题。
-
我正在使用 Amazon 的 ElasticSearch 实现。来自亚马逊的 ES SME 告诉我们情况就是这样。来自 SME:...请注意,我们忽略了 POST 请求的所有 URL 参数(它们被剥离以进行请求签名)。如果您确实想设置 write_consistency.all,则需要在 POST 正文中进行。
-
谢谢亚马逊!您最好建立自己的 EC2 主机并拥有一个真正的 ES 实例。精简后的 AWS ES 服务只会让您做更多的事情。
-
哎呀!只是为了澄清,是否不可能在批量请求的正文中设置写入一致性?
-
@Ben 您使用的是哪个版本的 NEST,您的目标是哪个版本的 Elasticsearch?
标签: elasticsearch nest