首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >.mdf与.ldf的性能考虑

.mdf与.ldf的性能考虑
EN

Database Administration用户
提问于 2013-04-18 12:50:02
回答 1查看 3K关注 0票数 5

我刚刚从对这个问题的回答中了解到,Server使用的.mdf.ldf文件对于数据库来说是很重要的一对。我以前认为.ldf只是一个备份或审核的非关键日志。

无论如何,我们的服务器现在在SSD上有.mdf,在主硬盘上有.ldf。我是这样设置的,因为我认为.mdf是性能最关键的文件位置。

但现在看来,.ldf实际上是在发生UPDATE时首先编写数据的地方,然后是将.mdf写到后面的地方。

我应该把这两个文件都放到SSD上吗?或者,如果他们在不同的驱动器,即使其中一个是硬盘?(如果是的话,哪个文件应该放在哪里?)

如果这有区别的话,SELECT的性能对我来说比UPDATE更重要(也更常见)。

EN

回答 1

Database Administration用户

回答已采纳

发布于 2013-04-18 13:09:26

这些是数据(mdf)和日志(ldf)文件的一般规则:

  1. 调优mdf文件,以64 KB块进行随机读写访问。
  2. 优化ldf文件,以便以64 KB块顺序写入访问。

因为mdf文件是随机访问的,日志文件是按顺序访问的,所以如果日志与经常访问的其他数据共享磁盘,则会看到大量的写入性能下降。这在很大程度上是因为等待磁盘周围寻找的时间被浪费了。显然,对于SSD,您没有这个搜索代价,但是磁盘仍然有一个最大的写入吞吐量需要考虑。

在数据仓库/OLAP类型的服务器中,这可能不是什么问题,因为大多数日常使用可能是只读的,而ETL批处理可能会在非高峰时间运行。数据文件和日志文件可能不会相互竞争。

因此,这个故事的寓意是,如果您对数据库的写性能不满意,我建议将日志移动到一个具有较高顺序写入吞吐量的专用卷中。这通常意味着在传统的旋转磁盘(而不是SSD)中使用RAID10卷。您使用的磁盘越多,它就会越快。不要对日志使用RAID5,因为写入性能通常很差,除非您的数组控制器有足够大的缓存来掩盖这种效果。

票数 5
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/40351

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档