Backend Support¶
Supported Backends¶
Backend Capabilities¶
Solr¶
Complete & included with Haystack.
Full SearchQuerySet support
Automatic query building
“More Like This” functionality
Term Boosting
Faceting
Stored (non-indexed) fields
Highlighting
Spatial search
Requires: pysolr (2.0.13+) & Solr 3.5+
ElasticSearch¶
Complete & included with Haystack.
Full SearchQuerySet support
Automatic query building
“More Like This” functionality
Term Boosting
Faceting (up to 100 facets)
Stored (non-indexed) fields
Highlighting
Spatial search
Requires: elasticsearch-py 1.x, 2.x, 5.X, or 7.X.
Whoosh¶
Complete & included with Haystack.
Full SearchQuerySet support
Automatic query building
“More Like This” functionality
Term Boosting
Stored (non-indexed) fields
Highlighting
Faceting (no queries)
Requires: whoosh (2.0.0+)
Per-field analyzers
Xapian¶
Complete & available as a third-party download.
Full SearchQuerySet support
Automatic query building
“More Like This” functionality
Term Boosting
Faceting
Stored (non-indexed) fields
Highlighting
Requires: Xapian 1.0.5+ & python-xapian 1.0.5+
Backend can be downloaded here: xapian-haystack
Backend Support Matrix¶
Backend |
SearchQuerySet Support |
Auto Query Building |
More Like This |
Term Boost |
Faceting |
Stored Fields |
Highlighting |
Spatial |
---|---|---|---|---|---|---|---|---|
Solr |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
ElasticSearch |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Whoosh |
Yes |
Yes |
Yes |
Yes |
Yes (basic) |
Yes |
Yes |
No |
Xapian |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes (plugin) |
No |
Unsupported Backends & Alternatives¶
If you have a search engine which you would like to see supported in Haystack, the current recommendation is to develop a plugin following the lead of xapian-haystack so that project can be developed and tested independently of the core Haystack release schedule.
Sphinx¶
This backend has been requested multiple times over the years but does not yet have a volunteer maintainer. If you would like to work on it, please contact the Haystack maintainers so your project can be linked here and, if desired, added to the django-haystack organization on GitHub.
In the meantime, Sphinx users should consider Jorge C. Leitão’s django-sphinxql project.