Now that RethinkDB is shutting down, I have been looking at OrientDB, 
particularly its LiveQuery feature. I am interested in the extent to which 
LiveQuery is comparable to RethinkDB Changefeeds. In particular:

   - Are there any limitations on the types of queries with which LiveQuery 
   works? Can you put "LIVE" in front of any "SELECT" command and get a 
   working LiveQuery?
   - More specifically, does LiveQuery work on queries involving links? For 
   example, suppose you have a query that retrieves a set of blog posts and 
   their linked comments -- does the LiveQuery send a change notification when 
   a linked comment is inserted/updated/deleted in the LINKLIST?
   - In RethinkDB, changefeeds involving orderby and limit can be 
   configured to send the old and new offset of each change (via the 
   include_offsets option) so you can easily insert the change into the proper 
   place within the previously returned set of records. Is this possible with 
   LiveQuery, or do you have to manage the ordering manually on the client?
   - If you want the initial set of records followed by any subsequent 
   changes, do you have to issue an initial SELECT followed by a LIVE SELECT? 
   If so, is there any way to ensure you don't miss any changes between the 
   two (RethinkDB achieves this with its include_initial option).
   - Can OrientDB do filtering on the changes themselves? For example, in 
   RethinkDB, you can do:


r.table('test').changes().filter{ |row|
  row['new_val']['score'] > row['old_val']['score']
}

The above changefeed will only return changes where the new score is 
greater than the old score. Is this possible with live queries?

   - Does LiveQuery have anything similar to the RethinkDB "squash" option, 
   which can be set to squash a set of changes that happen within a particular 
   timespan into just a single change?
   - How scalable are live queries? If you have a web application with tens 
   or hundreds of thousands of connected users, each user with several of 
   their own unique live queries, will OrientDB be able to handle that. The 
   RethinkDB Horizon docs claim it is "designed to support millions of 
   realtime feeds" (with proper horizontal scaling of the database). Is 
   OrientDB in the same league? What kind of load would be realistic for a 
   single server, and is there any bottleneck that would inhibit horizontal 
   scaling to support more and more live queries?
   - Any other notable differences from RethinkDB changefeeds?

More generally, what is OrientDB's commitment to developing and promoting 
the LiveQuery feature? RethinkDB promotes its changefeeds as its primary 
distinguishing feature ("The open-source database for the realtime web"). 
However, it does not appear that LiveQuery is mentioned *anywhere *on the 
marketing parts of the OrientDB website (except for a single year-old blog 
post), and you have to dig fairly deep in the documentation to discover the 
feature even exists. Is this feature a priority for OrientDB?

Finally, given RethinkDB's recent fate, it would be nice to know more about 
the health of OrientDB LTD. Is the company profitable and poised to be 
around for a while?

Thank you.

Anthony

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to