我是Elasticsearch的新手,目前正致力于实现geo_distance搜索过滤器.截至目前,我的索引具有以下映射(我删除了一些字段):
{
advert_index: {
mappings: {
advert_type: {
properties: {
__v: {
type: "long"
},
caption: {
type: "string"
},
category: {
type: "string"
},
**location: {
type: "long"
},**
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
geo_distance字段将在location字段上实现,其中示例实例如下所示:
"location": [
71,
60
],
Run Code Online (Sandbox Code Playgroud)
即使用geoJSON格式[lon, lat].
我知道我必须更新我的索引,以便位置字段是类型geo_point,如文档(mapping-geo-point)中所述.好像我必须删除索引并创建一个新索引,但我无法做到这一点.
我是在正确的轨道上吗?如果有人能帮助我如何创建新索引或使用正确的数据类型更新现有索引,我将不胜感激.
非常感谢!
是否可以从索引中删除单个映射类型而不删除整个索引?https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-delete-mapping.html说这不再可能,但我觉得很难相信.任何人都可以解释为什么功能被删除?看起来像基本的东西.
我有一个带有两个映射的索引.我希望能够删除一种映射类型(以及该类型的所有文档),而不删除其他映射类型.
谢谢