Elasticsearch 7介绍(转) 发表于 2019-03-02 | 分类于 Elasticsearch 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899Elasticsearch 7.0 默认自带 JDK默认节点名称为主机名。默认分片数改为1,不再是5。Elasticsearch 7.0 没有 Type 了,包括 API 层面的。type会在8.X版本彻底移除。hits.total返回对象,而非仅结果值Kibana 支持全局开启“黑暗”模式查询相关性速度优化Weak-AND算法在Term Query查询场景有3700%的性能提升。间隔查询(Intervals queries)某些搜索用例(例如,法律和专利搜索)引入了查找单词或短语彼此相距一定距离的记录的需要。 Elasticsearch 7.0中的间隔查询引入了一种构建此类查询的全新方式,与之前的方法(跨度查询span queries)相比,使用和定义更加简单。 与跨度查询相比,间隔查询对边缘情况的适应性更强。 引入新的集群协调子系统移除 minimum_master_nodes 参数,让 Elasticsearch 自己选择可以形成仲裁的节点。典型的主节点选举现在只需要很短的时间就可以完成。 集群的伸缩变得更安全、更容易,并且可能造成丢失数据的系统配置选项更少了。节点更清楚地记录它们的状态,有助于诊断为什么它们不能加入集群或为什么无法选举出主节点。2.4 升级 Elasticsearch 7,0 ,不再内存溢出新的 Circuit Breaker 在JVM 堆栈层面监测内存使用,Elasticsearch 比之前更加健壮。设置indices.breaker.fielddata.limit的默认值已从JVM堆大小的60%降低到40%。2.5 时间戳纳秒级支持,提升数据精度利用纳秒精度支持加强时间序列用例到目前为止,Elasticsearch仅以毫秒精度存储时间戳。 7.0增加了几个零并带来了纳秒精度,这提高了高频数据采集用户存储和排序所需数据的精度。3、Elasticsearch 7升级注意事项3.0 升级前必知必会查看新版本的重大更改特性,并对7.0.0的代码和配置进行必要的更改。如果您使用自定义插件,请确保兼容版本可用。在升级生产集群之前,在开发环境中测试升级。备份您的数据! 您必须拥有数据快照才能回滚到早期版本。3.1 升级APIRolling upgrade ——滚动升级允许Elasticsearch集群一次升级一个节点,升级不会中断服务。不支持在升级期间在同一群集中运行多个版本的Elasticsearch,因为无法将已升级的节点复制到运行旧版本的节点。3.2 版本升级路线小版本之间升级:举例:5.4.1升级到5.6平滑升级——从5.6版本到6.7版本平滑升级——从6.7版本到7.0.0版本3.3 借助Reindex升级索引数据Elasticsearch可以读取在先前主要版本中创建的索引。如果您在5.x或之前创建了索引,则必须在升级到7.0.0之前重新索引或删除它们。如果存在不兼容的索引,Elasticsearch节点将无法启动。3.4 ELK Stack要一起升级升级到新版本的Elasticsearch时,需要升级Elastic Stack中的每个产品。3.5 6.6或更早版本集群,需要先关闭要从6.6或更早版本直接升级到7.0.0,必须关闭群集,安装7.0.0并重新启动。3.6 切记,7.0+版本`无type`的索引结构。这点,如果考虑未来更新版本,在6.X或者更早版本的项目中,就严格按照7.x规范走,这样升级会相对比较省事。4、Elasticsearch 版本更新太快了,学不动了,肿么办?在这里插入图片描述一方面,我们感叹ES的更新速度,的确从2016年的2.X到2019年的7.0,版本更新速度超乎想象。另一方面,实际业务开发中,还在使用1.X,2.X,5.X,甚至还没有用过6.X的朋友非常多,小伙伴不禁有了“学不动了”的感慨。4.1 新版本的变变是永恒的,尤其是基于开源软件加上上市公司的推动。实际上,高版本较低版本,主要在性能上的提升和部分新功能点的实现。新版本更高效。比如:6.6+提出的ilm索引生命周期管理,你如果关注Elastic Meetup的话,印象ebay和阿里还有其他公司自己就实现过类似功能。原有版本有类似的功能,只不过是非常、非常麻烦、繁琐,所以,才有了ilm的诞生。新版本迎合了市场的需求。比如:7.0的黑暗模式,实际在grafana或类似竞品BI中都有类似的功能,猜测Kibana升级一方面是用户需求,另一方面也是竞品分析的结果。新版本性能极大提升。比如:7.0的terms融合新算法,有37倍的提升。4.2 新版本的不变《暗时间》作者刘未鹏说过“底层的技术永远不过时”。不必说倒排索引机制不会变,也不必说Lucene的改动也相对较小。单是:ES的基础功能全文检索、多种聚合等几乎不会有太大的变动。4.3 还存在学不动吗?夯实打牢基础基本功,理解ELK更新的变与不变。80-90%+的时间关注基础,10%左右的时间关注增量的变化即可。