我使用Neo4j从存储在关系数据库上的数据对复杂图进行计算,这些计算必须经常进行,因此自然的解决方案是使用Neo4j动态创建无常的neo4j图。
我继续在互联网上找到如下参考资料(Neo4j:它是一个内存图形数据库吗?
Neo4j具有一个精简的变体,称为 无常图形数据库。这个旨在用于测试 只。例如,当您开发支持图形的应用程序时,您的单位 测试可能会使用它。不建议使用 无常图数据库,适用于现实生活中的场景,其中包含大量 数据。
我正在做上述操作,将ImpermanentGraphDatabase用于具有数千个节点的真实场景,我在这些节点上进行动态计算。 每次我需要动态计算时创建一个嵌入式数据库是不可行的,那么 Neo4j 为这种情况提供了什么解决方案?如果您将Neo4j ImpermanentGraphDatabase用于具有大量数据的现实生活场景,究竟会发生什么?
文中有一个小字"not"。
同样在(免费)书"图形数据库"(下载)中,无常服务器模式仅推荐用于测试,不适用于生产环境。如果要在本地(无群集)使用图形,则可以使用嵌入式模式。请记住,图形数据库始终有两个部分:存储和遍历引擎。但我认为,您正在寻找(密码)可查询的数据结构?值得一看的是TinkerPop/Gremlin(链接)。
为了您的目的,这取决于将要更改的部分。您的数据结构?计算公式?还是只是价值观?如果您的图形是静态的,则只需更新数据(而不是图形数据库)。如果你的图是动态的,你可以优化你的算法并使用不同的数据结构。图表并不总是最佳选择,树、列表或字典也不是。