Souhaitez-vous recevoir une certification Elastic ? Découvrez quand se déroulera la prochaine formation Elasticsearch Engineer ! Vous pouvez lancer un essai gratuit sur le cloud ou essayer Elastic sur votre machine locale dès maintenant.
Apache Lucene a connu une activité importante en 2024, avec de nombreuses versions, dont la première mise à jour majeure depuis trois ans, riche en améliorations et en nouvelles fonctionnalités. Examinons quelques-uns de ses principaux points forts.
Lucene & la communauté
La force d'un projet dépend de la communauté qui le soutient. Malgré plus de 20 ans de développement, le projet Lucene reste dynamique et prospère grâce à ses contributeurs passionnés et actifs.
En 2024, le projet Lucene a fait l'objet de plus de 2 000 modifications de la part de 98 contributeurs uniques, et de près de 800 demandes de modification. Le nombre de contributeurs continue de croître, avec de nouveaux committers et membres du PMC qui rejoignent le projet et contribuent à son succès.
Lucene 10
2024 a vu la première version majeure depuis près de 3 ans - Lucene 10, avec plus de 2 000 commits de 185 contributeurs uniques. Si le modèle de développement suivi par Lucene permet d'apporter de nombreuses améliorations et fonctionnalités dans des versions mineures, une version majeure offre la possibilité d'apporter des fonctionnalités plus importantes et des modernisations. Par exemple, Lucene 10 nécessite au minimum Java 21. L'augmentation de la version minimale de Java permet à Lucene de continuer à bénéficier des améliorations apportées par la version moderne de Java.
L'objectif principal de Lucene 10 est de mieux utiliser le matériel sur lequel il fonctionne. Jetons un coup d'œil rapide sur les principaux faits marquants :
- Plus de parallélisme dans les recherches - alors que l'exécution des recherches est déjà parallélisée entre les segments, nous allons maintenant plus loin, en parallélisant à l'intérieur des segments. Cela permet de dissocier la représentation sur disque des performances d'exécution, ce qui permet même à des segments uniques de bénéficier du nombre de cœurs des systèmes modernes.
- Meilleur parallélisme des E/S - le modèle d'E/S synchrone simple utilisé par Lucene a été amélioré grâce à une étape de préfixation. Cela permet d'informer le système d'exploitation qu'une région d'un fichier d'index sera nécessaire dans un avenir très proche, sans pour autant bloquer le thread appelant.
- Meilleure efficacité de l'unité centrale et du stockage grâce à l'indexation épar se - Lucene 10 introduit la prise en charge de l'indexation éparse, parfois appelée indexation par clé primaire ou indexation par zone dans d'autres magasins de données.
Pour plus d'informations sur Lucene 10, consultez l'article dédié à Lucene 10.
Recherche et innovation dans le domaine de Lucene
En 2024, Lucene a connu un essor de la recherche et de l'innovation, en particulier dans les domaines de l'intégration de l'apprentissage automatique, de la recherche vectorielle et de l'optimisation pour les ensembles de données à grande échelle, avec des références à 10 articles et publications de recherche distincts. Voici quelques-uns des principaux domaines de recherche et développements :
- Recherche vectorielle et prise en charge de l'intégration - Lucene offre une solution puissante et évolutive pour la recherche vectorielle, permettant la recherche sémantique à grande échelle. En tirant parti de la solide infrastructure d'indexation et de recherche de Lucene, les utilisateurs peuvent combiner le meilleur de la recherche textuelle traditionnelle avec les capacités avancées de la recherche vectorielle moderne, ce qui fait de Lucene une solution complète pour un large éventail de tâches de recherche et d'extraction d'informations.
- Modèles de recherche hybrides - La recherche s'est également penchée sur les techniques de recherche hybrides, Lucene combinant la recherche traditionnelle par mot-clé et la recherche moderne par vecteur. En fusionnant des index basés sur des termes avec des représentations vectorielles denses, Lucene peut fournir des résultats de recherche plus précis et plus pertinents sur le plan contextuel, comblant ainsi le fossé entre la précision des moteurs de recherche traditionnels et la flexibilité de la recherche sémantique.
Les efforts de recherche en cours en 2024 démontrent la capacité d'adaptation de Lucene à l'évolution des besoins des technologies de recherche modernes, en particulier dans le contexte de l'IA, de la recherche sémantique et des applications de big data. Le projet continue de se développer en tant que plateforme puissante, flexible et efficace pour les cas d'utilisation de la recherche traditionnelle et de pointe.
2024 versions de Lucene
Bien qu'il ne s'agisse pas d'un reflet exact, le simple volume des publications met en évidence le dévouement et l'énergie constants de la communauté. Ces mises à jour comprennent des améliorations majeures des performances et de l'efficacité de la recherche vectorielle, la prise en charge de madvise, des optimisations pour le décodage des listes d'écritures, des améliorations supplémentaires de la vitesse grâce à SIMD, et bien d'autres choses encore.
Voici la liste complète des sorties :
- 10.1.0 (2024-12-20)
- 9.12.1 (2024-12-13)
- 10.0.0 (2024-10-14)
- 9.12.0 (2024-09-28)
- 8.11.4 (2024-09-24)
- 9.11.1 (2024-06-27)
- 9.11.0 (2024-06-06)
- 9.10.0 (2024-02-20)
- 8.11.3 (2024-02-08)
- 9.9.2 (2024-01-29)
Vous pouvez trouver plus d'informations et les notes de version sur la page Lucene Core. En outre, il existe des versions équivalentes de PyLucene.
Conclusion
Alors que Lucene arrive à maturité, il continue de prospérer grâce à sa communauté dévouée et dynamique. Comme nous l'avons vu, 2024 a été une année incroyablement productive, et nous nous tournons maintenant vers les développements passionnants que 2025 apportera.




