Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Hosted full-text search options - IndexTank vs Solr vs Lucene

I am building an app using Ruby on Rails on Heroku and am confused about which full-text search option I should proceed with. A few things I care about:

  1. Real-Time search: I am building a dynamic user-generated website.
  2. Understands Rails Models: I would like to restrict search results based on who the user is (so, I don't really want "just" a site-wide search)

Additionally, something that is easy to configure on Heroku with Rails would be a bonus.

Heroku currently provides three options for full-text search: FlyingSphinx, Searchify IndexTank and WebSolr. Can anyone outline the pro's and cons of each.

Based on my research, it seems that a lot of people have been happy with IndexTank. In particular, this blog post by Gautam Rege briefly outlines his experience with the three options and how he prefers IndexTank.

However, after LinkedIn's acquisition of IndexTank, some key components of IndexTank were open-sourced and the IndexTank service discontinued. It seems that Searchify is one of the first few (if not, currently, the only) replacement for IndexTank. Does anyone have any experience using this? How does Searchify compare to IndexTank and the other two options - WebSolr and FlyingSphinx?

like image 859
Aayush Kumar Avatar asked Feb 28 '12 00:02

Aayush Kumar


1 Answers

I'll address your question with regards to Searchify/IndexTank:

  1. Searchify has true real-time indexing. The millisecond you add a document, it becomes searchable. No need to commit or reindex.

  2. There is a Ruby client library for Searchify, here are the docs & download links: http://www.searchify.com/documentation/ruby-client

There is also a nice 3rd party client by kidpollo called Tanker that some Ruby folks prefer: https://github.com/kidpollo/tanker

like image 120
Chris Lamprecht Avatar answered Oct 14 '22 18:10

Chris Lamprecht