Я хочу использовать поиск hashtag в сочетании со стандартным поиском текста.Как сделать кумулятивный поиск массива в elasticsearch?
Вот вид запроса я хочу, чтобы быть в состоянии сделать:
«кожаные штаны #vintage #london»
Так в действительности я хотел сдирать #hashtaged элементы и поиск их по имени, в совокупности. Во-первых, я хочу, чтобы он определял приоритеты в точном совпадении с помощью строки поиска, а затем с теми, у которых были близкие совпадения + хэштеги, а затем, если не совпадать с строкой поиска, через хэш-теги.
Таким образом, предметы с Vintage и London будут размещены выше, чем у Vintage или London.
Вот мое отображение
{
"title" : {
"type" : "string",
"analyzer" : "standard"
},
"hashtags" : {
"properties" : {
"id" : "integer",
"name" : "string"
}
}
}
Так запрос я хочу сделать
"exact or near match string" + "optional cumulative array match (preferably with fuzzyness)"
или по отношению к моему отображения
"near or exact match on 'title'" + "cumulative array match with fizzyness on hashtag.name"
Я попытался нечеткий матч но получить слишком много результатов с недостаточной ясностью. Я пробовал простую simple_query_string, но он возвращает странные результаты и пробовал совпадение bool, но ничего не возвращаю, когда добавляю массив.
Любая помощь, которую любой может предложить, будет более чем признательна. Дайте мне знать, если вам нужна дополнительная информация или что-то еще? Большое спасибо заранее за ваше время, чтобы даже прочитать это.