How complicated would it be to implement Elasticsearch as a NoSQL datastore for Nuxeo ?

Hi. Seeing that Nuxeo supports NoSQL such as MongoDB, I'd like to know how hard/complicated it would be if I wanted to implement a driver / plugin that supports using Elasticsearch as the main data store for Nuxeo (not just for indexing). I though of using the DBS implementation, like Nuxeo did for MongoDB.

Any ideas? Could I write it as a plugin, or do I have to edit the Nuxeo-Core code?

0 votes

1 answers

1694 views

ANSWER



We've considered it before. The main issue is that Elasticsearch indexing is asynchronous whereas all Nuxeo platform expect document changes after creation/modification to immediately visible (which is what you expect of a storage engine).

0 votes



Thats true, but GET operations are in realtime: https://www.elastic.co/guide/en/elasticsearch/reference/2.4/docs-get.html#realtime So basically I think that the behavior would be very similar to how Nuxeo works currently: Searches are near-realtime, and reads are real-time.
11/07/2016

Nuxeo expects synchronous searches too for a number of internal operations, like finding children, proxies, related documents, etc.
11/07/2016