elasticsearch/docs/reference/mapping/params/index-options.asciidoc
James Rodewig d8a78b9d26
[DOCs] Add tip for index_options parameter (#70450) (#70498)
Co-authored-by: James Rodewig <40268737+jrodewig@users.noreply.github.com>

Co-authored-by: yudidi <972656027@qq.com>
2021-03-17 10:43:41 -04:00

69 lines
1.8 KiB
Text

[[index-options]]
=== `index_options`
The `index_options` parameter controls what information is added to the
inverted index for search and highlighting purposes.
[WARNING]
====
The `index_options` parameter is intended for use with <<text,`text`>> fields
only. Avoid using `index_options` with other field data types.
====
The parameter accepts one of the following values. Each value retrieves
information from the previous listed values. For example, `freqs` contains
`docs`; `positions` contains both `freqs` and `docs`.
`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` (default)::
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.
[source,console]
--------------------------------------------------
PUT my-index-000001
{
"mappings": {
"properties": {
"text": {
"type": "text",
"index_options": "offsets"
}
}
}
}
PUT my-index-000001/_doc/1
{
"text": "Quick brown fox"
}
GET my-index-000001/_search
{
"query": {
"match": {
"text": "brown fox"
}
},
"highlight": {
"fields": {
"text": {} <1>
}
}
}
--------------------------------------------------
<1> The `text` field will use the postings for the highlighting by default because `offsets` are indexed.