#elasticsearch #elastic-stack #elasticsearch-5
#эластичный поиск #elastic-stack #elasticsearch-5
Вопрос:
Я должен использовать 3 поля (ответ, вопрос; ключевое слово, источник)
- Мое требование заключается в том, что мне нужно исключить поле answer = «НЕОБРАБОТАННЫЙ».
- Мне нужен Полевой вопрос.ключевое слово
- Мне нужно ВКЛЮЧИТЬ поле source = «sonax»
Я использовал приведенный ниже запрос для получения выходных данных. Но после применения поля answer = «НЕОБРАБОТАННЫЙ» я все еще получаю необработанные записи в данных.
{
"query": {
"bool": {
"must_not": {
"term": {
"answer": "UNHANDLED"
}
},
"must": {
"term": {
"source": "sonax"
}
}
}
},
"aggs": {
"top_tags": {
"terms": {
"field": "question.keyword"
},
"aggs": {
"top_faq_hits": {
"top_hits": {
"_source": {
"includes": [
"answer"
]
},
"size": 1
}
}
}
}
}
}
С уважением,
Прабху
Комментарии:
1. не могли бы вы , пожалуйста, поделиться некоторыми образцами индексных данных и ожидаемым результатом поиска ?
Ответ №1:
Добавление рабочего примера с индексными данными, поисковым запросом и результатом поиска
Индексировать данные:
{
"question": "c",
"answer": "UNHANDLED",
"source": "sonax"
}
{
"question": "b",
"answer": "c",
"source": "titan"
}
{
"question": "b",
"answer": "q",
"source": "sonax"
}
{
"question": "d",
"answer": "a",
"source": "volvo"
}
Поисковый запрос:
{
"query": {
"bool": {
"must_not": {
"term": {
"answer.keyword": "UNHANDLED"
}
},
"must": {
"term": {
"source.keyword": "sonax"
}
}
}
},
"aggs": {
"top_tags": {
"terms": {
"field": "question.keyword"
},
"aggs": {
"top_faq_hits": {
"top_hits": {
"_source": {
"includes": [
"source"
]
},
"size": 1
}
}
}
}
}
}
Результат поиска:
"aggregations": {
"top_tags": {
"doc_count_error_upper_bound": 0,
"sum_other_doc_count": 0,
"buckets": [
{
"key": "b",
"doc_count": 1,
"top_faq_hits": {
"hits": {
"total": {
"value": 1,
"relation": "eq"
},
"max_score": 0.6931471,
"hits": [
{
"_index": "65567523",
"_type": "_doc",
"_id": "3",
"_score": 0.6931471,
"_source": {
"source": "sonax"
}
}
]
}
}
}
]
}
}
Комментарии:
1. @Prabhudas8703 пожалуйста, ознакомьтесь с ответом и дайте мне знать, решит ли это вашу проблему?
2. @Prabhudas8703 рад, что смог вам помочь 🙂