Hi Phillipe, thanks for your precious reply. I'm actually thinking that in general we should decide whether to discard or use Object Graph Mapping modelling more or less the same way we decide to use Hibernate (or a similar Object Relational Mapping) in the relational world: automatic mapping between my object domain model and the database sounds useful, don't you agree? (tons of Node.getProperty + MyDomainObj.setProperty saved). Hibernate also solves object-relational impedance mismatch, but with a graph database this comes for free.
Furthermore, for companies - as my own one - that use to develop applications using the Spring Framework, Spring Data Neo4j (not necessarily the OGM part) seems a natural solution when introducing a graph database. Any feedback appreciated! :) Thank you again! Lorenzo Il giorno lunedì 17 marzo 2014 22:06:13 UTC+1, Michael Hunger ha scritto: > > Lorenzo, > > unfortunately labels are not returned with the nodes from the remote API > so they have to be fetched separately. > > Also in general I don't advise the use of SDN against a remote server, > except if you know exactly what you're doing (i.e. use repositories with > cypher statements and mapped @QueryResult classes) > > The current library is designed to run against an embedded database, it is > too chatty over the wire. > > There are plans to improve that but it's a lot of work and currently we > have no bandwidth to make SDN excel with Neo4j server. > > Cheers, > > Michael > > Am 17.03.2014 um 19:37 schrieb Lorenzo Speranzoni (@inserpio) < > [email protected] <javascript:>>: > > Hi everybody, I'm currently testing Spring Data Neo4j 3.0.1 with an > already existent Neo4j 2.0.1 graph database. > > My log is displaying something like this: > > 2014-03-17 19:15:17,401 [DEBUG] [main] > org.springframework.data.neo4j.rest.SpringRestCypherQueryEngine - Executing > remote cypher query: match (n) where id(n)={nodeId} return labels(n) as > labels params {nodeId=1136} > > 2014-03-17 19:15:18,667 [DEBUG] [main] > org.springframework.data.neo4j.rest.SpringRestCypherQueryEngine - Executing > remote cypher query: match (n) where id(n)={nodeId} return labels(n) as > labels params {nodeId=1135} > > 2014-03-17 19:15:19,937 [DEBUG] [main] > org.springframework.data.neo4j.rest.SpringRestCypherQueryEngine - Executing > remote cypher query: match (n) where id(n)={nodeId} return labels(n) as > labels params {nodeId=1134} > > 2014-03-17 19:15:21,549 [DEBUG] [main] > org.springframework.data.neo4j.rest.SpringRestCypherQueryEngine - Executing > remote cypher query: match (n) where id(n)={nodeId} return labels(n) as > labels params {nodeId=1133} > > 2014-03-17 19:15:22,810 [DEBUG] [main] > org.springframework.data.neo4j.rest.SpringRestCypherQueryEngine - Executing > remote cypher query: match (n) where id(n)={nodeId} return labels(n) as > labels params {nodeId=1129} > > 2014-03-17 19:15:24,084 [DEBUG] [main] > org.springframework.data.neo4j.rest.SpringRestCypherQueryEngine - Executing > remote cypher query: match (n) where id(n)={nodeId} return labels(n) as > labels params {nodeId=1128} > > > I'm actually supposing that for every retrieved node, SDN execute the > LabelBasedStrategyCypherHelper.getNodesWithLabel query for determining the > correct @NodeEntity mapped class for automatic Object Graph Mapping. This > seems causing a performance bottleneck… > > Did I wrong something? > > Thanks in advance, > Lorenzo > > > > -- > You received this message because you are subscribed to the Google Groups > "Neo4j" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected] <javascript:>. > For more options, visit https://groups.google.com/d/optout. > > > -- You received this message because you are subscribed to the Google Groups "Neo4j" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
