Я смотрю на Elasticsearch в первый раз и провел около дня, глядя на него. Мы уже широко используем Lucene и хотим начать использовать ES вместо этого. Я смотрю на альтернативные структуры данных на то, что у нас есть.Elasticsearch arrays query/filter
Если я запустил * match_all * запрос, это то, что я получаю в данный момент. Я доволен этой структурой.
{
"took": 2,
"timed_out": false,
"_shards": {
"total": 5,
"successful": 5,
"failed": 0
},
"hits": {
"total": 22,
"max_score": 1,
"hits": [
{
"_index": "integration-test-static",
"_type": "sport",
"_id": "4d38e07b-f3d3-4af2-9221-60450b18264a",
"_score": 1,
"_source": {
"Descriptions": [
{
"FeedSource": "dde58b3b-145b-4864-9f7c-43c64c2fe815",
"Value": "Football"
},
{
"FeedSource": "e4b9ad44-00d7-4216-adf5-3a37eafc4c93",
"Value": "Football"
}
],
"Synonyms": [
"Football"
]
}
}
]
}
}
То, что я не могу понять, как запрос записывается тянуть обратно этот документ путем поиска синонима «Футбольный». Похоже, это должно быть легко!
У меня был такой подход после прочтения этого вопроса: http://gibrown.wordpress.com/2013/01/24/elasticsearch-five-things-i-was-doing-wrong/ Он упоминает сохранение нескольких полей в массивах. Я понимаю, что мой пример не имеет нескольких полей, но мы обязательно будем искать решение, которое может удовлетворить их.
Пробовал различные различные запросы с фильтрами, bool things, term this и terms that, no return.
Спасибо за быстрый ответ (и Акшай). Я обязательно просмотрю руководство для новичков. Через несколько дней все начнет погружаться ... –