thinking-sphinx

Sphinx is a very fast search engine that indexes data and provides flexible
ways of searching it. Thinking Sphinx allows you to link up your models into
Sphinx simply and painlessly - because let’s face it, searching across
multiple fields using SQL is a pain in the neck.