Search at edX

Background

There are a number of search implementations within edX, all built upon Elasticsearch. This document collects together best practices learned from these different features.

Search Implementations

The following is a list of features that are currently using search.

FeatureDocsComments
Discussions / Forums
  • ES 1.5
  • Ruby elasticsearch, elasticsearch-model gems
  • Mongo backed
  • Rake tasks for indexing
Course Content Search
  • ES 1.5
  • edx-search client in edx-platform
  • Mongo backed
  • Reindexing management commands and GUI
Teams
  • ES 1.5
  • edx-search client in edx-platform
  • SQL backed
  • Reindexing management commands
Student Notes
  • ES 1.5
  • Haystack
Course Discovery / Catalog
  • ES 1.5
  • Haystack
  • SQL backed
  • Reindexing management commands
Learner Analytics
  • ES 1.5


Search Technologies

There are three main technologies that are used by edX:

Additional Proposed Uses