1

我在网上搜了一下,STEAL和FORCE定义如下

FORCE or NO-FORCE:事务的所有更新都应该在事务提交之前强制到磁盘吗?

此外,有人告诉我

在所有日志记录都写入稳定存储之前,不会认为事务已提交

那么 WAL 与 FORCE 方法有什么不同呢?我觉得在这两种情况下,都必须在提交事务时将更改刷新到磁盘......

4

1 回答 1

2

使用 WAL,您可以对日志进行顺序写入。整个数据库中页面的更新可以异步写入日志条目。

强制方法要求缓冲池中的所有脏页与提交操作同步刷新到磁盘。这是一个更昂贵的操作并且限制了吞吐量。

基本权衡:WAL 崩溃后恢复时间更长,而强制吞吐量更低。

于 2016-12-08T06:04:06.250 回答