sql >> Base de Datos >  >> NoSQL >> MongoDB

Integrando mongodb con neo4j, ¿hay alguna API que los vincule?

Encontré dos formas de integrar mongodb y Neo4j. El primero fue sugerido por ryan1234 usando Gremlin junto con Gmongo. Los pasos son los siguientes según este excelente blog
1- Descarga Gmongo y controlador Java mongo
2- copie los dos archivos jar en el directorio neo4j/lib
3- Este es un ejemplo. supongamos que tenemos esta colección (llamada sigue) en mongodb

{ "_id" : ObjectId("4ff74c4ae4b01be7d54cb2d3"), "followed" : "1", "followedBy" : "3", "createdAt" : ISODate("2013-01-01T20:36:26.804Z") }
{ "_id" : ObjectId("4ff74c58e4b01be7d54cb2d4"), "followed" : "2", "followedBy" : "3", "createdAt" : ISODate("2013-01-15T20:36:40.211Z") }
{ "_id" : ObjectId("4ff74d13e4b01be7d54cb2dd"), "followed" : "1", "followedBy" : "2", "createdAt" : ISODate("2013-01-07T20:39:47.283Z") }

desde el shell de Gremlin en Neo4j ejecute los siguientes comandos.

import com.gmongo.GMongo
mongo = new GMongo() 
db = mongo.getDB("local")
db.follows.findOne().followed
x=[] as Set; db.follows.find().each{x.add(it.followed); x.add(it.followedBy)}
x.each{g.addVertex(it)}
db.follows.find().each{g.addEdge(g.v(it.followedBy),g.v(it.followed),'follows',[followsTime:it.createdAt.getTime()])} 

y listo hemos creado el grafo equivalente en neo4j