![](/img/trans.png)
[英]How can I specify index / field analyzers using NEST fluent mapping for ElasticSearch 5.x?
[英]How can I change the index of a NEST (ElasticSearch) scroll request?
对于每种文档类型,我们都有两个索引,即草稿索引和已发布索引。 通常,设置我们要使用的索引很容易,但是我看不到如何使用滚动API。
初始请求可以。
var query = new SearchDescriptor<MyDoc>()
.Index(MyDoc.DraftIndexName) <-- we can switch them here
// Or .Index(MyDoc.PublishedIndexName)
.Size(pageSize)
.Query(q =>
...
))
.Scroll("2m");
但是当我想获得下一页时
var request = new ScrollDescriptor<MyDoc>()
.ScrollId(scrollId)
.Scroll(new Time("2m"));
// Nowhere to set the index
var scrollResponse = await client.ScrollAsync<EsPerson>(request);
我假设它将始终通过推断使用默认索引,即草稿。
滚动开始是通过对搜索API的请求而发起的,搜索API在响应中返回滚动ID。 之后,来自响应的滚动ID会传递给滚动API,以继续滚动所有文档,重复直到不再返回任何文档。 所有后续滚动API调用将使用初始API调用的配置,包括目标索引。
如果滚动被视为类似于服务器端游标,则初始请求定义了滚动参数,因此能够在mid-scroll中更改这些参数没有多大意义。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.