How I Wrote a Search Engine in 6 Weeks
embought.com
embought.com
I founded a search engine (web, images, video and business search) now in Alpha, with limited resources as well; trust me I know how hard it is.
Simple questions, how good is your crawler? (You shouldn’t implement a scheme for each web site, though I understand for your business it kinda make sense)
How much information do you have in your repository? (You should consider data in TB if not you are still far from any trouble) Ferret is a great indexing tool but how much data can it index? How scalable is it? Looking at the tech behind Ferret, how much resource does it use? How good is your relevancy model? (This question is tightly link to your indexing)
I loved your idea, Just one thing: work on the relevancy again; I searched for ‘ruby on rails’ and got ‘ruby’ only related results first the <relevant ones> after. Also I will suggest you cache images to enhance user experience. Please don’t take my review personal.
As was mentioned in another comment I'm looking into other, more long term, indexing solutions (possibly SOLR), so hopefully that will help in the relevancy area. I'm also working on an in-house ranking algo to better sort results.
I appreciate your feedback.
For doing product search at the few-hundred-thousand-item scale, I would suggest SOLR rather than Nutch from the Lucene family.
You'd need to do your own crawling/scraping, but the indexing is solid, simple, and flexible. (SOLR's pedigree is from CNET's own product search.)
a. You wrote a crawler, not a search engine.
b. Ferret will bite you in the ass.
c. For a really good off the shelf crawler, look at Heretrix.I don't use Ferret myself (I tried it once; it seemed pretty good) but I'm very well read in the Ruby community (I run Ruby Inside and RubyFlow) and I've seen more than enough people saying bad things about Ferret, how it corrupted their indexes, concurrency issues, and what not, to personally avoid it. Solr and Sphinx seem to get a far better rap.
..
I should add that I had a play with your site after reading your article, and it's pretty good. There's a lot of trash out there in this field and you've pulled together a good site. Kudos.