当前位置: 首页 > article >正文

Apache Lucene 9.9,有史以来最快的 Lucene 版本

作者:Adrien Grand

Apache Lucene 的开发一直充满活力,但在过去的几个月中,查询评估的优化数量特别多。 没有一项优化是可以单独挑选出来的,而是围绕机械同情心(对底层硬件和系统特性的理解是通过多方面的改进来实现的,而不是依赖于单一的优化方法)和改进算法的许多改进的组合。

这里特别有趣的是,这些优化不仅有利于一些非常具体的情况,它们还转化为 Lucene 夜间基准测试的实际加速,旨在跟踪代表现实世界的查询的性能。 只需将鼠标悬停在注释上即可查看加速(或有时减速!)来自何处。 顺便说一句,特别感谢 Mike McCandless 近 13 年来一直在自己的时间和硬件上维护 Lucene 的夜间基准!

以下是夜间基准测试在 Lucene 9.6(2023 年 5 月)和 Lucene 9.9(2023 年 12 月)之间观察到的一些加速:

  • AndHighHigh: 35% faster
  • AndHighMed: 15% faster
  • OrHighHigh: 60% faster
  • OrHighMed: 38% faster
  • CountAndHighHigh: 15% faster
  • CountAndHighMed: 11% faster
  • CountOrHighHigh: 145% faster
  • CountOrHighMed: 155% faster
  • TermDTSort: 24% faster
  • TermTitleSort: 290% faster (not a typo!)
  • TermMonthSort: 7% faster
  • DayOfYearSort: 25% faster
  • VectorSearch: 5% faster

如果你对这些更改感到好奇,以下是描述我们应用的一些优化的资源:

  • 使用许多和/或高频术语(注释 FK)为 top-k 查询带来加速
  • 使用 block-max MAXSCORE 进行更多跳跃(注释 FU)
  • 使用 SIMD 指令加速向量搜索
  • FMA 式向量相似度计算

Lucene 9.9 刚刚发布,预计将集成到很快发布的 Elasticsearch 8.12 中。 敬请关注!

原文:Apache Lucene 9.9, the fastest Lucene release ever — Elastic Search Labs


http://www.kler.cn/a/162922.html

相关文章:

  • nginx配置负载均衡详解
  • 界面控件Kendo UI for Angular中文教程:如何构建带图表的仪表板?(一)
  • 应用程序部署(IIS的相关使用,sql server的相关使用)
  • 【MySQL】数据库表连接简明解释
  • Qt 实现文件监控程序
  • Ue5 umg学习(一)
  • Python:核心知识点整理大全7-笔记
  • [网鼎杯 2020 朱雀组]phpweb1
  • 信号量的使用和注意事项
  • 机器连接和工业边缘计算
  • 使用高防IP防护有哪些优势
  • 【华为OD题库-060】增强的strstr-java
  • 【ET8】3.ET8入门-一个简单示例
  • 计算机基础知识67--BBS
  • springboot 极简案例
  • 算法与数据结构--最短路径Dijkstra算法
  • c 把6*10 的char 数组扩充到8*12, 为图像帧分隔成8*8准备
  • uniapp开发小程序经验记录
  • 机器人纯阻抗控制接触刚性环境
  • 如何在Python中使用一行代码编写for循环
  • HarmonyOS应用开发工具DevEco Studio安装与使用
  • 【Vue】修改组件样式并动态添加样式
  • 初学vue3与ts:vue3选项式api获取当前路由地址
  • linux云服务器开启防火墙注意事件
  • 智能优化算法应用:基于食肉植物算法无线传感器网络(WSN)覆盖优化 - 附代码
  • 酿酒生产废水处理的设备需要哪些