Ok, in meinem Elasticsearch Ich verwende die folgende Abbildung für einen Index:Wie definiert man ein Mapping in elasticsearch, das keine anderen Felder akzeptiert als die zugeordneten?
{
"mappings": {
"mytype": {
"type":"object",
"dynamic" : "false",
"properties": {
"name": {
"type": "string"
},
"address": {
"type": "string"
},
"published": {
"type": "date"
}
}
}
}
}
es funktioniert. In der Tat, wenn ich ein falsch formatiertes Datum in das Feld "veröffentlicht" schreibe, klagt es und versagt. Auch habe ich die folgende Konfiguration:
...
node.name : node1
index.mapper.dynamic : false
index.mapper.dynamic.strict : true
...
Und ohne die Zuordnung, ich kann wirklich nicht die Art verwenden. Das Problem ist, dass, wenn ich einfügen so etwas wie:
{ "name": "boh58585", "Adresse": "hiohio", "veröffentlicht": "2014.04.04", "test" : "hophiophop" }
wird es glücklich akzeptieren. Welches ist nicht das Verhalten, das ich erwarte, weil das Feld test
nicht im Mapping ist. Wie kann ich die Felder des Dokuments auf diejenigen beschränken, die sich im Mapping befinden ???