Elasticsearch:2023 年 Lucene 领域发生了什么?

作者:来自 Elastic Adrien Grand

2023 年刚刚结束,又是 Apache Lucene 开发活跃的一年。 让我们花点时间回顾一下去年的亮点。

社区

2023 年,有:

  • 5 个次要版本(9.5、9.6、9.7、9.8 和 9.9),
  • 1 个补丁版本 (9.9.1),
  • 1 个新提交者,
  • 4 名新 PMC 成员,

来自 97 位独特贡献者的 620 项提交。

向量搜索

真正的语义搜索检索和检索增强生成的承诺对大大小小的用户都极具吸引力。 因此,向量搜索成为 2023 年 Apache Lucene 的主要主题也就不足为奇了。更具体地说,在多个版本中添加了许多有趣的功能和优化:

  • 支持 int8 向量。 (Lucene 9.5)
  • 更快地合并 HNSW 图。 (Lucene 9.6)
  • 通过支持向量化 (Lucene 9.7) 和 FMA (Lucene 9.9) 加快索引、合并和查询速度。
  • 支持将向量搜索与块连接相结合。 (Lucene 9.8)
  • 支持索引时向量的自动 int8 标量量化。 (Lucene 9.9)

基数排序随处可见

索引是指以一种可以在搜索时有效访问数据的方式组织数据,这在实践中涉及大量排序。 当谈到排序时,基数排序 (radix sort) 是王道(如果适用的话!)。 Lucene 已经在一些性能敏感的地方使用基数排序有一段时间了,例如对段的术语字典进行排序。 但基数排序的使用在 2023 年进一步增加,并开始用于优化:

  • 应用于删除,
  • 启用索引排序时对 sorting postings 排序,
  • TermInSetQuery 构造,
  • 索引重新排序。

更快的查询评估

我们已经介绍了向量搜索的一些性能改进,但关键字搜索在 2023 年也出现了重大加速。请查看此博客,其中介绍了 9.7、9.8 和 9.9 版本中发生的主要加速。 这些改进既适用于传统关键字搜索,也适用于稀疏向量搜索,例如由学习的稀疏检索模型创建的搜索。

与 Java 虚拟机更紧密的集成

作为一个 Java 库,Lucene 很大程度上依赖于 Java 虚拟机 (JVM),并且偶尔会发布 Lucene 特别感兴趣的新功能。 特别集成了两个功能,如果你在足够现代的 JVM 版本上运行,那么它们将被自动使用:

  • Panama vector API 用于加速向量比较,例如计算两个向量之间的余弦相似度或平方距离。
  • Panama MemorySegment API 是一个改进的 API,用于将文件映射到内存中。

很难划清界限,但我会在这里停下来,因为我正在努力寻找 2023 年发生的其他良好变化的共同主题。:) 请继续关注 Apache Lucene 领域上的美好 2024 年!

原文:What happened in Lucene land in 2023? — Elastic Search Labs

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/342171.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【CSP-J/S】复赛注意事项 上机文件组织形式

每年 CSP-J/S 复赛都有很多同学因为一些小失误导致一年的努力付之东流。Tony老师整理了一些复赛容易踩坑的点,或许对你有帮助! 一、文件的输入输出 CSP、NOIP复赛与我们平时在Online Judge做题形式会有一些区别,需要我们将文件放入规定的地…

基于模糊PID控制器的风力温度控制系统simulink建模与仿真

目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 4.1 模糊逻辑控制原理 4.2 PID控制原理 4.3 模糊PID控制器原理 4.4 整体系统概述 5.完整工程文件 1.课题概述 当房间的温度不能保持目标温度时,这个系统中的某个部件肯定出现问题了&#x…

flink学习之窗口处理函数

窗口处理函数 什么是窗口处理函数 Flink 本身提供了多层 API,DataStream API 只是中间的一环,在更底层,我们可以不定义任何具体的算子(比如 map(),filter(),或者 window()),而只是…

怎么缩小动图的大小?一分钟快速压缩gif体积

GIF动图是一种使用GIF文件格式创建的动画图像。GIF是一种常见的图像文件格式,它支持多帧图像以形成连续播放的动画效果。与其他图像格式只能表示静态图像不同,GIF格式可以存储多个图像帧,并通过在特定时间间隔内循环播放这些帧来创建动画效果…

Instagram被停用怎么办?2024年ins停权最新解决方法

大家有没有遇到过 Instagram 账号突然无缘无故消失的情况?这很有可能是 Instagram 无故禁用了你的账号,面对 Instagram 账号突然被停用的情况,许多用户都感到困惑和无助。这个问题可能影响到你的社交生活,甚至是商业活动。但别担心…

写给不耐烦程序员的 JavaScript 指南(五)

第七部分:集合 原文:exploringjs.com/impatient-js/pt_collections.html 译者:飞龙 协议:CC BY-NC-SA 4.0 下一步:30 同步迭代 三十、同步迭代 原文:exploringjs.com/impatient-js/ch_sync-iteration.htm…

