Мне действительно нужны некоторые подсказки по elasti c использование поиска в java api ...
Давайте предположим, что я использую java api от ES. До сих пор я понимаю, что поиск elasti c может дать противоречивый результат из-за проблемы непоследовательности первичной копии и реплики (удаление do c приводит к общей разнице в статистике из-за удаления метки вместо ее удаления).
Итак, что я пробовал
searchRequest.preference ("_ primary_first"). Это дало мне непротиворечивый результат (поскольку он использует только первичный осколок!)
Теперь я хочу попробовать в своем игрушечном примере:
1), используя preference = Custom (string) value https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-body.html#request -body-search-preference
2) если у меня есть 5 узлов, я хочу указать, какой узел мы хотим использовать, основываясь на queryText.
Например, ,
'''
if (queryRequest.text().equals("red")) {
// use 1st node
searchRequest.preference("??????")
} else if (queryRequest.text().equals("blue")) {
// use 2nd node
searchRequest.preference("??????")
} else {
// use either 3rd~5th node <- but this is not necessary if it is really hard..
searchRequest.prefernce("???????")
}
'''
Q1) Я думаю, мне нужно использовать пользовательскую настройку "WISELY", чтобы указать, какой узел использовать ... может кто-нибудь привести простой пример java .api?
Q2) Это еще один, но есть ли способ загрузить статус для каждого узла из searchResponse? (Снова в java api friendly)
Q3) Есть ли какой-нибудь умный способ указать использование 1-го узла? (или определенный Node Id ??) с заданным текстом запроса? (вместо этого используются вещи hashmap ...) Например,
допустим, я не знаю, какой текст запроса я получу, но хочу равномерно распределить их по каждому узлу (среди 5!)
Но хочу придерживаться первого варианта.
если я увижу самый первый текст запроса == "красный", и я назначаю этот queryRequest для использования Node1, затем позже я также хочу использовать Node1, если я снова вижу текст запроса == "красный" .. У кого-то есть идея?
Спасибо вам, ребята!
Отказ от ответственности: Я парень не из CS и независимый ученик, который пытался экспериментировать с новыми вещами, чтобы нарушить мои зоны комфорта! :) Пожалуйста, извините за этот глупый вопрос!