Apache Lucene is an information retrieval library for applications that need to index and search text and other structured information. It provides the underlying search technology used by numerous search servers and document retrieval systems.
Lucene manages inverted indexes and provides APIs for adding documents, searching indexed fields and ranking results according to their relevance. Unlike a complete search server, it is intended to be integrated into applications rather than operated as a standalone service.
The library supports a wide range of search operations, including Boolean expressions, phrase and proximity queries, filtering and relevance-based retrieval. It also provides facilities for faceted navigation, spelling suggestions and highlighting matching terms in search results.
Lucene can index numerical and vector data alongside textual information. This enables applications to combine conventional document retrieval with nearest-neighbour search over high-dimensional vectors.
Developers can customise analysis, ranking and storage behaviour to suit different document collections and retrieval requirements.
This is free and open source software.
Key Features
- High-performance incremental document indexing.
- Inverted indexes for efficient full-text retrieval.
- Fielded searches across structured document information.
- Boolean, phrase, proximity, wildcard and range queries.
- Relevance ranking with BM25 and other scoring models.
- Nearest-neighbour search over high-dimensional vectors.
- Support for combining lexical and vector-based retrieval.
- Faceted navigation, result grouping and highlighting.
- Text analysis with configurable tokenisers and filters.
- Stemming, synonym handling and language-aware processing.
- Spelling correction and query suggestions.
- Concurrent indexing and searching with near real-time readers.
- Configurable index codecs and storage structures.
- Search across multiple indexes and merge the results.
- Cross-platform support – runs on Linux, macOS, and Windows.
Website: lucene.apache.org/core
Support:
Developer: Apache Software Foundation
License: Apache License 2.0
Apache Lucene is written in Java. Learn Java with our recommended free books and free tutorials.
Related Software
| Search Engines for Big Data | |
|---|---|
| ElasticSearch | Flexible and powerful distributed RESTful search engine and analytics |
| Solr | Search engine server that uses Lucene |
| Lucene | Search engine library |
| Quickwit | Cloud-native search engine |
| MeiliSearch | Easy to use and deploy search engine |
| OpenSearch | Enterprise-grade search and observability suite |
| Sphinx | Search engine designed with indexing database content in mind |
| Xapian | Probabilistic information retrieval library |
| Typesense | Fast, typo-tolerant search engine |
| Manticore Search | Easy to use fast database for search |
| RediSearch | Query and indexing engine for Redis |
| ParadeDB | PostgreSQL extension adding search and analytical capabilities to Postgres |
| Vespa | AI search platform |
| Mroonga | MySQL storage engine based on the Groonga search engine |
| PGroonga | Adds a Groonga-powered index access method |
| Groonga | Fulltext search engine and column store |
Read our verdict in the software roundup.
| Natural Language Processing | |
|---|---|
| PyTorch-Transformers | Library of state-of-the-art pre-trained models |
| Natural Language Toolkit | Suite of open source Python modules, data sets and tutorials |
| Stanford CoreNLP | Extensible annotation-based NLP pipeline |
| spaCy | Industrial strength natural language processing |
| scikit-learn | Machine learning library for Python |
| Gensim | Python-based vector space modeling and topic modeling toolkit |
| flair | Simple framework for state-of-the-art NLP |
| Apache OpenNLP | Machine learning based toolkit |
| DL4J | Deploy and train deep learning models |
| Apache Lucene | Full-featured information retrieval software library |
| UIMA | Implementation of the UIMA specification |
| tidytext | Text mining using dplyr, ggplot2, and other tidy tools |
| text2vec | Framework with API for text analysis and NLP |
| quanteda | R package for Quantitative Analysis of Textual Data |
| Moses | Statistical machine translation system |
Read our verdict in the software roundup.
| Java Natural Language Processing Tools | |
|---|---|
| CoreNLP | Annotation-based NLP pipeline that provides core natural language analysis |
| OpenNLP | Machine learning based toolkit |
| DL4J | Deploy and train deep learning models |
| Lucene | High-performance, full-featured information retrieval software library |
| UIMA | Open source implementation of the UIMA specification |
| Tika | Content analysis toolkit |
| MALLET | Statistical natural language processing, document classification and more |
| GATE | Full-lifecycle solution for a broad range of NLP tasks |
| ReVerb | Automatically identifies and extracts binary relationships from sentences |
| NLP4J | NLP framework for JVM languages |
| CogComp-NLP | State-of-the-art Natural Language Processing (NLP) tools |
Read our verdict in the software roundup.
LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more. Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion. Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README. |


Please read our Comment Policy before commenting.