у меня есть эти данные в моем индексе
https://gist.github.com/bitgandtter/6794d9b48ae914a3ac7c
Если вы заметили в отображении, я использую ngram с 3 токенов до 20.
когда я выполняю этот запрос:
GET /my_index/user/_search?search_type=dfs_query_then_fetch
{
"query": {
"filtered": {
"query":{
"multi_match":{
"query": "F",
"fields": ["username","firstname","middlename","lastname"],
"analyzer": "custom_search_analyzer"
}
}
}
}
}
Я должен получить 8 документов, которые я проиндексировал, но я получаю только 6, не считая двух с именами Франц и Фрэнсис. Я ожидаю, что эти два тоже будут, потому что они включены в данные. почему-то не работает.
когда я выполняю:
GET /my_index/user/_search?search_type=dfs_query_then_fetch
{
"query": {
"filtered": {
"query":{
"multi_match":{
"query": "Fran",
"fields": ["username","firstname","middlename","lastname"],
"analyzer": "custom_search_analyzer"
}
}
}
}
}
Я получаю эти два документа.
Если я уменьшу ngram, чтобы начать с 1, я получу все документы, но я думаю, что это повлияет на производительность запроса.
Чего мне здесь не хватает. Заранее спасибо.
ПРИМЕЧАНИЕ: все примеры закодированы с использованием смысла