Hi, Do you want to use gremlin to query an existing graphy mongo db?
If so that will probably be a difficult task as TinkerPop assumes the underlying graph is modeled according to the property graph model. If not then its not that difficult. First you'll have to work out how you are going to model the property graph model in MongoDb (This at least for me is the fun part). Once that is done TinkerPop allows the rest to fall into place. The difficulty after that is to optimize gremlin queries. eg. g.V(vertex1).out().out() If the first out() returns 1 000 000 vertices then the second out() will result in 1 000 000 calls to mongodb. MongoDb is fast but a million separate individual calls kills any applications performance. So you have to optimize traversing edges to execute on the db itself as oppose to doing it from the application (i.e. your TinkerPop mongo java implementation). I have not recently googled this but I understand (hope) that mongo will be implementing edges/links/joins natively. Either way the primary challenge is to optimize the two "out().out()" calls to be only one call to the db. As an aside, TinkerPop has no support at the moment to query a JSON property. In fact TinkerPop has no notion of type so it does not even know nor care that a particular property's type is JSON. Recent versions of Postgresql support JSON natively and Sqlg supports storing JSON blobs. However at present it is unqueryable from Sqlg (gremlin). Postgresql has sophisticated JSON query abilities that I intend to make available via custom TinkerPop predicates. TinkerPop uses the notion of Predicates to select data. It is fairly easy to extend TinkerPop to expose custom db features. I imagine that doing something similar will make a MongoDb implementation able to use gremlin to query arbitrary JSON documents. My understanding of the joy of mongo is that there is no need to transform data from one representation to another to yet another. JSON from browser to something(Node) to db and all is simple. So I imagine that using MongoDb as a graph db should do its best not to obfuscate this benefit. Cheers Pieter On 08/04/2016 18:04, Fred Eisele wrote: > We have a graph-centric project which uses MongoDB as its backing store. > We would like to use the TinkerPop3 API to provide access to our graph. > > Q1: Is there any plan to provide a TinkerPop3 wrapper for MongoDB? > > Q2: Would recommended path be to update > https://github.com/datablend/blueprints-mongodb-graph ? > > Q3: What is the best TinkerPop3 reference for constructing a TinkerPop3 > wrapper around a graph-system? > > Thanks > Fred >