多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# 索引API改变 原文链接 : [https://www.elastic.co/guide/en/elasticsearch/reference/5.0/breaking_50_index_apis.html](https://www.elastic.co/guide/en/elasticsearch/reference/5.0/breaking_50_index_apis.html) 译文链接 : [http://www.apache.wiki/pages/viewpage.action?pageId=4260773](http://www.apache.wiki/pages/viewpage.action?pageId=4260773) 贡献者 : [片刻](/display/~jiangzhonglian) ## 在运行快照时关闭/删除索引 在以前的Elasticsearch版本中,在完整快照期间关闭或删除索引会使快照失败。在5.0中,关闭/删除索引请求将失败。部分快照的行为保持不变:仍然可以在部分快照期间关闭或删除索引。然后将快照结果标记为部分。 ## Warmers 由于默认情况下的文档值和基于磁盘的规范的几个更改,加温器不再有用。因此,加热器和温暖的API已被删除:它不再可能注册将在新的IndexSearcher发布之前运行的查询。 不要担心,如果你有暖器定义在你的指数,当升级到5.0时,它们将被忽略。 ## 系统CPU统计信息 最近的CPU使用率(百分比)已添加到在节点stats API和cat节点API下报告的操作系统统计数据。这里的断裂更改是在节点stats响应中的os对象中有一个新对象。此对象称为cpu,并包括percent和load_average作为字段。这会将以前是os对象中顶级字段的load_average字段移动到cpu对象。 load_average字段的格式已更改为字段1m,5m和15m分别表示一分钟,五分钟和十五分钟加载的对象。如果这些字段中有任何字段不存在,则表示相应的值不可用。 在cat节点的API响应中,默认情况下输出cpu字段。之前的负载字段已被删除,并被分别代表一分钟,五分钟和十五分钟负载的load_1m,load_5m和load_15m替换。如果相应的值不可用,该字段将为null。 最后,org.elasticsearch.monitor.os.OsStats的API已更改。 getLoadAverage方法已删除。现在可以从OsStats.Cpu#getLoadAverage获取此值,但它不再是双精度值,而是封装1分钟,5分钟和15分钟负载平均值的对象。此外,最近的CPU使用情况可以从OsStats.Cpu#getPercent获取。 ## Suggest统计 通过suggest在索引stats暴露的suggest统计信息已经与search统计信息合并。suggest统计信息作为search统计信息的一部分显示。 ## 创建以 - 或+开头的索引 Elasticsearch不再允许以 - 或+开头创建索引,以便多索引匹配和扩展不会混淆。以前可能(但一个非常糟糕的主意)创建以连字符或加号开头的索引。已存在这些前面的字符的任何索引将继续正常工作。 ## 别名API / _aliases API不再支持indexRouting和index-routing,只有index_routing。它也不再支持searchRouting和index-routing,只有search_routing。这些被删除,因为他们未经测试,我们更喜欢只有一个(显而易见的)方式来做这样的事情。 ## OpType创建没有ID 从5.0索引,不再支持带有 op_type=create 而不指定ID的文档。 ## Flush API wait_if_ongoing标志默认已更改为true,导致_flush调用等待和阻止,如果另一个刷新操作当前正在同一个分片上运行。反过来,如果wait_if_ongoing设置为false,并且另一个flush操作已经运行,则会跳过flush并且shard flush调用将立即返回而没有任何错误。在以前的版本中,flush_not_allowed异常为每个跳过的分片报告。