Description
Expressions are geared at defining an alternative ranking function (e.g. incorporating the text relevance score and other field values/ranking
signals). So they are conceptually much more like ElasticSearch's scripting support (http://www.elasticsearch.org/guide/reference/modules/scripting/) than solr's function queries.
Some additional notes:
- In addition to referring to other fields, they can also refer to other expressions, so they can be used as "computed fields".
- You can rank documents easily by multiple expressions (its a SortField at the end), e.g. Sort by year descending, then some function of score price and time ascending.
- The provided javascript expression syntax is much more efficient than using a scripting engine, because it does not have dynamic typing (compiles to .class files that work on doubles). Performance is similar to writing a custom FieldComparator yourself, but much easier to do.
- We have solr integration to contribute in the future, but this is just the standalone lucene part as a start. Since lucene has no schema, it includes an implementation of Bindings (SimpleBindings) that maps variable names to SortField's or other expressions.
Attachments
Attachments
Issue Links
- is related to
-
SOLR-5707 Lucene Expressions in Solr
- Open