Search Lucene API

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

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

Overview

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.

Related Projects

  • Search Lucene DidYouMean - Provides Google-like "did you mean" recommendations by detecting and correcting spelling errors based on the site's content.
  • Search Lucene MoreLikeThis - Adds a block that displays content recommendations based on the text in the node being viewed.
  • Search Lucene Tagcloud - Adds a facet realm that displays facets as tagadelic-like links.

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.

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.

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

After a great meeting with robertDouglass and the Apache Solr team in Paris, I look forward to more synergy between the two projects. This can only bring about positive changes for both Drupal search and the platform as a whole. Hopefully, the Apache Solr Tagcloud module will serve as a spring board for collaboration.

Release candidate: 6.x-2.0-beta5 is the last beta version before the release candidate stage. This is the last chance for new features to get into 2.0! Tasks for the 3.0 API have already been added to the issue queue.

2.0 Beta 4: The 6.x-2.0-beta4 release requires an upgrade of the ZF components. New users are encouraged to install 2.0 as opposed to 1.0 versions of the module.

Search Lucene API exposes bugs in core:
#592182: hook_requirements('install') called on unintended modules during Drupal install
#592800: Dependent modules are still installed when required modules return errors in hook_requirements('install')

Releases

Official releasesDateSizeLinksStatus
6.x-2.0-beta52009-Nov-1564.12 KBRecommended for 6.xThis is currently the recommended release for 6.x.
6.x-1.62009-Sep-2441.08 KBSupported for 6.xThis release is supported but is not currently the recommended release for 6.x.
5.x-1.62009-Sep-2441.89 KBRecommended for 5.xThis is currently the recommended release for 5.x.


 
 

Drupal is a registered trademark of Dries Buytaert.