Cypher对我来说似乎比Gremlin要清楚得多,总的来说,Neo4j的家伙似乎都在和Cypher一起。但是--如果Cypher与Gremlin相比是有限的--我真的想提前知道这一点。
对于一般查询,Cypher就足够了,而且可能更快。Gremlin相对于Cypher的优势在于当您进入高级遍历时。在Gremlin中,您可以更好地定义准确的遍历模式(或您自己的算法),而在Cypher中,引擎试图寻找最佳遍历解决方案。
我个人使用Cypher是因为它的简单性,而且到目前为止,我还没有遇到过必须使用Gremlin的情况(除了使用Gremlin graphML导入/导出函数)。然而,我希望,即使我需要使用Gremlin,我也会这样做,因为我会在网上找到一个特定的查询,再也不会回来了。
你总是可以很快地(几天内)学习Cypher,然后继续(长期运行)通用Gremlin。
应用程序是否有可能使用与解析器1.9版本不兼容的查询语法?有什么常见的问题要找吗?
我是Neo4J的新手,我正在尝试为基于时空的高可用性查询建立一个概念证明。 我有一个设置,有2个独立的Neo4J企业服务器和一个运行嵌入式HA Neo4J服务器的Java应用程序。 一切都很容易设置,基本查询也很容易设置和高效。另外,按照预期执行从Neo4J SpatialRepository派生的查询。 我正在努力理解的是如何使用SDN与任何其他where子句组合进行空间查询。作为一个微不足道的
Cypheris a declarative graph query language that allows for expressive and efficient querying and updating of the graph store without having to write traversals through the graph structure in code. Cy
我的neo4j服务器有一个非托管扩展。 代码如下。 当我部署代码时,我得到了500个内部错误。如果我删除代码 Result result = database.execute( “MATCH (n:KISI) where id(n)=1 return n” ); 然后一切都很好。 我检查了日志文件,错误如下 2015年8月13日3:34:36AM com . sun . jersey . SPI
我正在尝试查找一个查询唯一的名称列表,并排除两个查询结果之间的共同名称。例如,我想要学生A、B和C所选课程的名称,并从该列表中排除学生D和E所选的课程。在这个问题的答案的帮助下(Neo4j Cypher:从结果中排除某些节点),我尝试了这个密码代码,它是有效的,但我得到的结果是节点。我希望它是一个名称列表,而不是节点。 非常感谢。
我有一个Spring Data Neo4j(3.4.0.RELEASE)实体,它带有一个