Здравствуйте. Столкнулся с такой проблемой ,
у меня есть 2 эластика(один для дев , другой крутиться на продакшине ) у которые полностью одинаковы в настройках (settings/mapping) запросы на них идут одинаковые.
но вот результаты очень странные ...
собственно запрос:
GET /product/_search
{
"from": 0, "size": 200,
"query": {
"multi_match": {
"query": "Iphone X 256",
"fuzziness": 1,
"fields": [
"model^3.0", "model.ngram^1.0",
"name.ru^3.0", "name.ngram^1.0",
"vendor^3.0", "vendor.ngram^1.0"
]
}
}
}
Что приходит на стейдже:
Response - staging
{
"_score" : 87.506325,
"_source" : {
"price" : 475.6,
"vendor" : "miniinthebox",
"name" : "Кейс для Назначение iPhone 4/4S / Apple / iPhone X iPhone X / iPhone 8 / iPhone 8 Plus Чехол Твердый Кожа PU для iPhone X / iPhone 8 Pluss / iPhone 8",
"model" : null
}
},
{
"_score" : 87.232185,
"_source" : {
"price" : 68080.0,
"vendor" : "Apple",
"name" : "Смартфон Apple iPhone 8 256 Гб золотистый MQ7E2RU/A",
"model" : "iPhone 8"
}
},
{
"_score" : 87.232185,
"_source" : {
"price" : 36620.0,
"vendor" : "Apple",
"name" : "Смартфон Apple iPhone 7 32 Гб розовое золото MN912RU/A",
"model" : "iPhone 7"
}
},
{,
"_score" : 86.60097,
"_source" : {
"price" : 72880.0,
"vendor" : "Apple",
"name" : "Смартфон Apple iPhone X 64 Гб серый MQAC2RU/A",
"model" : "iPhone X"
}
},
{
"_score" : 86.45236,
"_source" : {
"price" : 68080.0,
"vendor" : "Apple",
"name" : "Смартфон Apple iPhone 8 256 Гб серебристый MQ7D2RU/A",
"model" : "iPhone 8"
}
},
{
"_score" : 86.45236,
"_source" : {
"price" : 72180.0,
"vendor" : "Apple",
"name" : "Смартфон Apple iPhone X серый 5.8" 64 Гб NFC LTE Wi-Fi GPS 3G MQAC2RU/A",
"model" : "iPhone X"
}
},
{
"_score" : 86.367294,
"_source" : {
"price" : 407.56,
"vendor" : "miniinthebox",
"name" : "DE JI Кейс для Назначение iPhone 5c / Apple / iPhone X iPhone X / iPhone 8 Чехол Твердый Кожа PU для iPhone X / iPhone 8 Pluss / iPhone 8",
"model" : null
}
}
Что приходит на проде:
Response - prod
{
"_score": 92.74852,
"_source": {
"price": 2179.87,
"vendor": "iphonesix",
"name": "2016 женщины мужчины мода Мартин сапоги снег сапоги открытый повседневная дешевые",
"model": "392678004"
}
},
{
"_score": 92.74852,
"_source": {
"price": 5419.2,
"vendor": "iphonexsmax",
"name": "Relógios inteligentes iphonexsmax",
"model": "462266800"
}
},
{
"_score": 92.74852,
"_source": {
"price": 2179.87,
"vendor": "iphone6six",
"name": "осень зима женщины ботильоны новая мода женщина снегоступы для девочек женская р",
"model": "405723549"
}
},
{
"_score": 92.52857,
"_source": {
"price": 232.35,
"vendor": "iphonexsmax",
"name": "2 мл NANO Протектор Экрана Жидкого Стекла Олеофобное Покрытие ЖК-Водная Пленка Унив",
"model": "453057586"
}
}
и только спустя много много такого хламаи мусора начинаюттся появлеться всякие чехлы и аксесуары на этот iphone тоесть релевантность начинает рости и потом гдето спустся 200+ документов
{
"_score": 66.00365,
"_source": {
"price": 12800,
"vendor": "Apple",
"name": "iPhone 8 256gb, Space Gray б/у 4/5",
"model": "Смартфон Apple iPhone 8 256GB Space Gray (MQ6G2)"
}
},
{
"_score": 66.00365,
"_source": {
"price": 11700,
"vendor": "Apple",
"name": "iPhone 7 Plus бу 256gb Gold 4/5",
"model": "iPhone 7 Plus 128gb Gold"
}
},
{
"_score": 65.84988,
"_source": {
"price": 24593,
"vendor": "Apple",
"name": "Apple iPhone Xr 256GB Black",
"model": "Apple iPhone Xr 256GB Black"
}
},
{
"_score": 65.84988,
"_source": {
"price": 59950,
"vendor": "Apple",
"name": "Apple iPhone Xr 256GB (Black)",
"model": null
}
}
такое ощущение что на проде чем ниже у тебя скор то более релевантент ответ на запрос ... то есть он как бы сортирует в обратную сторону , с начало мусор а потом уже нормальные ответы , притом что на стейдже все впорядке с начало то что надо а дальше мусор ...
ну и собственно хотелось бы узнать где собака зарыта и где искать или смотреть эту проблему
P.S.
еще один встречный порос , если заметили то
Response - staging
{
"_score" : 87.506325,
"_source" : {
"price" : 475.6,
"vendor" : "miniinthebox",
"name" : "Кейс для Назначение iPhone 4/4S / Apple / iPhone X iPhone X / iPhone 8 / iPhone 8 Plus Чехол Твердый Кожа PU для iPhone X / iPhone 8 Pluss / iPhone 8",
"model" : null
}
}
самым первый ответ не совсем релевантен запросу, ну это как бы я так понимаю из за того , что у него в имени много раз встречается iPhone то есть слова из запроса что в свою очередь добавляет вес этому документу , как с таким можно бороться ? пробовал "fuzziness": 0
не помогло