在tidb中,当打开sync-log
时,磁盘io util可以超过90%
,在set sync-log=false
之后下降到1%
,此配置的不利影响是什么?
最佳答案
简而言之,sync-log=true
保持数据安全,但会损害性能。
TiDB基于Raft共识算法,它需要确保每个
提交日志之前,筏日志会保留在多数磁盘上。为了
确保日志持久存在,我们需要两个步骤:
写(log_fd,日志)
fsync(log_fd)
当sync-log=false
时,TiDB跳过fsync
,它有助于提高性能,并且在以下情况下是安全的
没有电源故障。将其设置为true,即使您的数据始终是完整的,
出现电源故障。
查看更多:https://pingcap.com/docs/v3.0/faq/tidb/