Я еще новичок в ElasticSearch, но в настоящее время я пытаюсь склонить голову к тому, почему я не могу смешивать подстановочный запрос с совпадением.ElasticSearch - Сочетание совпадений запросов с подстановочным знаком
Возьмите это тело JSON, например
{
"size":"10",
"from":0,
"index":"example",
"type":"logs",
"body":{
"query":{
"match":{
"account":"1234"
},
"wildcard":{
"_all":"*test*"
}
},
"sort":{
"timestamp":{
"order":"desc"
}
}
}
}
Он возвращает ошибку "SearchPhaseExecutionException [Не удалось выполнить фазы [запрос], все черепки неуспешно;" (полный дамп: http://pastebin.com/uJJZm8fQ)
Однако, если я удаляю шаблон шаблона или соответствия из тела запроса - он возвращает результаты, как ожидалось. Я просматриваю документацию, и я вообще не могу найти какой-либо контент. Сначала я думал, что это связано с параметром _all, но даже если я явно укажу ключ, получается тот же результат.
Прежде чем предположить, что я должен использовать оператор «bool» или что-то подобное для смешивания моих типов запросов, есть ли какие-либо объяснения для этого?
Эта ошибка связана с тем, что у вас неверный индекс поля json, (и есть и другие). Вы выполняете прямой запрос CURL или используете драйверы elasticsearch для конкретного языка программирования? – progrrammer
Я изначально использовал официальную библиотеку PHP, но я делал отладку/тестирование с помощью CURL. Можете ли вы рассказать о «недопустимом индексе полей JSON»? – Mechzeit