Yes I give 64 GB and only 60 GB in diferent executions. 2010/2/23 Mattias Persson <[email protected]>
> One more thing... how much heap have you given the JVM? You control > how much RAM your JVM gets with the -Xmx option to the java command. > F.ex: > > java -Xmx10G -cp ..... > > Please see more information regarding performance and tweaking at > http://wiki.neo4j.org/content/Neo4j_Performance_Guide > > 2010/2/23 Mattias Persson <[email protected]>: > > I see that you're using an older version of Neo4j. Have you tried using > 1.0? > > > > http://components.neo4j.org/neo4j-kernel > > http://neo4j.org/download > > > > Maven > > groupId: org.neo4j > > artifactId: neo4j-kernel > > version: 1.0 > > > > ...and at first glance I don't see any direct problem with your code. > > > > 2010/2/23 Miguel Ángel Águila <[email protected]>: > >> Hello, > >> > >> I'm doing a code to walk around all the nodes and get the node with the > >> maximum out degree. The main problem is that there are around 57 million > >> of nodes and 322 million of edges in the neo database, and using a 64 GB > >> RAM is insufficient to execute the program. It is the code: > >> Can anyone see what I'm doing wrong? I don't understand. > >> > >> Thanks. > >> Mike > >> > >> > >> > >> public static void getNodeMaxOutDegreeNeo(final NeoService neo, > >> final IndexService indexService) { > >> Node idNode; > >> long degree; > >> long maxDegree = 0; > >> IndexHits<Node> nodes; > >> long idDegree; > >> long idMaxDegree; > >> Transaction tx = neo.beginTx(); > >> try { > >> nodes = indexService.getNodes("TYPE", "titles"); > >> Iterator<Node> it = nodes.iterator(); > >> Node idNodeMaxDegree=it.next(); > >> Iterator<Relationship> relIterator = > >> idNodeMaxDegree.getRelationships( > >> NeoDataBase.MyRelationshipTypes.REF, > >> Direction.OUTGOING).iterator(); > >> > >> while (relIterator.hasNext()) { > >> relIterator.next(); > >> maxDegree++; > >> } > >> long counter = 0; > >> while (it.hasNext()) { > >> if ( ++counter % 50000 == 0 ) { > >> tx.success(); > >> tx.finish(); > >> tx = neo.beginTx(); > >> } > >> idNode = it.next(); > >> relIterator = > >> idNode.getRelationships(NeoDataBase.MyRelationshipTypes.REF, > >> Direction.OUTGOING).iterator(); > >> degree = 0; > >> while (relIterator.hasNext()) { > >> relIterator.next(); > >> degree++; > >> } > >> if (degree >= maxDegree) { > >> if(degree==maxDegree) { > >> idDegree= > >> Long.getLong((String)idNode.getProperty("ID_TITLE")); > >> idMaxDegree= > >> Long.getLong((String)idNodeMaxDegree.getProperty("ID_TITLE")); > >> if(idDegree>idMaxDegree) { > >> idNodeMaxDegree = idNode; > >> } > >> } > >> else { > >> maxDegree = degree; > >> idNodeMaxDegree = idNode; > >> } > >> } > >> } > >> > >> System.out.println("OId = > >> "+(String)idNodeMaxDegree.getProperty("ID_TITLE")); > >> System.out.println("Title = > >> "+(String)idNodeMaxDegree.getProperty("NAME")); > >> System.out.println("#refs = "+maxDegree); > >> tx.success(); > >> } > >> finally > >> { > >> tx.finish(); > >> } > >> } > >> > >> _______________________________________________ > >> Neo mailing list > >> [email protected] > >> https://lists.neo4j.org/mailman/listinfo/user > >> > > > > > > > > -- > > Mattias Persson, [[email protected]] > > Neo Technology, www.neotechnology.com > > > > > > -- > Mattias Persson, [[email protected]] > Neo Technology, www.neotechnology.com > _______________________________________________ > Neo mailing list > [email protected] > https://lists.neo4j.org/mailman/listinfo/user > _______________________________________________ Neo mailing list [email protected] https://lists.neo4j.org/mailman/listinfo/user

