Windows의 Neo4j를 평가하고 있습니다. NET 응용 프로그램에서 Neo4j에 액세스해야하므로 .NET 클라이언트 라이브러리 (http://hg.readify.net/neo4jclient/)를 통해 Neo4j Cypher REST API를 사용하고 있습니다.Neo4j - 메모리 부족 - Cypher REST API
합리적인 크기의 그래프 (약 100,000 노드)를 탐색 할 때 Neo4j Java 서버에서 "메모리 부족"문제가 발생합니다. 아래는 REST 응답에서보고 된 예외입니다. 또한 아래에 언급 된 Cypher 쿼리가 실행되었습니다. Neo4j 서버에 대해 -Xmx1024m 옵션을 사용하여 JVM 힙 공간을 늘리려고 시도했지만 도움이되지 않았습니다. 다른 제안을 주시면 감사하겠습니다.
처리되지 않은 예외 : System.ApplicationException : 요청을 실행할 때 예상치 못한 HTTP st atus를 받았습니다.
쿼리했다 :
START X = 노드 (1,213,997)
MATCH X - [: BOM * 1..5] -> RelationshipType, n.Number AS N RETURN 'BOM'? AS 번호, 알았어? ID로
응답 상태였다 : 당신이 결과와 함께 할 계획입니까 깊이 5 순회 가능성이 그래프의 대부분을 만질 수
The raw response body was: <html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
<title>Error 500 Java heap space</title>
</head>
<body><h2>HTTP ERROR 500</h2>
<p>Problem accessing /db/data/cypher. Reason:
<pre> Java heap space</pre></p><h3>Caused by:</h3><pre>java.lang.OutOfMemoryE
rror: Java heap space
at java.lang.AbstractStringBuilder.<init>(Unknown Source)
at java.lang.StringBuilder.<init>(Unknown Source)
at org.neo4j.server.rest.repr.RepresentationType.<init>(Representa
tionType.java:108)
at org.neo4j.server.rest.repr.Representation.<init>(Representation
.java:73)
at org.neo4j.server.rest.repr.ListRepresentation.<init>(ListRepres
entation.java:36)
at org.neo4j.server.rest.repr.CypherResultRepresentation.data(CypherResu
ltRepresentation.java:64)
이 쿼리를 통해 귀하의 목표를 조금 더 설명하십시오. 많은 목적없이 많은 양의 데이터를 나열하는 것 같습니다. –
요구 사항은 루트 노드에서 시작하여 전체 제품 또는 문서 구조를 가져 오는 것입니다. 그래서, 대부분의 경우 데이터 크기가 그렇게 크지는 않지만, 그러한 쿼리에 대한 경계 조건을 찾으려고합니다. –
도움이되는지 확인하기 위해 페이지 매김을 시도 했습니까? –