0

我刚开始研究 neo4j 以将其用于我的社交网络相关项目。在此期间,我遇到了以下代码:

https://github.com/neo4j/neo4j/blob/1.9.M04/community/embedded-examples/src/main/java/org/neo4j/examples/EmbeddedNeo4jWithIndexing.java

在浏览它时(请参阅上面的代码链接),我很难知道如何获得添加到给定graphDb. graphDb有什么方法可以使用ornodeIndex或其他方法找到它(节点总数)referenceIndex?如果是,如何?

我还需要帮助知道,如何将 graphdb 存储到磁盘上的任何给定路径?如何加载这个存储的graphdb并对其执行操作,比如搜索节点/关系等?

(有几个文件,如 *.db、*.id、*.keys 等。在DB_PATH执行上述代码时创建。所有这些文件有什么用?这些文件中是否包含创建的节点?如果是,如何我们可以使用它们吗?)

我们如何graphDb从 Web 界面(例如 Dashboard athttp://localhost:7474/webadmin/或 data at )访问它http://localhost:7474/db/data/

如果您需要任何具体信息来帮助我,请告诉我。

谢谢,尼丁。

4

2 回答 2

5

要开始使用 Neo4j Embedded 和 Java API,请参阅:

http://docs.neo4j.org/chunked/milestone/tutorials-java-embedded.html

获取正确的节点和关系计数:

IteratorUtil.count(GlobalGraphOperations.at(gdb).getAllNodes())
IteratorUtil.count(GlobalGraphOperations.at(gdb).getAllRelationships())

要使用集成的 neo4j 服务器访问嵌入式图形数据库,请参阅 http://docs.neo4j.org/chunked/milestone/server-embedded.html

于 2013-02-13T10:52:02.663 回答
3

呸!这些都是一个条目的很多问题......

要获取数据库中的节点和关系总数,请使用:

NodeManager nodeManager = ((GraphDatabaseAPI) graphDb).getDependencyResolver().resolveDependency(
            NodeManager.class);

long currentRelationships = nodeManager.getNumberOfIdsInUse(Relationship.class);
long currentNodes = nodeManager.getNumberOfIdsInUse(Node.class);

要更改图形数据库的路径,只需将路径传递给 GraphDatabaseFactory().newEmbeddedDatabase 方法。在您提到的示例中,您可以简单地将 DB_PATH 例如设置为/home/youruser/neo4j.

要使用 webadmin 访问您的数据库,请下载 neo4j,更改文件中的 org.neo4j.server.database.location 属性conf/neo4j-server.properties并将其指向您的数据库路径并启动服务器。

于 2013-02-13T10:38:02.087 回答