Hi Dirigibles,
Apache ThinkerPop is a set of blueprints (and a community by some claims) for graph applications. Without being an official standard or something it standardizes the handling of graph data and computations on it allowing abstraction of
concrete technology providers and sharing common best practices.
In fact by now there is quite some adoption for example as far as graph NoSQL databases are concerned. For example, the top3 popular graph storage systems are compliant:
# Neo4j
# Titan
# OrientDB
Details can be found on the project page:
http://tinkerpop.incubator.apache.org/ and documentation:
http://tinkerpop.incubator.apache.org/docs/3.1.0-SNAPSHOT/#implementations
But the very brief intro is that when you have a compliant system, you can start a Gremlin console, connect to it, and using a standard API (Groovy!) you can create a graph, manipulate it and traverse it.
With a gremlin server available there is also convenient REST API for a number of operations too.
All that is quite, quite simplified. There is a myriad of things you can do for example only in the area of graph traversal (http://tinkerpop.incubator.apache.org/docs/3.1.0-SNAPSHOT/#traversal)
How does that concern Dirigible?
Don’t know yet but we definitely should as this may be the next big thing in the Dirigible evolution!
At a glance I can speculate about adopting Gremlin as a standard language/API for handling NoSQL graph databases and experimenting with OrientDB’s value propositions (which by the way provides an SQL-ish query language too) for graph and
document store (with a friendly Apache license unlike MongoDB).
I can see quite of a showcase for example with Gremling directly into a groovy or _javascript_ service! Or maybe even eliminating completely the business logic implementation in the middle layer?
Anyone interested in exploring opportunities of provisioning OrientDB (Apache license,
http://orientdb.com/) with Dirigible and figuring out how deeply can we mix the two systems for what applications and benefits?