put 索引名称/_mapping { "properties": { "name":{"type":"text"} }
时间: 2023-08-23 17:05:30 浏览: 30
PUT /索引名称/_mapping
{
"properties": {
"name": {
"type": "text"
}
}
}
请将上述请求中的 "索引名称" 替换为你要操作的索引名称。这个请求将创建或更新指定索引的映射,其中包含一个名为 "name" 的字段,类型为 "text"。
相关问题
get 索引名称/_mapping { "properties": { "name":{"type":"text"} }
GET /索引名称/_mapping
这个请求将获取名为 "索引名称" 的索引的映射信息。请注意,这是一个读取操作,不需要在请求体中提供任何内容。只需发送这个GET请求,Elasticsearch将返回该索引的映射信息。
如果你想添加或更新索引的映射,可以使用PUT请求,像你之前提供的示例一样。但是,获取映射信息和添加/更新映射的方法是不同的。
validation failed: 1: mapping type is missing
这个错误通常是指在Elasticsearch索引映射中缺少了映射类型。Elasticsearch是一个分布式搜索和分析引擎,它使用文档存储数据,并通过索引和映射定义文档的结构和属性。
在Elasticsearch 6.x版本之前,为每个索引指定一个默认的映射类型是必需的。然而,从Elasticsearch 7.x版本开始,映射类型被废弃了,Elasticsearch只能使用单个固定的映射类型"_doc"。
因此,当你在Elasticsearch 7.x版本或更高版本中创建索引时,如果你没有明确指定映射类型或者指定了旧的映射类型名称,将会出现"validation failed: 1: mapping type is missing"错误。
为了解决这个问题,你需要将旧的映射类型改为"_doc",或者在创建索引时完全省略映射类型。
例如,下面是一个在Elasticsearch 7.x版本中创建索引的示例请求:
PUT /my-index
{
"mappings": {
"properties": {
"name": {
"type": "text"
},
"age": {
"type": "integer"
}
}
}
}
注意,上面的请求中没有映射类型的定义,因为我在Elasticsearch 7.x版本中创建索引时不再需要指定映射类型。
总之,"validation failed: 1: mapping type is missing"错误是由于在新版本的Elasticsearch中使用了旧的映射类型引起的。你可以通过将旧的类型改为"_doc"或完全省略类型来解决这个问题。