每次快速写入,工作只是转移到了别处
每种存储引擎都必须决定,在向客户端报告写入成功之前,必须完成哪些操作。最快速的解决方案是在将字节复制到内存后立即返回。本地持久化写入会等待数据库主机上的 fdatasync() 操作。如果在该主机上完成写入后,写入仍未能保存,则需要等待网络卷、对象存储或多个数据库服务器各自保存自己的副本。
这些选择会同时影响延迟和持久性,因为内存中返回的速度很快,但一旦发生机器故障,写入可能会丢失。
评论
?
参与讨论
每种存储引擎都必须决定,在向客户端报告写入成功之前,必须完成哪些操作。最快速的解决方案是在将字节复制到内存后立即返回。本地持久化写入会等待数据库主机上的 fdatasync() 操作。如果在该主机上完成写入后,写入仍未能保存,则需要等待网络卷、对象存储或多个数据库服务器各自保存自己的副本。
这些选择会同时影响延迟和持久性,因为内存中返回的速度很快,但一旦发生机器故障,写入可能会丢失。