Я использую elasticsearch 2.1. Я не совсем понимаю, что я делаю неправильно. Это меня озаряет разницы между запросами, фильтрами ... Не могли бы вы мне помочь?Простой поиск на ElasticSearch
Я пытаюсь выполнить этот запрос. Она возвращает мне пустой результат:
curl -XGET 'http://ESNode01:9201/living_team/inputs/_search?pretty' -d '
{
"query": {
"filtered": {
"query": { "match_all": {} },
"filter": { "term": { "channel": "Feina" } }
}
}
}
'
Однако, когда я выполнить этот запрос без фильтров возвращает мне все:
curl -XGET 'http://ESNode01:9201/living_team/inputs/_search?pretty' -d '
{
"query": {
"filtered": {
"query": { "match_all": {} },
}
}
}
'
Это образец документа:
{
"user":"living_team",
"timestamp":"2015-12-14T18:06:47.085Z",
"matter":"snip2.PNG",
"comment":"Archive",
"channel":"Feina",
"feedTypes":[
20
],
"property_general_ldate":"2015-12-14T18:06:47.085Z",
"property_tSize":7595.0,
"resources":[
{
"timestamp":"2015-12-14T16:58:00.598Z",
"matter":"snip2.PNG",
"comment":"Archive",
"channel":"Feina",
"feedType":20,
"mime":"image/png",
"source":{
"sourceId":{
"id":"C:\\Users\\Beep\\Desktop\\share\\snip2.PNG",
"batch":"c38eec2d-a282-11e5-baf4-382c4ab9e433",
"client":"VIM12HCNZL"
},
"feedType":20,
"property_folder":"C:\\Users\\Beep\\Desktop\\share",
"property_lastAccessFolder_ldate":1450111821506
},
"property_size":7595.0,
"property_creation_ldate":"2015-12-14T16:50:20.578Z",
"property_name":"snip2.PNG",
"nestedResources":[
]
}
]
IMHO это должно быть решено не путем его нижнего резки вручную, а с помощью анализатора нижнего регистра. – Mantas
Фильтр 'term' ничего не анализирует. Вместо этого можно использовать запрос 'match', и это тоже поможет. – Val
Спасибо! Я пробовал с 'term filter ->" feina "' и с 'match filter ->" FeINa "', и они вернули документы правильно. Однако, если я хочу, чтобы это соответствовало словам типа «fein», «fen», «EIna» и т. Д. ... Что бы я сделал, чтобы решить это? – Jordi