Re: [expath] MongoDB Module: Working Draft

Dannes,
the question is the scope of XQuery applications which we want to enable. 

Scope 1 is read and write access to existing MongoDB collections. 

Scope 2 is the *active* use of MongoDB technology as an extension of XQuery technology - for instance in order to overcome scaling problems. The scope includes pure XQuery applications which create, use and delete MongoDB collections at their own discretion, putting MongoDB at XQuery service.
The creation of collections is already enabled by mongodb:insert and mongodb:update. But collections without indexes are not fit for production uses. So renouncing a "mongodb:createIndex" function would render XQuery applications creating collections downright incomplete. Such applications would have to execute some "phase 1", in which documents are inserted but indexes do not yet exist; then stop or pause, only to be resumed after the completion of  some "out of scope" actions. This significantly reduces the value of the MongoDB module. The limitation can be removed by the addition of a couple of XQuery functions which simply pass their arguments through to the MongoDB database. These functions enable XQuery applications to achieve truly functional collections, by simply adding a few lines of code.

A different way of putting it: support for the creation of indexes *is* an operational feature, it is not "administrative" work to be distinguished from "operational" work. It is a key aspect of the operation "create collection", and this operation is in turn an important feature of any usage of MongoDB. I am worried about the severe operational limitation which the current version of the spec implies. 
Hans-Jürgen



 

     Dannes Wessels <dannes@exist-db.org> schrieb am 9:19 Montag, 9.März 2015:
   

 

Hi,
On Sun, Mar 8, 2015 at 11:46 PM, Hans-Juergen Rennau <hrennau@yahoo.de> wrote:


index management===============
First of all, I feel we need two functions for creating and dropping indexes, something similar to this:

I intentially left these kind of functions out of 'Mongrel' because I think the driver/spec should focus on operational features only. Configuring the database (creation of indices) is not part of that in this idea...... IMO for these things 'native' tooling can and should be used?
regards
Dannes

-- 
eXist-db Native XML Database - http://exist-db.org
Join us on linked-in: http://www.linkedin.com/groups?gid=35624-- 
You received this message because you are subscribed to the Google Groups "EXPath" group.
To unsubscribe from this group and stop receiving emails from it, send an email to expath+unsubscribe@googlegroups.com.
To post to this group, send email to expath@googlegroups.com.
Visit this group at http://groups.google.com/group/expath.
For more options, visit https://groups.google.com/d/optout.


   

Received on Monday, 9 March 2015 21:09:27 UTC