在网上搜索时,STEAL和FORCE定义如下
FORCE或NO-FORCE:在事务提交之前,是否应将所有事务更新强制转换为磁盘?
此外,我被告知
在将所有日志记录写入稳定存储
之前,不会将事务视为已提交
那么WAL与FORCE方法有何不同?我觉得在这两种情况下,当我们提交事务时,必须将更改刷新到磁盘....
答案 0 :(得分:1)
使用WAL,您可以顺序写入日志。整个数据库中页面的更新可以异步写入日志条目。
强制方法要求将缓冲池中的所有脏页与提交操作同步刷新到磁盘。这是一项更昂贵的操作,并限制了吞吐量。
基本权衡:WAL崩溃后恢复时间更长,强力吞吐量更低。