Search Lucene API

cpliakas - January 8, 2009 - 23:30
slapi.png

Overview

#D7CX: I pledge that Search Lucene API will have a full Drupal 7 release on the day that Drupal 7 is released.

Search Lucene API adds Solr-like search functionality to Drupal. Because it is built on top of the Zend Framework's PHP port of Lucene, neither Java nor any external services are required to use the module. Out of the box, the bundled Search Lucene Content module adds advanced features that the core content search lacks such as advanced Lucene query syntax, fielded sorting of search results, and finer-grained content bias settings. Search Lucene API also has the ability to integrate with existing Drupal word stemmers such as the Porter-Stemmer project, but unlike the core search module it correctly highlights the matches. Enabling the bundled Search Lucene Facets module adds faceted searching to your site, and the exposed hooks allow developers to add additional Lucene fields and facets with ease. Because Search Lucene API caches search results and facet displays, repeated queries are returned instantly with little resource consumption.

Search Lucene API is easy to install and configure, so it is a viable option for many sites. Even the smallest projects can benefit from an advanced search alternative, and doing so is as easy as downloading a small PHP library, enabling the module, and running cron. All indexes are binary compatible with Java Lucene, so you can use your favorite Java based diagnostic tools such as Luke for debugging and analysis.

Is this module right for you?

Search Lucene API targets small to medium sized web sites, usually with less than 5,000 nodes. Because this module is a fully integrated solution, all search processing is handled inside of Drupal and simply cannot scale to large volumes of data. Going forward, Search Lucene API will have the option to integrate with distributed search services such as Elastic Search, which have the potential of scaling up to millions of documents.

Due to limitations of PHP file locking, the Lucene index cannot be stored on NFS and many other networked systems. Storage platforms, such as Gluster, that support PHP file locking should work fine.

Related Projects

Maintainer

Search Lucene API is developed and maintained by Chris Pliakas. A special thanks to sethcohn and ebeyrent for their guidance and support on this project. Thanks to scotjam for his various contributions and help in the support forms.

Follow Chris on Twitter: @cpliakas

Installation

Due to Drupal's license policy regarding contributed modules, the Zend Framework components must be downloaded separately from Sourceforge.net and unpacked to the module's directory. No action other than downloading the correct version and unpacking them in the module's directory is required. For complete installation instructions, please visit the Installation page in the handbook documentation. For a great third-party installation tutorial complete with screenshots, visit the article by Ivan Zugec at zugec.com.

The following links point to the download location of the ZF components corresponding with the module version:

NOTE: Its OK that the library versions don't exactly match the module versions.

News

Search Lucene API 3.0: 2.0 is stable! All new features will be submitted against the 3.0 API. Search Lucene API 3.0 will introduce the concept of "adapters" so administrators can choose which Lucene backend to use, for example PHP Lucene (by the Zend Framework), Java Lucene, or ElasticSearch Lucene.

Press: See what people are saying about Search Lucene API.

Apache Solr Search Integration: I will be co-maintaining the DRUPAL-7--2 branch of Apache Solr Search Integration and have be charged with focusing on the API. This is a HUGE opportunity to consolidate the various Search APIs and pave the way for interchangeable search backends.

Search API consolidation: There is strong initiative to consolidate search APIs. Please check out http://groups.drupal.org/node/63523 and http://bit.ly/chqfOQ and support our efforts. Furthermore, the project by Young Hahn at http://bit.ly/biGjFs is attempting to accomplish a similar goal, so hopefully the efforts of that project will merge with this initiative.

Downloads

Recommended releases

Version Downloads Date Links
6.x-2.4 Download (74.01 KB) 2010-Jul-13 Notes
5.x-1.7 Download (41.93 KB) 2010-Jul-12 Notes

Other releases

Version Downloads Date Links
6.x-1.7 Download (41.13 KB) 2010-Jul-12 Notes


 
 

Drupal is a registered trademark of Dries Buytaert.