问题标签 [neo4j-java-api]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
neo4j - Neo4j - 无法在 java 中使用密码建立关系
在创建关系时,我无法通过 java 执行密码查询。它不会引发任何错误,但不会创建任何关系。尝试使用其他密码查询返回一个完美返回的节点。但无法弄清楚没有建立关系的原因。
这是我的代码:
java - 是否可以使用 Java API 确定 Neo4J 中的“节点”是否在事务中?
是否可以确定 aNode
是否在交易中?可以GraphDatabaseService
通过方法得到一个Node.getGraphDatabase
。
我想做这样的事情:
我想这样做的原因是因为我想在尝试Neo4JHelper
在事务之外使用我的类时给我的用户一个自定义错误。
另一种解决方案是,如果有可能以某种方式告诉编译器您需要一个事务来使用该方法/类,否则会给出编译错误。
path - 在 Neo4j 中查找具有有向边的路径
这是我第一次尝试 Neo4j,如果我遗漏了一些非常琐碎的东西,请原谅。这是我的问题:
考虑在以下 Neo4j 控制台示例中创建的图表: http ://console.neo4j.org/?id=y13kbv
在此示例中,我们有以下节点:
(人 {memberId,memberName,membershipDate})
(电子邮件 {value,badFlag})
(AccountNumber {value, badFlag})
我们可能有更多的节点来捕获与个人相关的特征,例如 creditCard、billAddress、shipAddress 等。所有这些节点都将与 Email 和 AccountNumber 节点相同: (creditCard {value, badFlag}), (billAddress {value, badFlag }),ETC。
在 Neo4j 控制台示例中填充了图表后,假设我们在图表中再添加一个 Person,如下所示:
当我们将这个新人添加到系统时,用例是我们必须检查是否存在从新人的特征(“email6”和“a2”节点)到系统中任何其他节点的路径,其中“ badFlag=true",在本例中为节点 (a1 {value:1234, badFlag:true})。
在这里,结果路径将是(email6)-[BELONGS_TO]->(p7)<-[BELONGS_TO]-(a2)-[BELONGS_TO]->(p6)<-[BELONGS_TO]-(email5)-[BELONGS_TO]->(p5)<-[BELONGS_TO]-(a1:{badFlag:true})
我试过这样的事情:
当只有一级链接时,这似乎有效,但当路径可能更长时,如 Neo4j 控制台示例的情况,它不起作用。
我需要有关 Cypher 查询的帮助,这将帮助我解决这个问题。我最终将使用我的应用程序使用 Neo4j 的 Java API 执行此操作。使用 Java API 执行此操作的正确方法是什么?
neo4j - 在一个事务中包装多个数据库查询
我在我的 java 应用程序中以嵌入式模式使用 Neo4j。
在升级到 Neo4j 2.x 之前,我将多个数据库操作包装在一个事务中。升级到 2.x 后,我明确地在一个单独的事务中执行每个 db 操作(这是规范的方式,正如文档所建议的那样)。但是,创建数据库的速度已经严重下降。
有没有办法,我可以在一个事务中包装多个数据库操作(插入和查询)?我确实明白,在回滚的情况下,我将不得不处理丢失的 CRUD 操作。
还请提出一般性建议,以扩展最终将拥有超过 6 亿个节点和关系以及超过 20 亿个注释的数据库。
neo4j - 在 neo4j-jdbc 中执行 cypher 时结果集不匹配
我想远程使用 neo4j-jdbc jar 执行密码语句。
当我执行以下密码时,我在 neo4j Web 控制台中获得了 25 行的结果集。
当我使用 neo4j-jdbc 远程执行相同的程序时,我得到 0 个结果。
打印尺寸为零。
我不确定,究竟是什么错误。
neo4j - Neo4j 独立服务器:在服务器启动时使用 Java API 强制执行唯一约束
我正在使用 Neo4j Server 2.3.2 版本并使用非托管插件来解析非结构化数据并将其加载到图形中。
在执行此操作时,我陷入了重复节点和缓慢吞吐量(即使是批处理)的情况,以进行顺序处理。考虑到重复数据加载的用例,使用以下任一方法寻求并行数据处理(使用服务器插件):
拆分文件
拆分进程/线程
现在,对于并行日期加载,我可以预见的最大挑战是处理数据完整性问题,例如如何避免创建重复节点。阅读 Neo4j 的参考资料,我发现了以下创建唯一节点的选项。
选项:
[首选] 使用 Cypher 和唯一约束获取或创建唯一节点
[其他] Java API 的悲观锁定
[Other] 使用遗留索引获取或创建唯一节点
现在,问题是我可以从哪里使用 java API 强制执行这个独特的约束。我正在寻找一些可以捕获和执行约束的事件信息。请告知加载/调用某些事件/方法的最佳方法是什么,我们在那里注入代码以执行约束。
此外,有没有办法在创建任何实体之前使用 Cipher 定义这种独特的强制执行。
提前致谢
参考:
neo4j - Neo4j - org.neo4j.io.pagecache.impl.SingleFilePageSwapperFactory
在 java 中创建 GraphDB 对象时,我遇到了这个奇怪的错误。我的 neo4j 版本:2.2.5
我的代码:
但是,它抛出以下错误:
早些时候我的代码运行良好。想不出原因。谢谢
neo4j - API for PL/SQL to Neo4j equivalent
Is any API or tool available to convert PL/SQL procedure, functions to neo4j equivalent ?? Currently I use Oracle 10 as my data source and planning to switch to Neo4j.
neo4j - Neo4j 螺栓驱动程序 ClientException
我从 neo4j 加载 csv 示例中提供的消费者投诉 csv 文件中加载了大约 20000 个奇数节点。我在我的 java 类中使用 Neo4j 螺栓驱动程序来查询。
但是当我试图在 processResult 方法中循环这个 StatementResult 时,我得到了以下异常
出现意外错误(类型=内部服务器错误,状态=500)。org.springframework.web.util.NestedServletException:请求处理失败;嵌套异常是 org.neo4j.driver.v1.exceptions.ClientException: Trying to read message complete ending '00 00' 而消息内容中还有更多数据未读:
如果我试图通过将结果限制为 50 或 100 来仅获取一个小结果,我不会遇到此问题。有人可以帮忙吗?
neo4j - Neo4j java驱动结果只返回一行
我的 neo4j 架构中有大约 20000 个奇怪的节点和关系。我正在尝试查询该数据并显示在我的浏览器中。我正在使用带有 Spring jdbcTemplate 的 neo-4j java 驱动程序。但在查询 MATCH(n)<-[r]-(m) 下返回 n,type(r),m 限制 100
它在 Java 中只返回一行,而如果我在 neo4j shell 或控制台中运行它,这个相同的查询将返回所有节点和关系。很奇怪。有什么原因吗?
pom.xml 依赖项
除了我在上面发布的内容之外,代码没有太多内容。如果我使用结果迭代器进行迭代,它只会给我一个结果。