8

At what point do I want to "upgrade" from the native Magento search engine to something like Apache SOLR, or a commercial product? Are there specific features I'd be looking for, or is it simply a function of traffic, SKU count, or something else?

  • Any movement on this? Anything I can do to help clarify an answer for you? Please update your question if you have more information that can help us close this out. – philwinkle Sep 6 '13 at 19:23
13

The distinguishing features of using Solr over the default Magento MySQL Fulltext engine are:

  • Weighted attributes (e.g. name is higher priority than description)
  • Fuzzy search capability (e.g "Did you mean?" functionality)
  • Spelling suggestion/correction
  • Indexing time
  • Speed, speed, speed (esp if you're using the ajax/lookahead search dropdown)
  • Category/layered navigation offloading

The community seems to lean toward Solr in general, though other search connectors have been made available.

3rd party search:

3rd party search products work in one of two ways: they replace your search and category pages with their own versions and typically host them under a subdomain on your site so as not to interfere with SEO (e.g. SLI), or, they iFrame search into your site (Picosearch). In my opinion I don't want my stores at the mercy of a 3rd party hosting on AWS; or worse yet on their own in-house datacenter.

I recently met a vendor wearing a funny hat who purportedly had a custom search tool who plugs into the Magento Solr connector but it runs as a SaaS cloud service with a control panel. This is not normally how the 3rd party search integrations work - I'm curious what the performance is like.

Timing/Deployment

There is no formula as to determine when to make the switch - when you should migrate is entirely up to you. Keep in mind it isn't a two-second implementation - your theme/plugins (especially any navigation plugins) may require tweaking or upgrading.

It's not going to give you miracle results overnight - like everything else in running your business it'll only be as good as the amount of time you invest into it. You will still likely have to have indexed fields with keywords you want to optimize for. You'll have to play with the weighting settings heavily, too. It's not an overnight fix.

A note about performance

The distinguishing feature of the Solr integration over fulltext really is that Magento can utilize Solr to offload the layered navigation and category page results rendering to it. Because Solr is so highly optimized it incurs very little overhead to do so. This is handy to mitigate traffic spikes and to spread your load across more than just your Apache servers.

| improve this answer | |
  • I think I know two 3rd party search providers, which are quite popular in Germany and offer a Magento module which forwards the query to a SaaS and gets back an list of product ids to be displayed in Magento. – Alex Aug 24 '13 at 12:34
  • Thank you very much for the thoughtful and detailed answer. I only have 30 products, and don't expect many more. I'm not sure if the benefit is there for me yet. Do I need a dedicated host to run SOLR, or can it coexist on the web server? (I suppose this is a different question) – Mark Richman Aug 26 '13 at 12:17
  • I tried running Solr using Tomcat6 on a really dinky VPS, we have ~50,000 products in our catalog and we'd usually hit a deadlock at around 18,000 solr documents. Really, it's best to run it on its own server but for 30 products it's a little overkill to justify the $500 dollars for the only decent Solr extension available and the resources to host Solr on an LAMP. I had really good luck with the extension recommended by Alex magento.stackexchange.com/a/24699/26736 – monosodiumgunnar Jun 22 '15 at 14:50
  • I should also add the Sphinx search can use MySQL without having to install Sphinx on a servlet which doesn't play well when the server is chrooting. That extension gives you the option to use an external server, internal, or even a Javascript. The only trade off is speed when indexing which is really poor when using MySQL. – monosodiumgunnar Jun 22 '15 at 14:54
4

SOLR is used by all the top stores and platforms including Magento EE and Hybris, it has Levenshtein Distance which provides up to 98% accurancy compare to Sphinx which gets in to the 60-80% accuracy range.

We use a SOLR install which costs $450 + $250 for the hosting per year, so if yo amortise it over three years ($450 + $250*3), at $400/yr and search is 5% of IT Spend and IT Spend is 5% of revenue, then you have $160,000 revenue per year where it makes sense to start using SOLR.

| improve this answer | |
  • Cite a source for your statistics, because otherwise its clear you've just made up your answer. SOLR is no better than Sphinx (and vice versa), they are two totally different technologies and each have their own benefits. There is absolutely no way to compare search engines that are so radically different in functionality. – choco-loo Oct 11 '14 at 19:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.