我有一个neo4j的问题。 我不知道如果问题是我的查询或其他东西。Neo4j - Java堆空间。错误的查询或设置?
介绍
我必须建立一个存储巴士/火车路线的应用程序。 这是我的架构:
节点:
- Organizaton:公司具有路由/总线等。
- 路线:巴黎 - 柏林:喜欢巴士路线。
- 车辆(在这种情况下,公交车):带有独特车牌的Fisical巴士。
- 停止:指向经纬度的地图。
重要关系:
- 下一个:这是一个非常重要的关系。
下人际关系包含这些属性:
- startHour
- startMinutes
- endHour
- endMinutes
- 一周中的某天(从0到6 - 周日,周一等)
- vehicleId
问题
我的查询是:
MATCH (s1:Stop {id: {departureStopId}}), (s2:Stop {id: {arrivalStopId}})
OPTIONAL MATCH (s1)-[nexts:NEXT*]->(s2)
WHERE ALL(i in nexts WHERE toInt(i.dayOfWeek) = {dayOfWeek} AND toInt(i.startHour) >= {hour})
RETURN nexts
LIMIT 10
例如:我想找到的所有的nextS关系,其中一个dayOfWeek是星期天(0)和财产startHour> 11
之后,我ü通过分析和验证我的nodejs后端的最终对象。
这工作时,我是在开始。与1K关系.. 现在我有10K的关系,我的查询有超时问题或查询在30年代解决了..太多时间...... 我没有想法如何解决这个问题。 我使用docker的neo4j和我试图阅读设置文档,但我不知道Java如何工作。
你能帮助我吗?
UPDATE
谢谢大家家伙! 现在我解决了“allShortestPaths”,但我想我会重新命名所有关系(如Michael Hunger所说的)。
此外,默认泊坞窗图像保留太少的RAM,你必须通过env变量增加HEAP到4G或8G取决于。 –