IMPORTANT: No additional bug fixes or documentation updates
will be released for this version. For the latest information, see the
current release documentation.
Rank Feature Query Usage
editRank Feature Query Usage
editThe rank_feature query is a specialized query that only works on rank_feature
fields and rank_features
fields.
Its goal is to boost the score of documents based on the values of numeric features. It is typically put in a should clause of a bool query
so that its score is added to the score of the query.
Compared to using function_score
or other ways to modify the score, this query has the benefit of being able to efficiently
skip non-competitive hits when track_total_hits is not set to true. Speedups may be spectacular.
See the Elasticsearch documentation on rank feature query for more details.
Fluent DSL example
editq .RankFeature(rf => rf .Name("named_query") .Boost(1.1) .Field(f => f.Rank) .Saturation() )
Object Initializer syntax example
editnew RankFeatureQuery() { Name = "named_query", Boost = 1.1, Field = Infer.Field<Project>(f => f.Rank), Function = new RankFeatureSaturationFunction() }
Example json output.
{ "rank_feature": { "_name": "named_query", "boost": 1.1, "field": "rank", "saturation": {} } }
Fluent DSL example
editq .RankFeature(rf => rf .Name("named_query") .Boost(1.1) .Field(f => f.Rank) )
Object Initializer syntax example
editnew RankFeatureQuery { Name = "named_query", Boost = 1.1, Field = Infer.Field<Project>(f => f.Rank), }
Example json output.
{ "rank_feature": { "_name": "named_query", "boost": 1.1, "field": "rank" } }
Fluent DSL example
editq .RankFeature(rf => rf .Name("named_query") .Boost(1.1) .Field(f => f.Rank) .Linear())
Object Initializer syntax example
editnew RankFeatureQuery { Name = "named_query", Boost = 1.1, Field = Infer.Field<Project>(f => f.Rank), Function = new RankFeatureLinearFunction() }
Example json output.
{ "rank_feature": { "_name": "named_query", "boost": 1.1, "field": "rank", "linear": {} } }