gpt4 book ai didi

elasticsearch - 使用 NEST 和属性映射在 ElasticSearch 中设置路由

转载 作者:行者123 更新时间:2023-11-29 02:56:25 24 4
gpt4 key购买 nike

我正在尝试使用 Attribute based mapping 设置我的映射

我需要设置路由,使其成为必需的并设置为我正在索引的对象的特定属性。

这可能吗?有人做到了吗?

最佳答案

首先,您需要在创建索引时创建所需的路由,如下所示:

client.CreateIndex("my-index",
d => d
.Mappings(mapping => mapping
.Map<MyObject>(map => map
.RoutingField(routing => routing
.Required(true))
.AutoMap()
)
));

其次,您需要在索引文档时添加路由值,如下所示:

var result = client.Index<MyObject>(
myObject,
selector => selector
.Id(myObject.ObjectId)/*to avoid "random" ids*/
.Routing(routingValue)); //or in your case, myObject.MySpecialProperty

最后,您需要在进行搜索时指定路由值。

client.Search<MyObject>(query => query.Query(q => q.MatchAll()).Routing(routingValue));

使用 NEST v2.4

关于elasticsearch - 使用 NEST 和属性映射在 ElasticSearch 中设置路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25933235/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com