精通Neo4j
上QQ阅读APP看书,第一时间看更新

3.1.4 事务

任何更新图的查询都运行在一个事务中。因此一个更新查询要么全部成功,要么全部失败。Cypher或者创建一个新的事务,或者运行在一个已有的事务中:

● 如果运行上下文中没有事务,Cypher将创建一个,一旦查询完成就提交该事务。

● 如果运行上下文中已有事务,查询就会运行在该事务中。直到该事务成功地提交之后,数据才会持久化到磁盘中去。

可以将多个查询作为单个事务来提交:

(1)开始一个事务。

(2)运行多个Cypher更新查询。

(3)一次提交这些查询。

提示:查询将这些变化放在内存中,直到整个查询执行完成。一个巨大的查询会导致JVM使用大量的堆空间。