Announcement: You can find the guides for Commerce 7.5 and later on the new Elastic Path Documentation site. This Developer Center contains the guides for Commerce 6.13.0 through 7.4.1.Visit new site

This version of Elastic Path Commerce is no longer supported or maintained. To upgrade to the latest version, contact your Elastic Path representative.

Search Server

Search Server

Overview

The Search server is responsible for:

  • Handling search requests from Commerce Manager and Cortex.
  • Indexing searchable entities (categories, customers, products, promotions, CM Users, Shipping Service Level, and SKUs) used by the Commerce Manager and Cortex.

Search Server technologies

The Elastic Path Search server is comprised of three technologies: Solr, Lucene, and Quartz.

Solr - Is an HTTP server that handles search requests from Cortex and the Commerce Manager. Solr's Major Features:

  • Caching queries for faster responses
  • Web-based administrator interface
  • XML configuration files
  • Spell checking for alternative query suggestions
  • Follows distributed server model, so Solr can support large scale deployments

Lucene - Is the Search server's core technology. Lucene is an open source, high-performance text search engine library. Lucene's Major Features:

  • Text-based inverted indexing
  • Text analyzers that transform text strings into searchable terms
  • Syntax parsers for breaking up queries and matching them to documents
  • Query spellchecking based on indexed content
  • Supports Luke to graphically analyze Lucene indexes

Quartz - Is an open source job scheduling service. Quartz schedules index building. Quartz's Major Features:

  • Light-weight and configured with XML files
  • Fault-tolerant so scheduled jobs still run after a system restart

Why does Elastic Path use Solar and Lucene?

  • Solr and Lucene are open source
  • Solr and Lucene are written in Java
  • Solr is highly scalable
  • Solr is easily configured through XML files
  • Solr and Lucene are proven technologies used successfully in large implementations