I\'m struggling with the simple task of index creation, the goal is to create an index with an analyzer and a field mapping. When I create a index with an analyzer i can talk to
I believe your issue is that the analysis
settings need to be nested within a settings
node in your JSON, not within an index
node as you have it. Please reference the Elasticsearch Create Index API for details on constructing the JSON.
Therefore, your create index call should look like the the following:
curl -X PUT "http://localhost:9200/$INDEX_NAME/" -d '{
"settings":{
"analysis":{
"analyzer":{
"analyzer1":{
"type":"custom",
"tokenizer":"standard",
"filter":[ "standard", "lowercase", "stop", "kstem", "ngram" ]
}
},
"filter":{
"ngram":{
"type":"ngram",
"min_gram":2,
"max_gram":15
}
}
}
},
"mappings": {
"product": {
"properties": {
"title": {
"type": "string",
"search_analyzer" : "analyzer1",
"index_analyzer" : "analyzer1"
}
}
}
}
}';