Frequently Asked Questions (FAQ) About Using Solr with Magento Enterprise Edition (EE)

Table of Contents

What versions of Magento EE and Solr are supported?

See the Support Matrix.

I want to use Solr 3.6.0. What versions of Magento EE support it?

Magento EE versions 1.10.1.1 and later support Solr 3.6.0; however, you'll probably need to contact Magento Support to get a patch, especially if you're running a version of EE earlier than 1.13.0.0.

What Patches Are Available from Magento Support?

Magento Support has several patches available for working with Solr. To determine if a patch is available for your version of EE, see Information About Magento Enterprise Edition (EE) Solr Patches.

How to get a patch if you need one:

  1. Log in to magentocommerce.com with your Enterprise Edition user name and password.
  2. At the top of the page, click My Account > your-username.
  3. In the left pane, click Downloads.
  4. In the center pane, click Magento Enterprise Edition > Support Patches.
  5. Click the link corresponding to the EE version for which you need a patch.
  6. Follow the prompts on your screen to download the patch, read about bugs fixed in the patch, or get instructions on how to install the patch.
  7. What are the advantages of using Solr with Magento EE?

    Solr is a fast, open source, customizable search engine you can use with Magento to provide the following features not found with the out-of-the-box MySQL full text search engine:

  • Tips if a user's search term returned no results
  • Attribute-based relevancy weighting
  • Search for localized characters
  • Return results based on delimiters (for example, searching for spider man or spiderman return spider-man)

In addition:

  • Magento ships with a sample Solr configuration that enables you to experiment with Solr without programming. (The sample configuration should not be used in production, however. Use it to familiarize yourself with Solr.)
  • You get better performance of search, catalog views, and layered navigation.
  • When the system is under load, Solr avoids frequent updates of the MySQL catalogsearch_fulltext table and alleviates issues with database table locks.

What features does Solr offer that MySQL full text does not?

  • Tips if a user's search term returned no results
  • Attribute-based weighting
  • Search for localized characters
  • Return results based on delimiters (for example, searching for spider man or spiderman return spider-man)

What languages are supported?

Following is a partial list of supported languages: Arabic, Brazilian, Portuguese, Bulgarian, Chinese, Japanese, Korean, Czech, Danish, Dutch, English, Finnish, French, German, Hindi, Hungarian, Indonesian, Italian, Norwegian, Persian/Farsi, Portuguese, Romanian, Russian, Spanish, Swedish, Thai, Turkish.

For more information, see the Solr wiki.

How do Solr and MySQL search coexist in Magento? How do they each work?

  • Solr, if enabled, indexes content in your web store only
  • Search and sorting in the Admin Panel uses MySQL search only
  • In the event the Solr server stops responding or becomes disabled for some other reason, MySQL automatically takes over for web store searching

Why does reindexing catalog search take so long? Is there a solution?

If you're running EE versions between 1.10.0.0 and 1.11.0.x, a patch might be available. See What Patches Are Available from Magento Support?.

However, a better solution is to upgrade to EE 1.13, which achieves significant performance improvements for all indexers. Indexing usually occurs in the background, or can be scheduled by your Magento cron job. For more information, see the EE 1.13 indexing documentation.

What is the difference between Solr's suggestions and recommendations?

Suggestions are the native Solr mechanism of advising users in the event they enter incomplete or incorrect user input. Suggestions, when enabled, are automatically provided as part of any search request.

Solr completes incomplete or incorrect input using a dictionary that is based on the main index (and can be customized using configuration files to use any other arbitrary dictionary). Suggestions display with default text "Did you mean:" in the search results page if needed.

Notes:

  • Search suggestions are not the same as AJAX hints.
  • Enabling suggestions negatively affects performance because they result in more complex queries to Solr.

Recommendations display terms related to a requested word or phrase on the search results page.

This functionality is not based on third party engine functionality, but is implemented as part of the Enterprise_Search module and can be shown with the Solr search suggestions block.

By default, Magento uses the Enterprise_Search_Model_Adapter_HttpStream module for recommendations. If you install the Apache Solr PHP extension, Magento automatically uses the Enterprise_Search_Model_Adapter_PhpExtension adapter instead. Both adapters function in the same way with no difference in performance. However, the PhpExtension adapter is not tested by Magento so you must thoroughly test any modifications you make to it before deploying it in a production environment.

Note: Enabling recommendations negatively affects performance because they result in more complex queries to Solr and more database calls.

Do not confuse the Solr suggestion mechanism with Ajax pop-up suggestions in the search field. That functionality has no connection with Solr engine at all!

Can users search my entire web store?

Yes

What happens if no search terms are returned?

Solr provides hints that keep your visitors engaged rather than abandoning your store and going somewhere else.

How are search results sorted?

See here in the Solr tutorial.

Are search hits highlighted?

No, not at this time.

Can search results be weighted?

Yes, Solr offers a number of ways to weight search results. For more information, see:

How does search work with layered navigation?

Solr directly supports Magento's layered navigation by faceted search. Using Solr's faceted search, you get much better performance compared to MySQL full text search because you avoid having to join database tables. For more information, see this article on stackoverflow.com.

How does Solr handle localized characters in search results?

Solr can index localized characters with some known issues discussed on their FAQ.

Can search results be returned with relevancy ranking?

Yes, Solr supports a variety of methods for relevancy ranking. See the Solr Relevancy Ranking FAQ and the Solr Relevancy Cookbook for more information.

How does minimum query length work in Magento MySQL full text search?

Minimum query length for MySQL full text search is four characters. Therefore, if you're using MySQL full text search, you should always set the value to four or more. (To set the minimum query length in the Admin Panel, click System > Configuration > CATALOG > Catalog. In the right pane, expand Catalog Search and, from the Minimal Query Length field, enter a value of 4 or more. Magento ignores a value of less than 4.)

Note: You can change the minimal search query length as discussed in Changing the Minimum Search Query (MySQL Full Text Only).

What are known issues for which Magento has issued patches?

See What Patches Are Available from Magento Support?.

Discussion:

RSS: New Article posts

Explore the Knowledge Base