amazon-web-services - 为什么我不能在 AWS Elasticsearch 索引属性上定义别名数据类型?
问题描述
在我的开发环境中,我可以创建一个具有Alias数据类型属性的 Elasticsearch 索引。但是,在 AWS(Elasticsearch Service)中,当我尝试相同的操作时,它会失败。
我的开发 Elasticsearch 版本:6.4.2
AWS Elasticsearch 版本:6.3.1
我正在尝试使用 Elasticsearch 站点中的示例代码:https ://www.elastic.co/guide/en/elasticsearch/reference/current/alias.html
PUT trips
{
"mappings": {
"_doc": {
"properties": {
"distance": {
"type": "long"
},
"route_length_miles": {
"type": "alias",
"path": "distance"
},
"transit_mode": {
"type": "keyword"
}
}
}
}
}
这是我得到的:
{
"error": {
"root_cause": [
{
"type": "mapper_parsing_exception",
"reason": "No handler for type [alias] declared on field [route_length_miles]"
}
],
"type": "mapper_parsing_exception",
"reason": "Failed to parse mapping [_doc]: No handler for type [alias] declared on field [route_length_miles]",
"caused_by": {
"type": "mapper_parsing_exception",
"reason": "No handler for type [alias] declared on field [route_length_miles]"
}
},
"status": 400
}
解决方案
显然,Alias 数据类型是在 6.4 版中引入的——在“次要”更新中添加数据类型有点奇怪。
以下链接提到“字段”别名,但我认为这也包括“属性”别名:
https://www.elastic.co/guide/en/elasticsearch/reference/6.x/release-notes-6.4.0.html
我可以等待 AWS 将 Elasticsearch 升级到 6.4 版或找到解决方法。
推荐阅读
- image - 颤振:Stackoverflow 出现在我的 ios 模拟器中
- android - 用什么来代替这个枚举?
- android - ListView 中的 GridView 构建器不会延迟加载
- java - 检查列表是否存在数据然后再次输入值
- join - 如何使用`JOIN`过滤记录?
- intellij-idea - 悬停 intellij 工具栏的选项卡时更改背景颜色
- c# - 如何等待并行任务完成
- c++ - 无法理解为什么 *a++ 不起作用而 *a=*a+1 是?
- python - NameError:名称'myemailaddress'未在python中定义
- ruby-on-rails - 定制设计注册