Будет ли фильтрация запросов по ключевому слову работать лучше, чем фильтрация по целому числу? - PullRequest
0 голосов
/ 19 апреля 2019

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

& # x200B;

Запрос будет выглядеть примерно так.

& # x200B;

'query' : {
  'body' : {
    'should': {
      'match': {
        'posts.text': {
          'query': 'videogame',
          'fuzziness': 2,
        }
      }
    },
    'filter':{
      'term' : {
        'user_id': 3
      }
    }
  }
}

Теперь в моем отображении он установлен так, что user_id отображается как целое число. Смогу ли я добиться увеличения производительности запросов, если вместо этого использовать термин фильтра как ключевое слово? Исходя из фона SQL, я не совсем уверен, какие типы полей «индексируются» так же, как SQL, и я не смог найти очень хорошую документацию по этому вопросу.

1 Ответ

0 голосов
/ 19 апреля 2019

Есть 2 основных раздела, когда дело доходит до поиска данных. 1. Как ES индексирует документ, а во-вторых, как работает запрос. 1. https://www.elastic.co/guide/en/elasticsearch/reference/current/analysis.html 2. https://www.elastic.co/guide/en/elasticsearch/reference/current/query-filter-context.html

Надеюсь, это поможет вам.

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