How can I configure my django app to write the haystack/whoosh index to an S3 bucket?
I can't find any information on how to get going with this topic. Incidentally I am using Heroku for deployment.
Django storages looks promising, but documentation is very thin. Unsure if I could set WHOOSH_PATH as a storage object anyway?
Seeing as the haystack whoosh backend file has rules on setup like:
if self.use_file_storage and not os.access(settings.HAYSTACK_WHOOSH_PATH, os.W_OK):
raise IOError("The path to your Whoosh index '%s' is not writable for the current user/group." % settings.HAYSTACK_WHOOSH_PATH)
line 90- haystack/backends/whoosh_backend.py
EDIT: I gave up on Whoosh (& heard it slower than Solr anyway); though it is perhaps common knowledge, Websolr is a fantastically easy way to get search on your Heroku-deployed Django app.
Disclaimer: I am not familiar with Haystack & Whoosh beyond the quick look I have taken at their sites, but you did ping me on Twitter, so here are my thoughts :)
That being said... it sounds to me like the latency to S3 (even from an EC2 instance) would be prohibitive to storing your search indexes in there.
If it were I, I would save myself the trouble and (if you have not done so already), take a look at the Heroku addons page. You can use any of the following for somewhere between free and cheap for small projects:
I hope the helps a little!
Adam