An Overview of Search at Pluralsight

--

Co-author: Rich Guilmain

Let’s talk about search.

When this post was published, Pluralsight offered over ten thousand courses, guides, and hands-on labs to help humans improve their technology skills. We cover topics like cloud computing, security, software development, and data science and machine learning, and our catalog grows every day.

So how do we organize all of this information and make it searchable?

This article aims to describe, at a high level, how search at Pluralsight works and how we use machine learning techniques like Bayesian networks and Bayesian hyperparameter optimization to improve the quality of our results.

Indexing with Elasticsearch

The natural place to start when describing any good search engine is with its index, and we use Elasticsearch for this.

Why Elasticsearch?

Some decisions are best kept as practical as possible. Elasticsearch, which along with Logstash and Kibana forms the ELK Stack, is typically used to store and process event logs as opposed to doing general document retrieval.

We considered four options when deciding which engine to use:

--

--