Поиск по ключевым словам с использованием Elastic search - PullRequest
0 голосов
/ 18 октября 2019

Я новичок в Elasticsearch и пытаюсь достичь функциональности Text Search с помощью Elasticsearch.
У меня более 100 документов, и каждый документ имеет строки, начинающиеся с отметок времени.

Например, .

00:00:00 - 00:01:00 Это первая строка

00:01:01 - 00:02:30 Это вторая строка

00:02:30 - 00:03:45 Это третья строка

00:03:46 - 00:05:00 Это четвертая строка

00:05:01 - 00:06:00 Это пятая строка

...

И т. Д.

Я разбиваю каждую из нихстроки в разные абзацы и выполнение текстового поиска по документам.

Теперь я хочу выполнить поиск по ключевому слову, в котором будет определено 1 или более ключевых слов , скажем, для строк между отметкой времени 00:00:00 - 00:05:00.
Таким образом, на основе поиска по ключевым словам должны быть возвращены все данные из 00:00:00 - 00:05:00. Как и во всех строках между этими временными метками, они должны быть возвращены на основе поиска по ключевым словам.

Не могли бы вы помочь мне понять, как добиться этой функциональности с помощью Elasticsearch?

Заранее спасибо !!

1 Ответ

0 голосов
/ 19 октября 2019

Как я понимаю ниже, мое мнение:

  1. Лучше создать еще одно поле (тип может быть datetime, timestamp) в вашей схеме и выполнить запрос диапазона для этого поля. ,Потому что он будет использоваться очень часто, и ваши данные будут храниться в порядке временных рядов.

  2. [ Не рекомендуется ] Если тип поля "ключевое слово", гдевы сохранили всю строку, затем вам нужно использовать подстановочный запрос с "% youstring". Но это вернет только частичные данные. И конечно это дорого и медленно. Это как запрос в SQL.

  3. [ Не рекомендуется ] Если тип поля «текст», то вам нужно проверить, созданы ли термины дата-время или нет,Это также возвращает только частичные данные.

Лучше всего разработать схему в соответствии с вашим поисковым запросом. 1-й вариант будет лучше для вас и поможет в будущем.

...