Sto cercando di creare un indice in ES con analizzatore e mappatura specifici, usando JEST. i m utilizzando il seguente codice:Come aggiungere la mappatura in ElasticSearch usando JEST
CreateIndex createIndex = new CreateIndex.Builder(indexName)
.settings(
ImmutableSettings.builder()
.loadFromClasspath(
"jestconfiguration.json"
).build().getAsMap()
).build();
JestResult result = client.execute(createIndex);
e questo è il jestconfiguration.java
{
"settings": {
"analysis": {
"analyzer": {
"second": {
"type": "custom",
"tokenizer": "standard",
"filter": [
"lowercase",
"synonym"
]
}
},
"filter": {
"synonym" : {
"type" : "synonym",
"synonyms" : [
"smart phone => smartphone"
]
}
}
}
},
"mappings": {
"index_type": {
"properties": {
"Name": {
"type": "string",
"analyzer": "second"
}
}
}
}
}
Mentre, l'indice è crated correttamente con le "Impostazioni" specificate, la sezione "mappature" non lo fa lavoro e non sono in grado di impostare la mappatura per il campo "Nome". Qualcuno ha un'idea? C'è una specie di putmapping()
in JESt che ti consente di aggiungere i mapping? Idealmente mi piacerebbe essere in grado di impostare il campo nome dinamicamente e non nel file .json.
Thnks