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
- Forums
- Courseware Search
- Teams
- Student Notes
- Bookmarks
Search Technologies
There are two main technologies that are used by edX:
- Elasticsearch - https://github.com/elastic/elasticsearch
- Haystack - http://haystacksearch.org/
- This library simplifies the process of indexing and searching Django models
- Note: it is not designed for use with Mongo (see the Haystack FAQ)
We are currently stuck on an old version of Elasticsearch because of a Forum's Ruby library that can't be upgraded. See: