elasticsearch mapping

Elasticsearch: la definición de asignación de raíz tiene un índice de parámetros no admitidos: not_analyzed



mapping (3)

Comprueba tu versión elástica.

Tuve estos problemas porque estaba mirando la versión incorrecta de la documentación.

Hola a todos, estoy tratando de crear una prueba de esquema.

PUT /test { "mappings": { "field1":{ "type":"integer" }, "field2":{ "type":"integer" }, "field3":{ "type":"string", "index":"not_analyzed" }, "field4,":{ "type":"string", "analyzer":"autocomplete", "search_analyzer":"standard" } }, "settings": { bla bla bla }

Estoy teniendo el siguiente error

{ "error": { "root_cause": [ { "type": "mapper_parsing_exception", "reason": "Root mapping definition has unsupported parameters: [index : not_analyzed] [type : string]" } ], "type": "mapper_parsing_exception", "reason": "Failed to parse mapping [featured]: Root mapping definition has unsupported parameters: [index : not_analyzed] [type : string]", "caused_by": { "type": "mapper_parsing_exception", "reason": "Root mapping definition has unsupported parameters: [index : not_analyzed] [type : string]" } }, "status": 400 }

Por favor ayúdame a resolver este error.


Espero que la respuesta anterior funcione para la búsqueda elástica <7.0, pero en 7.0 no podemos especificar el tipo de documento y ya no se admite. Y en ese caso si especificamos el tipo de documento obtenemos un error similar.

Está haciendo uso de Elastic search 7.0 y la última versión de Nest C # (6.6). Hay algunos cambios importantes en ES 7.0 que están causando este problema. Esto se debe a que no podemos especificar el tipo de documento y en la versión 6.6 de NEST están utilizando doctype. Así que para resolverlo hasta que se lance NEST 7.0, necesitamos descargar su paquete beta.

Por favor, vaya a través de este enlace para arreglarlo

https://xyzcoder.github.io/elasticsearch/nest/2019/04/12/es-70-and-nest-mapping-error.html


Ya casi estás aquí, solo te estás perdiendo algunas cosas:

PUT /test { "mappings": { "type_name": { <--- add the type name "properties": { <--- enclose all field definitions in "properties" "field1": { "type": "integer" }, "field2": { "type": "integer" }, "field3": { "type": "string", "index": "not_analyzed" }, "field4,": { "type": "string", "analyzer": "autocomplete", "search_analyzer": "standard" } } } }, "settings": { ... } }

ACTUALIZAR

Si su índice ya existe, también puede modificar sus asignaciones de esta manera:

PUT test/_mapping/type_name { "properties": { <--- enclose all field definitions in "properties" "field1": { "type": "integer" }, "field2": { "type": "integer" }, "field3": { "type": "string", "index": "not_analyzed" }, "field4,": { "type": "string", "analyzer": "autocomplete", "search_analyzer": "standard" } } }

ACTUALIZACIÓN :

A partir de ES 7, se han eliminado los tipos de mapeo. Puedes leer más detalles here