Bonjour,
Je suis passe de ES. 1.7 à la version 5.4.1
et J'ai un "probleme" avec un word_delimiter filter.
Est il possible de ne pas tenir compte de la position des token.
Je vaux pouvoir faire des recherche sur des noms composés
Exemple :
DELETE my_index
PUT my_index
{
"settings": {
"analysis": {
"analyzer": {
"my_custom_analyzer": {
"type": "custom",
"tokenizer": "keyword",
"char_filter": [
"html_strip"
],
"filter": [
"trim",
"lowercase",
"asciifolding",
"worddelimiter_test"
]
}
},
"filter": {
"worddelimiter_test": {
"type": "word_delimiter",
"split_on_numerics": false,
"split_on_case_change": false,
"generate_word_parts": true,
"generate_number_parts": false,
"catenate_all": true,
"preserve_original": true
}
}
}
},
"mappings": {
"personne": {
"_all": {
"enabled": false
},
"properties": {
"nom": {
"type": "string",
"analyzer": "my_custom_analyzer",
"omit_norms": "true",
"index_options": "docs",
"fielddata": "true"
}
}
}
}
}
Je poste 1 documents
POST my_index/personne/
{ "nom": "noma"}
ET la recherche d'un nom composé approché a une lettre prêt :sdfsdf-nomb
POST my_index/personne/_search
{
"query" :{
"bool": {
"must" : [{
"match" :{
"nom" : {
"query": "sdfsdf-nomb",
"analyzer" : "my_custom_analyzer",
"fuzziness" : "2"
}}}
]
}
}}
le document noma est trouvé
mais si la recherche se faite sur nomb-sdfsdf le document n'est pas trouvé.
POST my_index/personne/_search
{
"query" :{
"bool": {
"must" : [{
"match" :{
"nom" : {
"query": "nomb-sdfsdf",
"analyzer" : "my_custom_analyzer",
"fuzziness" : "2"
}}}
]
}
}}
Je ne comprends pas pourquoi ?