Лично я использовал и Solr, и ElasticSearch с django haystack и был доволен результатами обоих.Казалось, у Solr чуть более крутая кривая обучения, но этого было недостаточно, чтобы нарушить условия сделки.Если вы планируете использовать облачную реализацию для своего проекта, вы можете использовать ElasticSearch, так как он имеет распределенную индексацию и некоторые другие полезные функции такого рода среды.У меня нет опыта работы с Xapian, поэтому я не буду вводить вас в заблуждение, предоставив вам любую информацию.
Возможно, вы захотите проверить этот пост от создателя ElasticSearch https://stackoverflow.com/a/2288211/1608085 (даэто будет немного предвзято)
Также проверьте этот предыдущий ответ для сравнения Solr и ElasticSearch https://stackoverflow.com/a/10213568/1608085