Я пытаюсь запросить версию .raw поля, которое у меня есть в моем индексе elasticsearch (версия 5.0.0). Имя поля является «регионом» и его отображением является следующее:ElasticSearch: Можно ли запросить поле .raw?
{
"properties": {
"region": {
"type": "text", "analyzer": "custom_analyzer",
"fields": {
"raw": {
"type": "keyword", "index": "not_analyzed"
}
}
}
}
}
Обратите внимание, что я первоначально установить отображение области с анализируемой версией и на втором этапе я обновляемое отображение, добавляя необработанную версию поля.
Насколько я понял из documentation и аналогичного question здесь, я могу запросить необработанное поле, чтобы получить документы, чьи регионы точно соответствуют моему запросу. Однако, используя следующий запрос, результаты не возвращаются.
{
"match": {
"region.raw": "Northern Ireland"
}
}
В противоположность этому, используя анализируемую версию моего поля, результаты возвращаются как ожидалось.
{
"match": {
"region": "Northern Ireland"
}
}
Как мне нужно использовать сырое поле, у меня есть следующие вопросы:
- это правильно так, как я установил мое отображение в поле области?
- Правильно ли я запрашиваю?
Большое спасибо за помощь.
Вау, я не могу поверить, как я пропустил это. Это сработало, спасибо! – christinabo