A high-performance, full-featured text search engine library written entirely in Java

What is Lucene?

Lucene Core, our flagship sub-project, provides Java-based indexing and search technology, as well as spellchecking, hit highlighting and advanced analysis/tokenization capabilities.

Lucene is a tool in the Search Engines category of a tech stack.

Who Uses Lucene?

30 companies use Lucene including Twitter, Evernote, and Kifi.

Lucene integrates with

Why people like Lucene

Here’s a list of reasons why companies and developers use Lucene.

Add a one-liner

Lucene's Features

  • over 150GB/hour on modern hardware
  • small RAM requirements -- only 1MB heap
  • incremental indexing as fast as batch indexing
  • index size roughly 20-30% the size of text indexed
  • ranked searching -- best results returned first
  • many powerful query types: phrase queries, wildcard queries, proximity queries, range queries
  • fielded searching (e.g. title, author, contents)
  • sorting by any field
  • multiple-index searching with merged results
  • allows simultaneous update and searching
  • flexible faceting, highlighting, joins and result grouping
  • fast, memory-efficient and typo-tolerant suggesters
  • pluggable ranking models, including the Vector Space Model and Okapi BM25
  • configurable storage engine (codecs)

Lucene's alternatives

  • Solr - An open source enterprise search server based on Lucene search library, with XML/HTTP and JSON APIs, hit highlighting, faceted search, caching, replication etc.
  • Sphinx - Open source full text search server, designed from the ground up with performance, relevance (aka search quality), and integration simplicity in mind
  • Searchkick - Intelligent search made easy

See all alternatives to Lucene