我不想坚持任何数据,但仍希望使用的Neo4j为它的图形遍历和算法的能力。 在嵌入式数据库,我已经配置cache_type = strong
,所有的写操作后,我设定的交易失败。 但我的写入速度(节点,关系创建速度)是一个缓慢而这正在成为我的过程中的一大瓶颈。
所以,问题是,可以Neo4j的进行没有任何持久性方面它在所有的,只是作为一个纯粹的API上运行? 我想其他人一样JGraphT但那些没有像那些Neo4j的提供穿越机制。
我不想坚持任何数据,但仍希望使用的Neo4j为它的图形遍历和算法的能力。 在嵌入式数据库,我已经配置cache_type = strong
,所有的写操作后,我设定的交易失败。 但我的写入速度(节点,关系创建速度)是一个缓慢而这正在成为我的过程中的一大瓶颈。
所以,问题是,可以Neo4j的进行没有任何持久性方面它在所有的,只是作为一个纯粹的API上运行? 我想其他人一样JGraphT但那些没有像那些Neo4j的提供穿越机制。
据我所知,Neo4j的数据存储和Lucene索引始终写入文件。 在Linux上,至少,你可以建立一个ramfs
文件系统来保存在内存中的文件。
也可以看看:
有多少改变你组中的每个交易? 你应该尝试将多达数千每笔交易的变化,因为提交事务强制逻辑日志到磁盘。
然而,在你的情况,你可以开始,而不是您的交易有:
db.tx().unforced().begin();
代替:
db.beginTx();
这使得该交易不会等待逻辑日志以武力盘,使小额交易速度更快,但停电可能会对你失去了过去的数据的秒可能。
在TX()方法坐在GraphDatabaseAPI,其例如EmbeddedGraphDatabase器具。
你可以尝试一个虚拟驱动器。 它将使Neo4j的坚持到驱动器,但它会一切发生在内存https://thelinuxexperiment.com/create-a-virtual-hard-drive-volume-within-a-file-in-linux/