Elasticsearch 7 - запретить поиск полей - PullRequest
0 голосов
/ 08 февраля 2020

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

В моем случае я ищу SKU продукта t-shirt-small-red, и хотя ES7 возвращает правильное значение результаты, он также возвращает все остальное, так как я индексирую поля created_at и updated_at с датами 2020-02-08 00:00:00.

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

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

1 Ответ

1 голос
/ 09 февраля 2020

Как и в одном из комментариев, вы можете исключить их из части поля запроса. Раньше я не использовал поля, поэтому на самом деле это означает явное указание всех полей.

Кроме того, я обнаружил, что указание типа поля в качестве даты также гарантирует, что они не будут отображаться как ложные срабатывания в поиске.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...