新特性7.0.0 版本
2019年4月10日发布,重要特性:
- 集群连接变化:TransportClient被废弃 以至于,es7的java代码,只能使用restclient。对于java编程,建议采用 High-level-rest-client方式操作ES集群
- ES程序包默认打包jdk: 以至于7.x版本的程序包大小突然边300MB+ 对比6.x发现,包大了200MB+, 正是JDK的大小
- Lucene9.0
- 重大改进-正式废除单个索引下多Type的支持 es6时,官方就提到了es7会删除type,并且es6已经规定每一个index只能有一个type。在es7中使用默认的_doc作为type,在8.x版本会彻底移除type。 api请求方式也发送变化,如获得某索引的某ID的文档:GET index/_doc/id其中index和id为具体的值
- 7.1开始,Security功能免费使用
- ECK-ElasticSearch Operator on Kubernetes
- 引入了真正的内存断路器,它可以更精准地检测出无法处理的请求,并防止它们使单个节点不稳定
- Zen2 是 Elasticsearch 全新集群协调层,提高了可靠性、性能和用户体验,变得更快、更安全,并更易于使用
新功能
1.List item
2.New Cluster coordination
3.Feature - Complete High Level REST Client
4.Script Score Query 性能优化
1.Weak-AND算法提高查询性能
2.默认的Primary Shared数从5改为1,避免Over Sharding
3.更快的前 k 个查询
4.间隔查询(Intervals queries) 某些搜索用例(例如,法律和专利搜索)引入了查找单词或短语彼此相距一定距离的记录的需要。 Elasticsearch 7.0中的间隔查询引入了一种构建此类查询的全新方式,与之前的方法(跨度查询span queries)相比,使用和定义更加简单。 与跨度查询相比,间隔查询对边缘情况的适应性更强。7.0.0
重大变化
Aggregations
删除对用于脚本化指标聚合不建议使用参数._agg/_aggs的支持 #32979 (issues: #29328, #31597)
- Percentile/Ranks为空时应返回null而不是NaN #30460 (issue: #29066)
- 如果统计汇总的计数为零,则将总和呈现为零 #27193 (issue: #26893)
Analysis
- 删除
delimited_payload_filter
#27705 (issues: #26625, #27704) - 限制_analyze产生的tokens数量 #27529 (issue: #27038)
- 添加ngram和shingle设置的限制 #27211 (issue: #25887)
Audit
Authentication
Authorization
Circuit Breakers
CRUD
- 版本冲突异常消息增强 #29432 (issue: #21278)
- 在UpdateRequest中使用ObjectParser #29293 (issue: #28740)
- 删除对内部版本控制的并发控制支持 #38254 (issue: #1078)
Distributed
- 删除未记录的action.master.force_local设置 #29351
- 删除 tribe node 支持 #28443
- 禁止index.unassigned.node_left.delayed_timeout负值 #26828
- 删除集群状态大小 #40061 (issues: #39806, #39827, #39951, #40016)
Features/Features
Features/Indices APIs
Features/Ingest
- 元数据添加Except. Data配置 #32322 (issue: #27728)
- 为 user-agent 提取处理器添加ECS schema (#37727) #37984 (issues: #37329, #37727)
- Remove special handling for ingest plugins #36967 (issues: #36898, #36956)
Features/Java Low Level REST Client
Features/Watcher
Features/Stats
- 从stats APIs中删除suggest metric #29635 (issue: #29589)
- 将线程池信息和线程池配置对齐Align #29195 (issue: #29123)
- Align thread pool info to thread pool configuration #29123 (issue: #29113)
Geo
Index APIs
Infra/Circuit Breakers
Infra/Core
- 默认node.name为主机名 #33677
- 删除写入线程池的批量fallback #29609
- CCS: 从远程集群信息中删除http地址 #29568 (issue: #29207)
- 删除索引线程池 #29556
- 正常时,主要回应的状态不应为503 #29045 (issue: #8902)
- 自动准备要分割的索引 #27451
- 不要刷新
_flush
_force_merge
和_upgrade
#27000 (issue: #26972)
Infra/Logging
Infra/Packaging
Infra/REST API
Infra/Scripting
- 删除对不建议使用的StoredScript contexts支持 #31394 (issues: #27612, #28939)
- 删除ScriptDocValues中的getDate方法 #30690
- 删除7.0.0中
ScriptDocValues#date
和ScriptDocValues#dates
#30690 (issue: #23008)
Infra/Settings
- 删除 config prompting for secrets and text #27216
Machine Learning
Mapping
- 针对未索引字段的匹配词组查询应引发异常 #31060
- 去掉旧版映射代码 #29224
- 拒绝对
_default_
mapping的更新 #29165 (issues: #15613, #28248) - 去掉
update_all_types
option. #28288 - 去掉
_default_
mapping #28248 - 拒绝数字字段的
index_options
参数 #26668 (issue: #21475) - 将include_type_name的默认值更新为false #37285
- RestGetIndicesAction中支持 include_type_name #37149
Network
- 去掉 http.enabled 设置 #29601 (issue: #12792)
- 去掉 HTTP 内容长度上限 #29337
- 去掉 TLS 1.0 作为默认的SSL协议 #37512 (issue: #36021)
- 安全性:去掉 SSL设置fallback #36846 (issue: #29797)
Percolator
- 去掉不推荐使用的过滤器map_unmapped_fields_as_string设置 #28060
Ranking
- 为custom/scripted相似性添加最少的完整性检查 #33564 (issue: #33309)
- 要求重新评分的Scroll查询被视为无效 #32918 (issue: #31775)
- function_score查询中禁止negative scores #35709 (issue: #33309)
- analyzed查询中禁止negative field boosts #37930 (issue: #33309)
Scripting
Search
- 移除不推荐使用的url参数
_source_include
和_source_exclude
#35097 (issues: #22792, #33475) - 不允许 negative query boost #34486 (issue: #33309)
- Score Query功能中禁止negative
weight
#33390 (issue: #31927) - 在field capabilities API, 删除对在请求正文中提供字段的支持 #30185
- 删除query_string弃用的选项 #29203 (issue: #25551)
- Fix Laplace scorer to multiply by alpha (and not add) #27125
- 移除_primary和_replica 分片 preferences #26791 (issue: #26335)
- 限制query_string和simple_query_string扩展字段的数量 #26541 (issue: #25105)
- Make purely negative queries return scores of 0. #26015 (issue: #23449)
- 移除不推荐使用的_termvector endpoint. #36131 (issues: #36098, #8484)
- 移除不推荐使用的Graph endpoints #35956
- 在
_msearch
验证元数据#35938 (issue: #35869) - 使hits.total成为搜索响应中的一个对象 #35849 (issue: #33028)
- 消除QueryBuilders中查询和过滤上下文之间的区别 #35354 (issue: #35293)
- 在span_or查询中设置boost时引发解析异常 (#28390) #34112 (issue: #28390)
- 默认情况下,跟踪总点击数达10,000 #37466 (issue: #33028)
- 默认情况下,使用mappings来设置文档值字段的格式 #30831 (issues: #26948, #29639)
Security
Snapshot/Restore
Store
- 删除7.0的elasticsearch-translog #33373 (issues: #31389, #32281)
- 完全删除
index.shard.check_on_startup: fix
for 7.0 #33194
Suggesters
- 修复建议程序中的阈值频率计算 #34312 (issue: #34282)
- 使Geo上下文Mapping更严格地解析 #32821 (issues: #32202, #32412)
- 删除没有上下文的索引或查询的上下文建议功能 #31007 (issue: #30712)
ZenDiscovery
- 如果未配置,Best-effort为集群的形成 #36215
去掉 DiscoveryPlugin#getDiscoveryTypes #38414 (issue: #38410)
Java 重大变化
Aggregations
改变 GeoHashGrid.Bucket#getKey() 返回String #31748 (issue: #30320)
Analysis
Features/Java High Level REST Client
- 从Retry中删除不推荐使用的methods #33925
- 群集运行状况默认为群集级别 #31268 (issue: #29331)
- 移除不推荐使用的API methods #31200 (issue: #31069)
Features/Java Low Level REST Client
- 删除不推荐使用的methods #33223 (issues: #29623, #30315)
- 移除对低级 REST client中maxRetryTimeout的支持 #38085 (issues: #25951, #31834, #33342)
Geo
- 从ShapeBuilders解耦geojson解析逻辑 #27212
Infra/Core
Infra/Transport API
ZenDiscovery
Analysis
- 使用unicode_set_filter参数替换unicodeSetFilter #29215 (issue: #22823)
- 使用delimited_payload替换delimited_payload_filter #26625 (issue: #21978)
- master弃用标准Html Strip分析器 #26719 (issue: #4704)
- 去掉
nGram
和edgeNGram
token过滤名称 (#38911) #39070 (issues: #30209, #38911)
Audit
Core
Cluster Coordination
Features/Indices APIs
Features/Ingest
Features/Java High Level REST Client
Features/Watcher
- 弃用 xpack.watcher.history.cleaner_service.enabled #37782 (issue: #32041)
- 弃用watcher类型 #37594 (issue: #35190)
Graph
- 弃用
_graph/explore
calls中的类型 #40466
Infra/Core
Infra/Packaging
- 弃用 fallback to java on PATH #37990
Infra/Scripting
Infra/Transport API
- 不推荐使用 the transport client 而应该使用the high-level REST client #27085
Machine Learning
- Deprecate X-Pack centric ML endpoints #36315 (issue: #35958)
- Adding ml_settings entry to HLRC and Docs for deprecation_info #38118
- Datafeed deprecation checks #38026 (issue: #37932)
- Remove “8” prefixes from file structure finder timestamp formats #38016
- Adjust structure finder for Joda to Java time migration #37306
- Resolve 7.0.0 TODOs in ML code #36842 (issue: #29963)
Mapping
- Deprecate type exists requests. #34663
- index API弃用types #36575 (issues: #35190, #35790)
- 弃用在查询中使用_type作为字段名称 #36503 (issue: #35190)
- update_by_query和delete_by_query弃用types #36365 (issue: #35190)
- 对于msearch模板,请确保使用正确的名称进行弃用日志记录 #36344
- 弃用 termvector and mtermvector 请求中types #36182
- 更新请求弃用types #36181
- Deprecate types in document delete requests. #36087
- Deprecate types in get, exists, and multi get. #35930
- Deprecate types in search and multi search templates. #35669
- Deprecate types in explain requests. #35611
- Deprecate types in validate query requests. #35575
- Deprecate types in count and msearch. #35421 (issue: #34041)
- Deprecate types in rollover index API #38039 (issue: #35190)
- Deprecate types in get field mapping API #37667 (issue: #35190)
- Deprecate types in the put mapping API. #37280 (issues: #29453, #37285)
- Support include_type_name in the field mapping and index template APIs. #37210
- Deprecate types in create index requests. #37134 (issues: #29453, #37285)
- Deprecate use of the _type field in aggregations. #37131 (issue: #36802)
- Deprecate reference to _type in lookup queries #37016 (issue: #35190)
- Deprecate the document create endpoint. #36863
- Deprecate types in index API #36575 (issues: #35190, #35790)
- Deprecate types in update APIs #36225
Migration
Monitoring
Rollup
- Re-deprecate xpack rollup endpoints #36451 (issue: #36044)
- Deprecate X-Pack centric rollup endpoints #35962 (issue: #35958)
Scripting
Search
- 弃用过滤
_type
. #29468 (issue: #15613) - 删除以X-Pack为中心的图形endpoints #36010 (issue: #35958)
- 在reindex请求正文中弃用类型的使用 #36823
- 为get _source添加无类型endpoints以及exist_source #36426
Security
- 弃用以X-Pack为中心的许可证endpoints #35959 (issue: #35958)
- 淘汰/ _xpack / security / ,改为使用/ _security / #36293 (issue: #35958)
SQL
Watcher
Analysis
- 放宽TermVectors API以使用TextFieldType以外的其他文本字段 #31915 (issue: #31902)
- 在Nori中添加对内联用户词典的支持 #36123 (issue: #35842)
- 添加预建的ICU分析器 #34958 (issue: #34285)
Authentication
- 添加对API密钥的支持以访问Elasticsearch #38291 (issue: #34383)
- OIDC realm 认证流程 #37787
- OIDC Realm JWT + JWS相关功能 #37272 (issues: #35339, #37009)
- OpenID Connect Realm 基本功能 #37009 (issue: #35339)
Authorization
- 允许使用授权引擎进行自定义授权 #38358 (issues: #32435, #36245, #37328, #37495, #37785, #38137, #38219)
- 通配符索引权限不包括.security #36765
CCR
Distributed
Features/ILM
Features/Ingest
Features/Java High Level REST Client
- GraphClient用于高级REST客户端和相关测试 #32366
Features/Monitoring
Geo
- Integrate Lucene’s LatLonShape (BKD Backed GeoShapes) as default
geo_shape
indexing approach #36751 (issue: #35320) - Integrate Lucene’s LatLonShape (BKD Backed GeoShapes) as default
geo_shape
indexing approach #35320 (issue: #32039) - geotile_grid implementation #37842 (issue: #30240)
- Fork Lucene’s LatLonShape Classes to local lucene package #36794
- Integrate Lucene’s LatLonShape (BKD Backed GeoShapes) as default
geo_shape
indexing approach #36751 (issue: #35320) - Integrate Lucene’s LatLonShape (BKD Backed GeoShapes) as default
geo_shape
indexing approach #35320 (issue: #32039)
Infra/Core
- 如果分片处于
search idle
状态,则跳过分片刷新 #27500
Infra/Logging
- 日志记录:统一索引/搜索慢日志的日志循环 #27298
Infra/Plugins
Infra/REST API
Java High Level REST Client
Java Low Level REST Client
Machine Learning
- 从更新作业日历操作中过滤未定义的作业组 #30757
- 将延迟的数据检查添加到datafeed作业运行器 #35387 (issue: #35131)
- 添加 set_upgrade_mode API endpoint #37837
Mapping
- 添加一个
feature_vector
字段 #31102 (issue: #27552) - 公开 Lucene’s FeatureField #30618
- 使无类型的API可用于类型名称不同于_doc的索引 #35790 (issue: #35190)
- 将类型化模板与无类型索引创建混合时,优先创建索引,反之亦然 #37871 (issue: #37773)
- 添加 nanosecond field mapper #37755 (issues: #27330, #32601)
Ranking
Recovery
SQL
- 添加对ST_AsWKTgeo功能的基本支持 #34205
- 添加对SYS GEOMETRY_COLUMNS的支持 #30496 (issue: #29872)
- 引入 HISTOGRAM 分组功能 #36510 (issue: #36509)
- DATABASE() 和 USER() 系统函数 #35946 (issue: #35863)
- 引入 INTERVAL 支持 #35521 (issue: #29990)
- 允许按汇总对组进行排序 #38042 (issue: #35118)
- 实现 FIRST/LAST 聚合函数 #37936 (issue: #35639)
- 引入 SQL DATE 数据类型 #37693 (issue: #37340)
Search
- 向_msearch / template API的响应添加“获取”计时信息 #30961 (issue: #30957)
- 添加allow_partial_search_results标志以使用默认设置true搜索请求 #28440 (issue: #27435)
- 默认情况下启用自适应副本选择 #26522 (issue: #24915)
- 添加间隔查询 #36135 (issues: #29636, #32406)
- 添加了软限制以打开滚动上下文 #25244 #36009 (issue: #25244)
- 引入最小化CCS往返行程的功能 #37828 (issues: #32125, #37566)
- 将脚本过滤器添加到间隔 #36776
- 添加了设置命中次数以准确跟踪的功能 #36357 (issue: #33028)
- 添加最大搜索请求大小 #26423
- 通过查询DSL使IntervalQuery可用 #36135 (issue: #29636)
Security
Suggesters
将建议响应序列化为已命名的可写对象 #30284 (issue: #26585)**
7.0.0增强功能
7.1.0
7.1.0发布重点
传输层安全性(TLS),通常称为SSL,现已获得免费的Elastic Basic许可。 以前,此安全功能需要付费的金级订阅。 使用默认分发,您现在可以加密集群内以及跨远程集群的所有Elasticsearch通信。
下载 Elasticsearch, configure TLS, 更多细节 https://www.elastic.co/subscriptions
RBAC(基于角色的访问控制)现已获得免费的Elastic Basic许可。 以前,此安全功能需要付费的金级订阅。 使用默认分发,您可以利用RBAC从file realm或native realm为任何用户配置用户,组,角色和权限。 下载 Elasticsearch, configure RBAC, 高级安全功能(如单点登录以及对字段级和文档级安全性的Active Directory / LDAP身份验证)仍然是付费功能,更多细节 https://www.elastic.co/subscriptions重大变化
本部分讨论将应用程序迁移到Elasticsearch 7.1时需要注意的更改
也可以查看Release highlights以及Release notes.
HTTP changes
弃用http.tcp_no_delay
,被替换为http.tcp.no_delay
Network changes
7.1. 弃用network.tcp.connect_timeout
设置,要更改客户端连接的默认连接超时,请修改transport.connect_timeout
Transport changes
7.1中不推荐使用以下设置,每个设置被有6.7中引入的设置替换。transport.tcp.port
被替代transport.port
transport.tcp.compress
被替代transport.compress
transport.tcp.connect_timeout
被替代transport.connect_timeout
transport.tcp_no_delay
被替代transport.tcp.no_delay
transport.profiles.profile_name.tcp_no_delay
被替代transport.profiles.profile_name.tcp.no_delay
transport.profiles.profile_name.tcp_keep_alive
被替代transport.profiles.profile_name.tcp.keep_alive
transport.profiles.profile_name.reuse_address
被替代transport.profiles.profile_name.tcp.reuse_address
transport.profiles.profile_name.send_buffer_size
被替代transport.profiles.profile_name.tcp.send_buffer_size
transport.profiles.profile_name.receive_buffer_size
被替代transport.profiles.profile_name.tcp.receive_buffer_size
Java 重大变化
弃用
新特性
7.1.0增强功能
7.2.0
7.2.0发布重点
重大变化
Discovery changes
每个主机只能指定一个端口,在早期版本中,可以在discovery.seed_hosts
列表的条目中包含一系列端口,但是Elasticsearch仅使用范围内的第一个端口,而意外地忽略了其余端口。例如设置 discovery.seed_hosts:
"10.11.12.13:9300-9310"
之后,Elasticsearch将只使用 10.11.12.13:9300
来发现,主机连接端口范围内的地址将被拒绝。
Cluster Coordination
Reject port ranges in
discovery.seed_hosts
#41404 (issue: #40786)Java 重大变化
Infra/Plugins
移除 IndexStore 和 DirectoryService #42446
弃用
Authorization
弃用别名权限 #38059
Features/Features
Mapping
Reindex
Search
- 弃用 在
has_child
查询中使用 0 值 定义min_children
#41548 #41555 (issue: #41548) - 弃用 在msearch API支持第一行为空 #41442 (issue: #41011)
Security
Distributed
- 支持复制closed indices #39499 (issues: #33888, #33903, #37359, #37413, #38024, #38326, #38327, #38329, #38421, #38631, #38767, #38854, #38955, #39006, #39110, #39186, #39249, #39364)
Infra/Scripting
Machine Learning
- 添加数据框功能 #38934
Ranking
- Expose proximity boosting #39385 (issue: #33382)
- 在script_score查询中添加randomScore函数 #40186 (issue: #31461)
SQL
- 添加初始geo支持 #42031 (issues: #29872, #37206)
- 实现 CASE… WHEN… THEN… ELSE… END #41349 (issue: #36200)
- 引入 MAD (MedianAbsoluteDeviation) 聚合 #40048 (issue: #39597)
- 引入 SQL TIME 数据类型 #39802 (issue: #38174)
- 对REST请求引入列选项 requests #39287 (issue: #37702)
Snapshot/Restore
Suggesters
Features/Ingest
- 添加HTML条形处理 #41888
Search
Data Frame
移除date_histogram group_by中的格式支持 #43659
Java 重大变化
Mapping
Search
重构IndexSearcherWrapper以禁止包装IndexSearcher #43645
弃用
Features/Java High Level REST Client
弃用xpack info api中的native code #43297
Mapping
Network
- 弃用传输配置文件安全性类型设置 #43237
Search
启用CommonTermsQuery和cutoff_frequency #42619 (issue: #37096)
新特性
Aggregations
- 添加RareTerms聚合 #35718 (issue: #20586)
Audit
Data Frame
- 添加 sync api #41800
Infra/Settings
- 一致性安全设置 #40416
Machine Learning
- 机器学习数据框架分析 #43544
Mapping
Ranking
- 将density_vector和sparse_vector移至模块 #43280
SQL
Search
- 通配符间隔 #43691 (issue: #43198)
添加prefix intervals来源 #43635 (issue: #43198)
7.3.0增强功能
7.4.0
7.4.0发布重点
重大变化
Infra/REST API
Machine Learning
- 实现数据框分析进度报告 #45856
Ranking
- 禁止vector函数文档值为空 #43944
Search
- vectors查询使用float替代double #46004
Snapshot/Restore
Transforms
- 在_stats中合并task_state和indexer_state #45276 (issue: #45201)
改进transform stats endpoint响应形式 #44350 (issue: #43767)
Java 重大变化
Geo
Network
停止在RestController中重新创建包装的处理程序 #44964
弃用
Geo
Infra/Core
- 捆绑采用OpenJDK 13 #46860
- 添加pidfile设置的弃用检查 #45939 (issues: #45938, #45940)
- 弃用pidfile设置 #45938
- 添加node.processors设置以支持处理器 #45855
- 设置处理器不推荐使用 #44889
Infra/Settings
Machine Learning
- 仅在数据Feed的job_id发生实际更改时才发出弃用警告 #44755
弃用更新datafeed的job_id的功能 #44691 (issue: #44615)
新特性
Aggregations
直方图和日期直方图中的支持范围字段 #45395
- 添加累积基数agg(和数据科学插件)#43661 (issue: #43550)
Analysis
Authentication
Authorization
- 为API密钥添加精细权限 #42020
Features/ILM
Features/Watcher
Geo
- [SPATIAL] 新的ShapeQueryBuilder用于查询索引的笛卡尔几何 #45108 (issue: #44980)
- [GEO] 新的ShapeFieldMapper用于索引笛卡尔几何 #44980
- 添加Circle处理器 #43851 (issue: #43554)
- 索引笛卡尔几何图形添加新的
shape
字段类型 #43644
Machine Learning
- 允许用户在Evaluate Data Frame请求中指定查询 #45775 (issue: #45729)
- 在data frame analytics _start上调用新的_estimate_memory_usage API endpoint #45536 (issues: #44699, #45544)
- HLRC 估算内存使用率API #45531 (issues: #44699, #45188)
改进 ml/data_frame/analytics/_estimate_memory_usage API endpoint #45188 (issue: #44699)
7.4.0增强功能
7.5.0
7.5.0发布重点
Enrich processor
添加新的enrich ingest processor可以使用来自另一个索引的数据来丰富文档
Shape support in SQL
适用于geo_shape的SQL功能现在将适用于7.4中引入的shape
字段类型
Snapshot lifecycle management retention
snapshot lifecycle management retention可以通过自定义策略的时间表自动删除较旧的快照
Pause cross-cluster replication
添加了用于cross-cluster replication新的pause和resume API endpoints,可以临时暂停自动跟随模式。
Machine learning classification analysis
Classification analysis是一种用于预测数据集中给定数据点的class或者category有监督的机器学习过程。例如,它可以确定电子邮件是否为垃圾邮件。与回归分析不同,分类用于预测离散的分类值,而回归分析可以预测连续的数值。 7.5.0引入了二进制分类,可以将数据点标记为两个可能的类别。重大变化
Search
添加在_index查询中支持别名 #46640 (issues: #23306, #34089)
Java 重大变化
弃用
Aggregations
弃用”index.max_adjacency_matrix_filters”设置 #46394 (issue: #46324)
Allocation
Mapping
Search
拒绝_index字段上的正则表达式查询 #46945 (issues: #34089, #46640)
新特性
Features/ILM+SLM
- 添加保留到快照生命周期管理 #46407 (issues: #38461, #43663, #45362)
Features/Ingest
Machine Learning
- 实现多类分类问题的evaluation API #47126 (issue: #46735)
- 实现新的分析类型classification #46537 (issue: #46735)
- 数据框架分析添加审核消息 #46521 (issue: #184)
- 实现DataFrameAnalyticsAuditMessage和DataFrameAnalyticsAuditor #45967
SQL
- SQL: 实现 DATEDIFF 函数 #47920 (issue: #47919)
- SQL: 实现 DATEADD 函数 #47747 (issue: #47746)
- SQL: 实现 DATE_PART 函数 #47206 (issue: #46372)
- SQL: 添加 DATE_TRUNC 函数别名 DATETRUNC #47173 (issue: #46473)
- SQL: 添加 PIVOT 支持 #46489
- SQL: 实现 DATE_TRUNC 函数 #46473 (issue: #46319)
7.5.0增强功能
7.6.0
7.6.0发布重点
New histogram field type
添加新的histogram field type 新的histogram
字段接受预先聚合的直方图,这些直方图以后可以直接在percentiles 和 percentile_ranks聚合中使用。用户可以在本地预聚合直方图数据,并且仅发送最终的数据结构,从而节省了存储空间和网络带宽,同时保留了像其他数据一样聚合数据的能力。
Optimized sorting on long field types
现在,在long
上进行排序会在内部重写为Lucene DistanceFeatureQuery。 这样,Elasticsearch可以跳过非竞争性匹配,通常可以提高查询速度。 在基准测试中,这使长字段的排序速度提高了10倍。
Simplifying and operationalizing machine learning
在7.6版本中,Elastic Stack提供了一条端到端的机器学习管道,提供了从原始数据到构建,测试以及在生产中部署机器学习模型的路径。 到目前为止,Elastic Stack中的机器学习主要通过使用复杂的模式识别构建可用于异常检测的时间序列模型的无监督技术。 借助新的数据框架分析,可以使用标记的数据来训练和测试模型,将这些模型存储为Elasticsearch索引,并使用inference根据训练后的模型将预测值添加到索引中。
在7.6中发布的一种打包模型是language identification。 如果文档或来源使用多种语言,则可以使用语言识别来确定文本的语言,从而可以提高整体搜索的相关性。 语言识别是一种经过训练的模型,可以提供任何文本字段的语言预测。
Cross-cluster search in transforms
Transforms可以对源索引使用跨集群搜索(CCS)。 现在可以让单独的集群(例如,项目集群)针对主要集群构建以实体为中心或要素索引。
Learn more
在Elasticsearch 7.6 release blog中获取有关这些功能的更多详细信息,有关增强功能和其他更改的完整列表,请查看Elasticsearch 7.6 release notes
重大变化
Mapping
添加集群设置以禁止在_id字段上加载fielddata #49166 (issues: #26472, #43599)
Java 重大变化
Security
在自定义Realms中支持Client和RoleMapping #50534 (issue: #48369)
弃用
Analysis
弃用并删除camel-case nGram 和 edgeNGram tokenizers #50862 (issue: #50561)
Authorization
- 弃用 kibana_user 和 kibana_dashboard_only_user roles #46456
Distributed
Features/Indices APIs
Infra/Core
Reindex
Search
- 更新vector script 函数签名 #48604
- 弃用sparse_vector字段类型 #48315
在搜索请求中添加有关分配意识的弃用警告 #48351 (issue: #43453)
新特性
Aggregations
- 实现string terms统计汇总 #47468
Analysis
Authentication
- 密码保护的密钥库(Feature Branch) #49210
Features/ILM+SLM
Features/Ingest
Machine Learning
- 分类评估实现
precision
andrecall
metrics #49671 (issue: #48759) - 解析数据框架分析API #49455
- 机器学习模型推论摄取处理器 #49052
- 实现多类别分类的准确性度量 #47772 (issue: #48759)
- 将特征重要性值添加到分类和回归结果 (using tree SHapley Additive exPlanation, or SHAP) #857
Mapping
Search
- 添加模糊间隔源 #49762 (issue: #49595)
添加侦听器以在本地跟踪搜索请求的进度 #49471 (issue: #49091)
7.6.0增强功能
7.7.0
7.7.0发布重点
重大变化
Highlighting
Infra/Core
Mapping
- 在8.0及更高版本上创建的索引中的动态映射在映射更新时具有更严格的验证,并导致对在Elasticsearch 7.7.0及更高版本中创建的索引产生弃用警告。 (例如,错误分析器设置或未知的字段类型) #51233 (issues: #17411, #24419)
Search
- 使范围查询舍入保持一致 #50237 (issue: #50009)
用于返回HTTP 500s /内部服务器错误的管道聚合验证错误现在返回400 / Bad Request #53669 现在返回验证错误列表,而不是返回遇到的第一个错误。
Java 重大变化
Infra/Core
修复ActionListener.map异常处理 #50886
Machine Learning
- 将预期的输入字段类型添加到经过训练的模型配置中 #53083
Transform
Authentication
Engine
Features/Features
Infra/Core
- 为侦听器线程池添加弃用检查 #53438 (issues: #53049, #53317)
- 弃用logstash enabled 设置 #53367
- 弃用listener thread pool #53266 (issue: #53049)
- 弃用创建dot-prefixed索引名称(隐藏索引和系统索引除外)#49959
Infra/REST API
Machine Learning
- 重命名inference处理器字段field_mappings为field_map #53433
Search
- 当TermsLookup包含类型时,发出弃用警告 #53731 (issue: #41059)
弃用BoolQueryBuilder的mustNot字段 #53125
新特性
Aggregations
top_metrics保留metric类型 #53288
top_metrics
agg中支持多种 metrics #52965 (issue: #51813)top_metrics
添加大小支持 #52662 (issue: #51813)- HLRC支持string_stats #52163
- 添加Boxplot聚合 #51948 (issue: #33112)
Analysis
- analysis-nori添加令牌过滤器nori_number #53583
Authentication
Geo
- 添加对shape queries的distance queries支持 #53468
- 添加对geo_shape queries的distance queries支持 #53466 (issues: #13351, #39237)
- 添加多点形状查询支持 #52564 (issue: #52133)
- 添加多点几何形状查询支持 #52133 (issue: #37318)
Infra/Core
Infra/Packaging
- 引入 aarch64 打包 #53914
Machine Learning
Mapping
- 引入
constant_keyword
字段 #49713
SQL
- 添加
constant_keyword
支持 #53241 (issue: #53016) - 添加 不等式的优化 #51088 (issue: #49637)
- 添加 支持在REST API调用中传递查询参数 #51029 (issue: #42916)
Search