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.
Feature | Docs | Comments |
|---|---|---|
Discussions / Forums |
| |
Course Content Search |
| |
Teams |
| |
Student Notes |
| |
Course Discovery / Catalog |
| |
Learner Analytics |
|
Search Technologies
There are three 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)
edX Search - https://github.com/edx/edx-search
This is a home grown library on top of Elasticsearch
It was implemented in order to support searching across the courseware Mongo database
Additional Proposed Uses
Bookmarks