mirror of
https://github.com/honeymoose/OpenSearch.git
synced 2025-03-31 20:38:40 +00:00
This change removes the `postings` highlighter. This highlighter has been removed from Lucene master (7.x) because it behaves exactly like the `unified` highlighter when index_options is set to `offsets`: https://issues.apache.org/jira/browse/LUCENE-7815 It also makes the `unified` highlighter the default choice for highlighting a field (if `type` is not provided). The strategy used internally by this highlighter remain the same as before, it checks `term_vectors` first, then `postings` and ultimately it re-analyzes the text. Ultimately it rewrites the docs so that the options that the `unified` highlighter cannot handle are clearly marked as such. There are few features that the `unified` highlighter is not able to handle which is why the other highlighters (`plain` and `fvh`) are still available. I'll open separate issues for these features and we'll deprecate the `fvh` and `plain` highlighters when full support for these features have been added to the `unified`.
71 lines
1.6 KiB
Plaintext
71 lines
1.6 KiB
Plaintext
[[index-options]]
|
|
=== `index_options`
|
|
|
|
The `index_options` parameter controls what information is added to the
|
|
inverted index, for search and highlighting purposes. It accepts the
|
|
following settings:
|
|
|
|
[horizontal]
|
|
`docs`::
|
|
|
|
Only the doc number is indexed. Can answer the question _Does this term
|
|
exist in this field?_
|
|
|
|
`freqs`::
|
|
|
|
Doc number and term frequencies are indexed. Term frequencies are used to
|
|
score repeated terms higher than single terms.
|
|
|
|
`positions`::
|
|
|
|
Doc number, term frequencies, and term positions (or order) are indexed.
|
|
Positions can be used for
|
|
<<query-dsl-match-query-phrase,proximity or phrase queries>>.
|
|
|
|
`offsets`::
|
|
|
|
Doc number, term frequencies, positions, and start and end character
|
|
offsets (which map the term back to the original string) are indexed.
|
|
Offsets are used by the <<unified-highlighter,unified highlighter>> to speed up highlighting.
|
|
|
|
<<mapping-index,Analyzed>> string fields use `positions` as the default, and
|
|
all other fields use `docs` as the default.
|
|
|
|
[source,js]
|
|
--------------------------------------------------
|
|
PUT my_index
|
|
{
|
|
"mappings": {
|
|
"my_type": {
|
|
"properties": {
|
|
"text": {
|
|
"type": "text",
|
|
"index_options": "offsets"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
PUT my_index/my_type/1
|
|
{
|
|
"text": "Quick brown fox"
|
|
}
|
|
|
|
GET my_index/_search
|
|
{
|
|
"query": {
|
|
"match": {
|
|
"text": "brown fox"
|
|
}
|
|
},
|
|
"highlight": {
|
|
"fields": {
|
|
"text": {} <1>
|
|
}
|
|
}
|
|
}
|
|
--------------------------------------------------
|
|
// CONSOLE
|
|
<1> The `text` field will use the postings for the highlighting by default because `offsets` are indexed.
|