【开源】基于JAVA的人事管理系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 管理员功能模块2.2 普通员工功能模块2.3 答辩文案 三、系统展示四、核心代码4.1 查询职称4.2 新增留言回复4.3 工资申请4.4 工资审核4.5 员工请假 五、免责说明 一、摘要 1.1 项目介绍 基于JAVAVueSpringBootMySQL的人…

制造领域 物料清单(BOM)与零件明细表的区别

有许多人分不清物料清单(BOM)与零件明细表的区别,其实它们在企业的生产管理软件中起着不同的作用,各有各的特色,但是却有不尽相同。接下来我们就来区分一下吧 物料清单(BOM),是详细记录一个项目所用到的所有下阶材料及相关属性,亦即母件与所有子件的从属…

【2024-01-22】某极验3流程分析-滑块验证码

声明:该专栏涉及的所有案例均为学习使用,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!如有侵权,请私信联系本人删帖! 文章目录 一、前言二、抓包流程分析1.刷新页面2.点击按钮进行验证…

第二证券:暴跌超24%!美农产品贸易巨头一夜蒸发超600亿

当地时刻1月22日,美股三大股指集体收涨,道指与标普500指数再创前史新高,道指初次收在38000点上方。到收盘,道指涨0.36%,标普500指数涨0.22%,纳指涨0.32%。 大型科技股涨跌不一,其中&#xff0c…

Netty篇章(1)—— 核心原理介绍

终于进入到Netty框架的环节了,前面介绍了大量的Java-NIO的内容,核心的内容Selector、Channel、Buffer、Reactor掌握了,那么学起来Netty也是水到渠成的事情。如果没有掌握前面的内容那么学Netty会非常吃力,下面讲解Netty核心原理与…

Python - argparse模块

python中的argparse模块,用于命令后参数解析,方便测试,是python中自带的模块。 可以自动生成帮助文档,和使用手册。而且当用户在执行程序的时候,输入无效的参数时,会给出对应的错误信息。 使用方法&#…

C++学习笔记——指针

1,指针的基本概念 指针的作用:可以通过指针间接访问内存 内存的编号是从0开始记录的,一般用十六进制数字表示可以利用指针变量保存地址 上图中的p就是a变量的指针,也可以记作*a 2,指针变量的定义和使用 指针变量定…

k8s使用ingress实现应用的灰度发布升级

v1是1.14.0版本nginx ,实操时候升级到v2是1.20.0版本nginx,来测试灰度发布实现过程 一、方案:使用ingress实现应用的灰度发布 1、服务端:正常版本v1,灰度升级版本v2 2、客户端:带有请求头versionv2标识的请求访问版…

头条文章采集ChatGPT4.0改写软件环境配置教程步骤

大家好,我是淘小白~ 下面给大家整理一下,ChatGPT4.0改写软件环境配置教程 下面是我们拿到的环境配置软件,分别是:117版本的谷歌浏览器,谷歌浏览器驱动,notepad(用于打开config.ini&#xff0c…

由于找不到msvcp140.dll无法继续执行的5种解决方法

在计算机系统中,如果未能成功找到或加载msvcp140.dll这个动态链接库文件,可能会引发一系列运行问题和功能障碍。msvcp140.dll是Microsoft Visual C Redistributable Package的一部分,对于许多基于Windows的应用程序来说,它是至关重…

ASP.NET Core 高级之使用Redis缓存

阅读本文你的收获 了解Redis基本作用及其使用场景学会安装Redis服务端和客户端及简单的命令行操作学习在ASP.NET Core WebAPI项目中如何操作Redis缓存 一、Redis介绍 Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选持久性的键…

全国各城市绿地及绿化面积数据,shp/excel格式,2020-2022年

基本信息. 数据名称: 全国各城市绿地及绿化面积数据 数据格式: Shp、excel 数据时间: 2020-2022年 数据几何类型: 面 数据坐标系: WGS84 数据来源:网络公开数据 数据字段: 序号字段名称字段说明1province省份名称2city城市名称4city_dm城市…

通过浏览器URL地址,5分钟内渗透你的网站!很刑很可拷!

今天我来带大家简单渗透一个小破站,通过这个案例,让你深入了解为什么很多公司都需要紧急修复各个中间件的漏洞以及进行URL解析拦截等重要操作。这些措施的目的是为了保护网站和系统的安全性。如果不及时升级和修复漏洞,你就等着被黑客攻击吧&…

使用Python自动化操作手机,自动执行常见任务,例如滑动手势、呼叫、发送短信等等

使用Python自动化操作手机,自动执行常见任务,例如滑动手势、呼叫、发送短信等等。 此自动化脚本将帮助你使用 Python 中的 Android 调试桥 (ADB) 自动化你的智能手机。下面我将展示如何自动执行常见任务,例如滑动手势、呼叫、发送短信等等。 您可以了解有关 ADB 的更多信息,…