Blog

Chorus, now also for Elasticsearch!

Building your own e-commerce search with Elasticsearch just got easier

In June 2020 the first release of Chorus was announced at Berlin Buzzwords by Eric Pugh, Johannes Peter, René Kriegler and Paul M. Bartusch. Chorus offers an open source tool stack for e-commerce search based on Solr. Of course, Solr is not the only search engine used for e-commerce search – so we are happy to announce that Chorus is now available for Elasticsearch as well!

What does Chorus for Elasticsearch offer me?

In short, Chorus for Elasticsearch is a set of tools that helps you to get started with e-commerce search or for improving your already existing e-commerce search. Building great search is not just downloading and installing a search engine: you also need to consider indexing, active search management, offline testing, generating judgments, monitoring, … search teams need to cover a lot of ground to be successful and Chorus is here to support this journey.

Chorus for Elasticsearch combines best-in-class tools to shorten the amount of time you need to set up a stack for yourself based on Elasticsearch – and if you’re already running e-commerce search you can still learn from this open source search stack.

Chorus components

  • Reactivesearch for the user interface
  • Elasticsearch as the search engine
  • Querqy & SMUI for search management (boosts, synonyms etc.)
  • Quepid for gathering relevance ratings & testing new configurations
  • RRE for large-scale regression testing with detailed metrics

All are open source and freely available for download. Chorus for Elasticsearch contains customised versions of these components & sample data.

How can I get started?

If you have Docker and Git installed on your machine and are comfortable to execute two commands on the command line you are ready to go:

1. Clone the repository from Github

git clone https://github.com/querqy/chorus-elasticsearch-edition.git

2. Run the provided quickstart script

./quickstart.sh

This starts a few Docker containers with the above mentioned components, and you can start exploring our demo online electronics store, Chorus Electronics. Check out the README file in the repository as well as the first ‘kata’ to learn more about the setup. We already have a second kata in our pipeline to show you how you can get your hands dirty.

What are the current limitations of Chorus for Elasticsearch?

Another way of asking this question would be “is Chorus ready to go to production?”. The components are widely used across the world in numerous search applications, not restricted to e-commerce search. For a production environment you’d still need additional components, e.g. a shopping cart or payment management, but from a search perspective Chorus provides you with a complete setup.

SMUI, our user interface for managing Querqy rules like synonyms and boosts is a tool specifically designed and implemented for Apache Solr. You can use it for Elasticsearch with some limitations:

  • There are some occurrences of “Solr” in the user interface.
  • You will have to use the rule specific syntax.
  • SMUI does not suggest field names when typing in new rules.

In conclusion, the SMUI integration works technically, but the experience using it is not yet ideal.

How can I contribute?

To overcome these limitations contributions are definitely welcome!

You can already make a valuable contribution by giving Chorus for Elasticsearch a spin and providing us with feedback. If you experience any errors or miss anything feel free to open an issue to start a discussion, or go ahead and make a suggestion by submitting a pull request. The Solr version of Chorus currently has more Katas to learn about Chorus and its components. Extending this section is an excellent way to contribute to the project.

Chorus aims not only to jumpstart the deployment of e-commerce search but also to share knowledge! Have you built a cool use case with Chorus? Or are you curious how you can build your idea on top of Chorus? Then visit https://querqy.org/ to learn more, or join the E-Commerce Search Slack group to share your ideas and use cases.

What’s next?

We’ll carefully watch the adoption and continuously extend the Chorus initiative. In the meantime, check out our blog series on Pete, the e-commerce search product manager, to learn how Chorus makes his life easier. It shows the Solr version of Chorus, but you can easily transfer the insights gained to the Elasticsearch version.

Contact us if you need our help tuning your e-commerce search.

Image from Shop Vectors by Vecteezy