我知道Neo4j社区版不提供转储。测量底层Neo4j数据库大小的最佳方法是什么?做du会提供一个好的估计吗?
谢谢。
发布于 2013-07-02 05:53:12
你的意思是:
Neo4j社区版不提供转储
企业版也没有提供类似的功能。您是否在寻找关于原始磁盘或节点/关系计数方面的数据库大小的统计信息?
如果是磁盘:在linux上使用du -sh,或者在Windows上检查文件夹。
If Node/Relationship:您必须编写Java代码来实际计算真实大小,因为Web控制台上的计数并不总是正确的。您还可以通过获取磁盘上的纯大小并除以9(对于节点存储)和33 (对于关系存储)进行基本计数。
Java代码将如下所示:
long relationshipCounter = 0;
long nodeCounter = 0;
GlobalGraphOperations ggo = GlobalGraphOperations.at(db);
for (Node n : ggo.getAllNodes()) {
nodeCounter++;
try {
for (Relationship relationship : n.getRelationships()) {
relationshipCounter++;
}
} catch (Exception e) {
logger.error("Error with node: {}", n, e);
}
}
System.out.println("Number of Relationships: " + relationshipCounter);
System.out.println("Number of Nodes: " + nodeCounter);Web Console并不总是正确的,因为它检查文件中的最高值,而Neo4j使用节点的删除标记,因此可能存在一系列“已删除”节点,从而增加可用的总节点数。最终,neo4j将压缩并删除这些节点,但它们不会实时完成。
文件大小可能存在的原因同上。唯一正确的方法是遍历所有节点和关系,以检查"isActive“标记。
发布于 2016-02-06 03:22:09
以字节为单位查看数据库大小的一些方法:
du -sh {$NEO4J_HOME}/data/graph.db在仪表板中:
http://localhost:7474/webadmin/并查看“数据库磁盘使用情况”指示器。
仪表板上的‘'Server’:
http://localhost:7474/webadmin/#/info/org.neo4j/Store%20file%20sizes/并查看“TotalStoreSize”行。
最后是数据库抽屉;向下滚动,查看“数据库”部分。
发布于 2016-02-12 04:02:15
您可以使用Cypher获取节点数:
MATCH ()
RETURN COUNT(*) AS node_count;以及关系的数量:
MATCH ()-->()
RETURN COUNT(*) AS rel_count;https://stackoverflow.com/questions/17413946
复制相似问题