Elasticsearch 7.3.0发布:基于Lucene 8.1.0的Elasticsearch 7.3.0
今天我们很高兴地宣布发布基于Lucene 8.1.0的Elasticsearch 7.3.0。这是最新的稳定版本,已经可以通过我们的Elasticsearch Service进行部署。
7.x中的最新稳定版本:
数据帧——转换和透视流数据
数据帧转换是Elasticsearch中的一个核心新特性,它允许您将现有索引转换为次要的汇总索引。数据框架转换使您能够透视数据并创建以实体为中心的索引,这些索引可以总结实体的行为。这将数据组织成便于分析的格式。
数据帧转换最初在7.2中可用。在7.3中,它们现在既可以作为单个批处理转换运行,也可以在接收新数据时持续合并新数据。
假设您正在流媒体审计日志事件,这些事件来自数据中心中许多不同的主机,您希望分析用户行为,以发现任何可疑的东西。使用数据帧,您可以按用户、主机和工作日对日志事件进行分组。因此,对于每个用户,您都有按请求类型分组的每个服务器的交互计数。通过实体组织数据并总结许多事件,可以更容易地运行不同的数值分析模型并发现异常行为。
数据帧允许机器学习分析的新可能性(例如异常值检测,它可能与上面的安全示例完美匹配),但是它们对于其他类型的可视化或自定义类型的分析也很有用。我们很想知道用户使用这个特性的目的。
数据帧转换在一个免费的基本许可下作为beta发布。
提高搜索量
Elasticsearch用于搜索,下面是我们在7.3中发布的一些令人兴奋的新搜索功能。
发现最不频繁的值
我们添加了一个全新的rare_terms聚合,它使用了一种具有可预测结果的资源高效算法。它是一个聚合,用于标识关键字的长尾,例如doc计数较低的术语。从技术角度看,rare terms聚合通过维护一个包含与每个值关联的计数器的术语映射来工作。计数器在每次标识项时递增。如果计数器超过预定义的阈值,则从映射中删除该术语并将其插入布谷鸟过滤器。如果在布谷鸟过滤器中发现一个未来的词,我们假设它以前已经从地图中删除,并且是“常见的”。这种聚合比另一种方法(将术语聚合设置为size: MAX_LONG)更节省内存,或者按升序计数对术语聚合进行排序(其中错误是无界的)。
罕见术语聚合有多个用例;例如,SIEM用户经常对很少发生的事件感兴趣,这些事件有时被怀疑是安全事件的表现形式。
用于文档脚本评分的内置向量相似性函数
有许多流行的算法代表矢量记录(例如word2vec和卷积神经网络),它们允许将矢量相似性作为记录相似性的度量。在此版本中,我们添加了两个预定义函数,用于计算给定查询向量和文档向量之间的向量相似性:
- 余弦相似度
- 点产品相似性
这些是矢量比较中最常用的两种距离函数。我们将这些作为无痛脚本函数发布,因此用户可以充分灵活地在相关性排名中结合其他字段使用它们。用户可以使用这些无痛功能通过script_score查询进行评分。我们计划在未来的版本中发布额外的矢量相似度函数,例如欧氏距离和曼哈顿距离,因为这些矢量相似度函数中的每一个都证明了特定场景的优越性。
我们的一些用户使用Elasticsearch作为其机器学习算法的数据源,并且一直在请求此类功能。我们很高兴看到社区现在将通过引入此功能为Elasticsearch找到什么新颖用途。
此实验功能在免费的基本许可下发布。
改进了间隔查询
在7.0中,我们引入了区间查询。当用户想要查找单词或短语彼此相距一定距离的记录时,使用此查询。它以易于定义的语法提供高级搜索选项,并产生准确的结果。
区间查询非常适用于法律和专利搜索等用例。7.3版包括对间隔查询的两个重要补充:
- 间隔查询中的wildcard规则允许与通配符(*和?)定义的一组术语相关,以及选择将使用的分析器。
- 该prefix规则允许定义以特定字母开头的术语之间的间隔,可选择专门为前缀编制索引或将查询扩展限制为128个替代术语。
现在,间隔查询接近跨度查询的特征奇偶校验,用户可以切换到法律和专利搜索等区间查询。
有效处理具有大量动态字段的记录
新的展平对象字段 将允许将整个平面JSON对象编入索引到单个字段中。这对于文档包含大量字段(例如HTTP标头或图像元数据)的情况非常有用。展平对象的子字段与关键字字段的行为几乎完全相同,因此只允许基本查询和聚合(不支持数值范围查询,全文搜索或突出显示)。在7.3之前,必须将具有大量字段的记录索引到单独的字段中,这可以极大地增加映射的数量,使映射更难以管理并增加集群状态的大小。
在免费的基本许可下发布对扁平对象类型的支持。
更新索引同义词列表,没有索引停机时间
使用此功能,搜索分析器使用的同义词过滤器可以快速灵活地更新。例如,电子商务企业可以灵活地添加新的同义词以验证新产品与用户的查询相关联,并且不返回空的结果集。使用新的Reload Search Analyzers API,更新同义词过滤器只需要将文件放在节点上并调用Reload Search Analyzers API,它可以加载搜索分析器而无需重新启动索引分片。这使用户能够更新每个索引的同义词,而无需搜索和索引停机时间(索引关闭和重新打开)。
此实验性功能是在免费的基本许可下发布的。
坚持下去,我们有更酷的东西
7.3不仅仅是关于改进的搜索功能,它还包括许多其他新的细节。
刚注册投票的新型主节点
Elasticsearch 7.0引入了一个新的集群协调层,其中包含了许多改进,包括更快的主选举,删除minimum_master_nodes设置以及使用形式化方法进行设计验证。Elasticsearch 7.0中的新集群协调层还有另一个重要优势:它可以用作Elasticsearch中重要改进的基础,例如仅限投票的符合主节点的节点。仅投票的符合主要条件的节点是可以参与主选举的节点,但不会在集群中充当主节点(它只在选举中投票)。通过仅在选举中投票,可以使用更小的机器,并且集群需要更少的硬件资源。转到Elasticsearch文档有关在Elasticsearch 7.3中设置仅限投票主资格的节点的说明。
仅限投票的符合主要条件的节点可在免费的基本许可下使用。
别名可以穿越群集
跨群集复制(CCR)作为Elasticsearch 6.7中的GA功能发布。CCR具有各种用例,包括跨数据中心和跨区域复制,复制数据以更接近应用程序服务器和用户,以及维护从大量较小集群复制的集中式报告集群。Elasticsearch 7.3包含额外的CCR功能,以确保在领导者索引上操作的别名被复制到跟随者索引。注意:此过程忽略写入别名,因为跟随者索引不接收直接写入,因此写入别名没有用处。
SQL查询支持API客户端和JDBC / ODBC驱动程序的冻结索引
此功能允许通过专用SQL语法扩展查询冻结索引。冻结索引是保存不经常搜索的旧数据并以低成本执行此操作的超级有效方法。由于用户经常不会在其“正常”查询中包含冻结索引,因此在使用SQL时,您需要明确请求包含冻结索引。这可以通过使用FROZEN保留字来完成,例如。 SELECT * FROM FROZEN myIndex LIMIT 10;
GUI支持快照恢复和删除
Elasticsearch管理UI(Kibana> Management> Elasticsearch)不断发展。在此版本中,我们增强了以前发布的“ 快照存储库”部分,现在称为“快照和还原”,可以从现有快照还原。快照还原向导将指导您完成定义还原任务。可以在“还原状态”视图中跟踪当前正在运行的还原的进度。现在还可以从UI中删除快照。有关这些增强功能的详细信息,请参阅快照和还原。
此UI功能在免费的基本许可下发布。
使用离群值检测发现最不寻常的数据
异常检测的目标是在索引中找到最不寻常的数据点。我们分析每个数据点(索引中的文档)的数字字段,并用它们的异常来注释它们。
我们使用无监督异常值检测,这意味着不需要提供训练数据集来教授异常值检测以识别异常值。在实践中,这是通过使用基于距离和基于密度的技术的集合来识别与索引中的大量数据最不同的那些数据点来实现的。我们为每个分析的数据点分配一个异常值分数,该分数用于捕获实体与索引中其他实体的差异。
除了新的离群值检测功能外,我们还推出了Evaluate API,使用户能够计算一系列性能指标,如混淆矩阵,精度,召回率,接收器操作特性(ROC)曲线以及ROC下的面积。曲线。如果您对已经标记为指示哪些点确实是异常值且哪些是正常的源索引运行异常检测,则可以使用Evaluate API来评估数据集上异常值检测分析的性能。