2015-11-30 6 views
1

У меня есть данные в ElasticSearch, который содержит информацию о транспортных средствах, и я бы хотел, чтобы столбцы были как «полным столбцом», так и «нечетким», доступным для поиска (т.е. как MySQL LIKE '%%').ElasticSearch - как полное текстовое совпадение, так и «нечеткое» совпадение

Проблема, с которой я сталкиваюсь, заключается в том, что пробелы в значениях вызывают ее отбрасывание, поэтому я добавил индекс not_analyzed к каждому из значений, которые нужно искать таким образом, но я все еще не могу заставить его работать, как я этого хочу.

Любой совет будет оценен!

ответ

0

Для этой проблемы есть несколько полей. Check https://www.elastic.co/guide/en/elasticsearch/reference/2.1/_multi_fields.html

+0

Я не уверен, как это решает мою проблему? Может быть, я не понимаю, как их использовать. – joshbrw

+0

Теперь я реализовал multifield, но у меня проблемы с хранением данных в нем и запросом. Нужно ли мне публиковать данные об экспликации в самом поле, а также вложенное поле 'raw'? @Mantas – joshbrw

+0

О, извините. Не видел ваш первый комментарий. Если вы хотите получить доступ к вложенному полю, используйте «.». чтобы указать, какое поле вы хотите использовать. Например, если у вас есть «заголовок» и поля «raw» и «custom_analyzed», вы можете ссылаться на определенное поле в запросах с «title.raw» и «title.custom_analyzed» соответственно. – Mantas

Смежные вопросы