我了解到Neo4j社区版不提供dump。那么衡量底层Neo4j数据库大小的最佳方法是什么?使用du命令能否提供良好的估算?
谢谢。
谢谢。
您的意思是:
Neo4j社区版没有提供dump
企业版也没有提供类似的功能。您是在寻找有关原始磁盘容量大小或节点/关系计数的统计信息吗?
如果是磁盘容量,请在Linux上使用du -sh
,或在Windows上检查文件夹。
如果是节点/关系,请编写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);
MATCH ()
RETURN COUNT(*) AS node_count;
和关系的数量:
MATCH ()-->()
RETURN COUNT(*) AS rel_count;