Tag: neo4j

遗留索引/自动索引与Neo4j中的新索引方法之间的区别

我无法理解遗留索引方法和新索引方法之间的区别,所以也许有人可以为我澄清这些要点。 我唯一关心的是它与Java API的关系,而不是Cypher查询。 次要问题 1)Legacy Indexing与自动索引相同吗? 2)如果您没有使用自动索引,那么每次向图表添加节点时都必须指定是否应该对其进行索引? 3)我是否相信您可以启用/禁用Java api中的所有自动索引,而不必弄乱配置文件? 4)以下这一行的含义取自http://docs.neo4j.org/chunked/milestone/indexing.html 本章重点介绍如何使用手动索引和自动索引。 从Neo4j 2.0开始,这不是在Neo4j中索引数据的首选方法,而是建议在数据库模式中定义索引。 注意: 我正在使用Java API

使用构造函数-arg字段填充spring bean

如何使用该字段注入包含Map的属性文件以用作其他构造函数arg。 从属性文件加载Map bean目前使用以下方式设置: Java等价物: Map configuration = EmbeddedGraphDatabase.loadConfigurations( “neo4j_config.props” ); GraphDatabaseService graphDb = new EmbeddedGraphDatabase( “data/neo4j-db”, configuration ); 谢谢

使用java中嵌入的neo4j进行查询

我有2个节点:名称和城市。 这两者之间的关系是(姓名)[:LIVES_IN] – >(城市)。 我正在尝试生成一个查询,以找出生活在城市X中的人(其中X将来自文本框)。 我正在尝试按照Luanne和Micheal Hunger的建议构建此查询: import java.io.IOException; import java.util.ArrayList; import org.neo4j.graphdb.GraphDatabaseService; import org.neo4j.graphdb.Node; import org.neo4j.graphdb.RelationshipType; import org.neo4j.graphdb.Transaction; import org.neo4j.graphdb.factory.GraphDatabaseFactory; import org.neo4j.helpers.collection.IteratorUtil; import org.neo4j.cypher.javacompat.ExecutionEngine; import org.neo4j.cypher.javacompat.ExecutionResult; public class registrationFrame extends javax.swing.JFrame { public static final String DB_PATH = “D://data”; public static GraphDatabaseService graphDb = null; Node person; Node password; Node city; String nodeResulta; public […]

使用Spring Data neo4j创建空间索引时出错

我正在研究Neo4j Spring Data项目,并希望在节点上执行一些与空间相关的操作。 实体类 @NodeEntity public class User { @GraphId Long id; private String fname; private String lname; private String uname; private String pwd; private Double latitude, longitude; @Indexed(indexType = IndexType.POINT, indexName = “geom”) private String wkt; public void setLocation(Double lon, Double lat) { this.wkt = String.format(“POINT( %.2f %.2f )”, lon, lat); } @RelatedTo(type = […]

不推荐使用包装服务器引导程序,还有什么选择?

必须通过WrappingNeoServerBootstrapper创建WrappingNeoServer实例(根据以前版本的手册),现在不推荐使用它。 如果我尝试直接实例化WrappingNeoServer ,我需要传递一个GraphDatabaseAPI实例,该实例可以通过GraphDatabaseAPI的简单GraphDatabaseService ,但也标记为Deprecated 。 我只能假设此function现在被认为是勉强必要的,并且无法再使用服务器运行嵌入式安装。 我对吗? 这个问题可以解决对我有利吗?

如何在使用spring-data-neo4j时启用neo4j webadmin?

我正在使用REST示例从Accessing Neo4j Data引导一个新项目。 该示例使用嵌入式数据库而不是独立的neo4j服务器,但我想使用Neo4J webadmin界面来显示我的数据。 如何从此配置启动webadmin界面? (他们使用WrappingNeoServerBootstrapper使用带有spring-data-neo4j的WrappingNeoServerBootstrapper但是答案中省略了很多知识,例如它甚至没有提到配置的位置。作为POM的新手,Spring Boot和Neo4j因此我可以不要使用那个答案。)

将大量节点插入Neo4J

我有一个存储在典型MySQL数据库中的表,我使用java构建了一个小的解析器工具,以解析并构建一个neo4j数据库。 该数据库将具有约4,000万个节点,每个节点具有一个或多个边缘(最多可能有10个边缘)。 问题来自我必须创建某些节点的方式。 有一个用户节点,注释节点和hashtag节点。 用户节点和主题标签节点必须都是唯一的。 我正在使用以下示例中的代码来确保唯一性: public Node getOrCreateUserWithUniqueFactory( String username, GraphDatabaseService graphDb ) { UniqueFactory factory = new UniqueFactory.UniqueNodeFactory( graphDb, “users” ) { @Override protected void initialize( Node created, Map properties ) { created.setProperty( “name”, properties.get( “name” ) ); } }; return factory.getOrCreate( “name”, username ); } 我曾考虑使用批量插入器,但我没有看到在执行批量插入时检查节点是否唯一的方法。 所以我的问题是什么是插入所有这些节点的最快方法,同时仍然确保它们保持其唯一性。 任何帮助都将一如既往地受到高度赞赏。

Neo4j:正确测试螺栓驱动器

我正在按照http://neo4j.com/developer/java/将Neo4j Bolt驱动程序添加到我的应用程序中: import org.neo4j.driver.v1.*; Driver driver = GraphDatabase.driver( “bolt://localhost”, AuthTokens.basic( “neo4j”, “neo4j” ) ); Session session = driver.session(); session.run( “CREATE (a:Person {name:’Arthur’, title:’King’})” ); StatementResult result = session.run( “MATCH (a:Person) WHERE a.name = ‘Arthur’ RETURN a.name AS name, a.title AS title” ); while ( result.hasNext() ) { Record record = result.next(); System.out.println( record.get( “title” ).asString() […]

如何使用Java连接到本地安装的neo4j服务器

我是Neo4J的新手,尽管我用了几个小时的谷歌搜索,却找不到我的问题的答案。 到目前为止,我一直在关注这些教程,现在我对如何/何时使用Neo4j有了基本的了解。 现在,我即将开始修改我的hello-world代码并连接到我机器上本地安装的Neo4J服务器,可通过http://127.0.0.1:7474访问。 原始连接(使用嵌入式数据库): GraphDatabaseService gdb = new EmbeddedGraphDatabase(“c:\\helloworld\\data\\graph.db”); 问题是,无论如何要修改此行以连接到c:\ neo4j \ data \ graph.db中的“服务器”数据库? 服务器当前正在作为Windows服务运行,我可以使用Web管理工具查看其数据库。 目前,我对使用REST API不感兴趣,因为服务器和客户端应用程序在同一台机器上运行。 我觉得我在这里遗漏了一些明显的东西……

纯粹在内存中运行Neo4j而没有任何持久性

我不想保留任何数据,但仍希望使用Neo4j进行图形遍历和算法function。 在嵌入式数据库中,我配置了cache_type = strong ,在所有写入之后,我将事务设置为失败。 但是我的写入速度(节点,关系创建速度)很慢,这在我的过程中成为一个巨大的瓶颈。 所以,问题是,Neo4j可以在没有任何持久性方面的情况下运行,就像纯API一样吗? 我尝试过像JGraphT这样的其他人,但那些没有Neo4j提供的遍历机制。