#elasticsearch #elastic-stack
#elasticsearch #эластичный стек
Вопрос:
Недавно я начал работать над Elasticsearch и не мог понять, как объект JSON маркируется и сохраняется в инвертированном индексе.
Рассмотрим, был ли вставлен JSON ниже.
{
"city": "Seattle",
"state": "WA",
"location": {
"lat": "47.6062095",
"lon": "-122.3320708"
}
}
Я могу выполнить поиск по URI следующим образом
GET /my_index/_search?q=city:seattle
Этот поиск вернул бы вышеупомянутый документ, но как Elasticsearch может выполнять поиск «Сиэтл» только в поле «город». Если он маркирует полный JSON, все ключи и значения будут разделены, тогда как будет поддерживаться сопоставление между токеном ключа и токеном значения.
Ответ №1:
Потому что индексированные токены указывают на исходный документ, который также сохраняется. Взгляните на инвертированный индекс в документах elastic.