We've all more or less already discussed the topic together, but I
wanted to greet you all here on this group, so as to start some
fruitful discussions and collaboration! Welcome!
So this discussion group is about the "Inconsequential" project. That
could even be spelled "iNcOnSeQuenciaL", to echo the famous NoSQL
acronym.
The project is currently living under the Grails umbrella right now,
as our initial goal is to allow access to various kinds of NoSQL
datastores with a common API, from Groovy and Grails project, as well
as, hopefully, classical Spring and Java projects.
The codebase is living on GitHub in the Grails repository:
http://github.com/grails/inconsequential
It's currently exclusively developed in Java, in hope for it to be
usable easily from pure Java projects without mandating the use of
Groovy.
But ultimately, the idea is to make the API as Groovy-friendly as
possible, and provide a particular module for Grails so that we can
use the Grails ORM mapping solution and map domain classes on top of
those base APIs for the various datastores.
Basically, there will somehow be two main subprojects:
1) the base API for accessing the datastores (all the low-level
operations, etc)
2) the mapper API for being able to use GORM syntax, relationships,
etc, for mapping domain classes to datastore entities
There's not much code so far, just a sketch of the various interfaces,
and some more code for the Key/Value datastore approach, with a test
base using the Google App Engine datastore.
After some discussions with our friends from Neo4J, I've made some
refactoring, to move things into the KeyValueDatastore interface
rather than keeping things in the base Datastore interface.
I've also added minimal transactional support this morning --
wondering whether we should just go with the usual JTA interfaces
directly?
I just saw this morning that Tobias has forked Inconsequential on
GitHub and started working on the Graph datastore, that's really
awesome, and I'm very happy to see that -- unfortunately, I haven't
yet looked at all at the code, but I promise I'll do so soon!
Speaking of contributions, we'll certainly have to make contributors
sign an agreement with SpringSource, ie. the Individual Contributor
License Agreement (https://support.springsource.com/legal/individual-
cla and here: http://service.springsource.com/download/committer_agreement/agreement.pdf),
so that we're all safe with regards to IP, copyright, licenses, usage,
and so on. Unfortunately, I'm not a lawyer, but I'll do my best to
answer any question regarding this (forwarding to those who know
better than me!).
What else... hmmm... I need to provide a proper build for the project,
proper dependencies listed, etc.
And well, we need to move forward with sketching the various
interfaces for the various possible stores.
I'm happy to discuss API design and more with you all, that's very
exciting and interesting!
Thanks a lot for your contributions and mindful comments!
Guillaume
To unsubscribe from this group, send email to inconsequential+unsubscribegooglegroups.com or reply to this email with the words "REMOVE ME" as the subject.