C#でNESTクライアントを使用して、elasticsearchクラスタとやりとりしています。NESTでelasticsearchでソートするための解析されていないテキストキーワードを追加するには?
私は文字列値に基づいてソートしようとしています。しかし、thisによると、フィールドはテキストフィールドなので、私はそれを行うことはできません。
私はキーワードフィールドを追加して、より良いパフォーマンスを得るためにそれに基づいてソートしたいと考えています。このような何か:
{
"mappings": {
"my_type": {
"properties": {
"my_field": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword"
}
}
}
}
}
}
}
しかし、私は最高のNESTクライアントにそれを変換する方法と、その後my_field.keyword
に基づいてソートするかどうかはわかりません。
私はこれを私のマッピングとして持っていますが、ソートの句がどのように見えるかわからないので、私はそれをテストする方法がわかりません。
.Mappings(m => m
.Map<Product>(mm => mm
.Properties(p => p
.Text(t => t
.Name(n => n.ProductName)
.Analyzer("custom")
.Fields(f => f
.Keyword(k => k)
)
)
)
)
)
私はNESTのドキュメントを掘り下げようとしてきましたが、このエッジ機能はさらに難しくなっています。マルチフィールドのサブ -fieldを参照する
'string'プロパティを複数のフィールドとアナライザでマッピングする:https://www.elastic.co/guide/en/elasticsearch/client/net-api/current/multi-fields.html '.Suffix(" ")'を使用してソートを参照してください –
ありがとう!それは仕事を終えた。これを回答として投稿すると、正しいとマークします。Russ –