1

有没有办法配置 Neo4j 的逻辑日志刷新行为,这样就不会在每个提交的事务之后将数据强制到磁盘(即使以数据丢失为代价)?我们在 Windows 上使用 Neo4J。

4

1 回答 1

1

您可以将 GraphDatabaseService 转换为 GraphDatabaseAPI 并执行以下操作:

db.tx().unforced().begin();

代替

db.beginTx();

非强制事务只会写入逻辑日志而不强制它并且仍然在对存储进行任何更新之前,因此当操作系统决定将缓冲区强制写入磁盘时,它将以正确的顺序发生(如果您的文件系统/操作系统支持有序写入,大多数现代文件系统都会这样做)。

如果发生崩溃,您可能会丢失最后 X 个交易的数据,但持久化的数据将是一致的。

注意虽然它有点实验性,但请随意尝试,风险自负。

于 2013-06-15T09:58:38.883 回答