Hi Team
I'm using Custom Analyzer. But, I want to use the analyzer at index time and search time as well. I've mentioned in mappings but I dont see that search time analyzer is working?
Below are settings. I'm using Analyzer for content field. (please refer to content field in mappings)
"settings": { "number_of_shards" : 1, "analysis": { "analyzer": { "my_analyzer": { "type": "custom", "tokenizer": "standard", "filter": [ "possessive_stemmer", "lowercase", "english_stop", "eng_keywords", "stemmer" ] } }, "filter": { "english_stop": { "type": "stop", "stopwords": ["have","should","i","a", "an", "and", "are", "as", "at", "be", "but", "by", "for", "if", "in", "into", "is", "it", "no", "not", "of", "on", "or", "such", "that", "the", "their", "then", "there", "these", "they", "this", "to", "was", "will", "with","my"] }, "stemmer": { "type": "stemmer", "language": "light_english" }, "possessive_stemmer": { "type": "stemmer", "language": "possessive_english" }, "eng_keywords": { "type": "keyword_marker", "keywords": [ "windows" ] } } } }, "mappings": { "_doc": { "properties": { "Author": { "type": "text", "fields": { "keyword": { "type": "keyword", "ignore_above": 256 } } }, "CreationDate": { "type": "text", "fields": { "keyword": { "type": "keyword", "ignore_above": 256 } } }, "Creator": { "type": "text", "fields": { "keyword": { "type": "keyword", "ignore_above": 256 } } }, "Keywords": { "type": "text", "fields": { "keyword": { "type": "keyword", "ignore_above": 256 } } }, "ModDate": { "type": "text", "fields": { "keyword": { "type": "keyword", "ignore_above": 256 } } }, "Producer": { "type": "text", "fields": { "keyword": { "type": "keyword", "ignore_above": 256 } } }, "Subject": { "type": "text", "fields": { "keyword": { "type": "keyword", "ignore_above": 256 } } }, "Title": { "type": "text", "fields": { "keyword": { "type": "keyword", "ignore_above": 256 } } }, "content": { "type": "text", "analyzer": "my_analyzer", "search_analyzer": "my_analyzer", "fields": { "keyword": { "type": "keyword", "ignore_above": 256 } } }, "file_category": { "type": "text", "fields": { "keyword": { "type": "keyword", "ignore_above": 256 } } }, "file_name": { "type": "text", "fields": { "keyword": { "type": "keyword", "ignore_above": 256 } } }, "url": { "type": "text", "fields": { "keyword": { "type": "keyword", "ignore_above": 256 } } } } } }
When I search for a query. Example: my monitor is not running.
According to explain api, ES is searching for running instead of run(as I'm using stemmer).
Please let me know what I'm missing here ?
Thanks