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