API шаблонов поиска
Выполняет поиск с помощью шаблона поиска.
GET my-index/_search/template
{
"id": "my-search-template",
"params": {
"query_string": "hello world",
"from": 0,
"size": 10
}
} Запрос
GET <target>/_search/template
GET _search/template
POST <target>/_search/template
POST _search/template
Предварительные условия
- Если включены функции безопасности Elasticsearch, у вас должна быть
readпривилегия доступа к индексам для целевого потока данных, индекса или псевдонима. Для межкластерного поиска см. Настройка удалённых кластеров с безопасностью.
Параметры пути
-
<target> - (Необязательный, строка) Список потоков данных, индексов и псевдонимов, разделяемых запятыми, для поиска. Поддерживаются подстановочные знаки (
*). Чтобы выполнить поиск по всем потокам данных и индексам, опустите этот параметр или используйте*.
Параметры запроса
-
allow_no_indices -
(Необязательный, булево) Если
false, запрос возвращает ошибку, если какой-либо подстановочный символ, псевдоним индекса или_allзначение нацелены только на отсутствующие или закрытые индексы. Это поведение применяется даже если запрос нацелен на другие открытые индексы. Например, запрос, нацеленный наfoo*,bar*, возвращает ошибку, если индекс начинается сfoo, но ни один индекс не начинается сbar.По умолчанию
true. -
ccs_minimize_roundtrips - (Необязательный, булево) Если
true, для запросов межкластерного поиска минимизируются сетевые обмены. По умолчаниюtrue. -
expand_wildcards -
(Необязательный, строка) Тип индекса, которому могут соответствовать шаблоны подстановок. Если запрос может нацеливаться на потоки данных, этот аргумент определяет, соответствуют ли подстановочные знаки скрытым потокам данных. Поддерживаются значения, разделенные запятыми, такие как
open,hidden. Допустимые значения:-
all - Соответствие любому потоку данных или индексу, включая скрытые.
-
open - Соответствие открытым, не скрытым индексам. Также соответствует любому не скрытому потоку данных.
-
closed - Соответствие закрытым, не скрытым индексам. Также соответствует любому не скрытому потоку данных. Потоки данных не могут быть закрыты.
-
hidden - Соответствие скрытым потокам данных и скрытым индексам. Должно быть комбинировано с
open,closedили обоими. -
none - Шаблоны подстановок не принимаются.
-
-
explain - (Необязательный, булево) Если
true, ответ включает дополнительные детали о вычислении рейтинга в качестве части совпадения. По умолчаниюfalse. -
ignore_throttled - (Необязательный, булево) Если
true, указанные конкретные, расширенные или псевдонимизированные индексы не включаются в ответ при ограничении. По умолчаниюtrue. -
ignore_unavailable - (Необязательный, булево) Если
false, запрос возвращает ошибку, если он нацелен на отсутствующий или закрытый индекс. По умолчаниюfalse. -
preference - (Необязательный, строка) Указывает узел или фрагмент, на котором должна быть выполнена операция. По умолчанию случайный.
-
rest_total_hits_as_int - (Необязательный, булево) Если
true, ответ возвращаетhits.totalкак целое число. Если ложь, возвращаетhits.totalкак объект. По умолчаниюfalse. -
routing - (Необязательный, строка) Пользовательское значение, используемое для маршрутизации операций на конкретный фрагмент.
-
scroll - (Необязательный, единицы времени) Указывает, как долго должно поддерживаться согласованное представление индекса для поиска с прокруткой.
-
search_type -
(Необязательный, строка) Тип операции поиска. Доступные варианты:
-
query_then_fetch -
dfs_query_then_fetch
-
-
typed_keys - (Необязательный, булево) Если
true, ответ префиксрует имена агрегации и подсказок с соответствующими типами. По умолчаниюfalse.
Тело запроса
-
explain -
(Необязательный, булево) Если
true, возвращает подробную информацию о вычислении рейтинга в качестве части каждого совпадения. По умолчаниюfalse.Если вы укажете как этот, так и
explainпараметр запроса, API будет использовать только параметр запроса.
-
id - (Обязательный*, строка) ID используемого шаблона поиска. Если нет
source, этот параметр является обязательным. -
params - (Необязательный, объект) Пара пары ключ-значение, используемые для замены переменных Mustache в шаблоне. Ключ — имя переменной. Значение — значение переменной.
-
profile - (Необязательный, булево) Если
true, выполняется профилирование выполнения запроса. По умолчаниюfalse. -
source -
(Обязательный*, объект) Встроенный шаблон поиска. Поддерживает те же параметры, что и тело запроса API поиска. Также поддерживает переменные Mustache.
Если нет
id, этот параметр является обязательным.
© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/7.17/search-template-api.html