![SQL Server 的驱动器配置总共只有 4 个驱动器(操作系统和数据)](https://linux22.com/image/498799/SQL%20Server%20%E7%9A%84%E9%A9%B1%E5%8A%A8%E5%99%A8%E9%85%8D%E7%BD%AE%E6%80%BB%E5%85%B1%E5%8F%AA%E6%9C%89%204%20%E4%B8%AA%E9%A9%B1%E5%8A%A8%E5%99%A8%EF%BC%88%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%E5%92%8C%E6%95%B0%E6%8D%AE%EF%BC%89.png)
如果只有四个驱动器,您会怎么做:a) 两个 RAID 1 阵列(操作系统 + 事务日志、数据)b) 1 个 RAID 10 阵列分区,或 c) 1 个 RAID 5 阵列分区?
谢谢!
答案1
2 x RAID 1 ,一个用于数据,一个用于日志。此组合可让您获得最佳速度和冗余度。
编辑:我原本预计你会排除操作系统。如果你也要安装操作系统,我还会考虑 1 个操作系统磁盘、1 个用于数据和日志的 RAID 1 集以及用于 tempdb 的第四个驱动器。还有 1 个操作系统和 RAID 5 中的其他三个,但性能不太好。
答案2
简短的回答--视情况而定。
您对磁盘 IO、容量和冗余度的要求是什么?读取与写入的比率是多少,数据增长速度有多快,您是否执行了大量操作,导致 tempdb 受到严重影响?
答案3
我会选择选项 (a),因为将日志与数据分开会获得优势。日志大多是按顺序写入的,而数据大多是随机写入的。您肯定不希望随机写入干扰您轻松的顺序写入。
对于装有操作系统的 RAID 阵列,您可能希望将其分为两个分区:一个用于操作系统,一个用于日志。尽管如一位用户在另一个帖子中评论的那样,这个问题对某些人来说近乎宗教问题。
有很多理由避免对数据库使用 RAID 5,但我认为您已经知道这些理由了。RAID 10 要好得多,但您实际上没有足够的磁盘来正确使用 RAID 10。
答案4
我认为这取决于数据库的潜在大小与磁盘的大小之比。
如果您需要大量磁盘空间用于数据库,请使用 RAID 10 和小型操作系统分区。如果您需要更多空间,请使用 RAID 5 和小型操作系统分区,但写入性能会受到影响。
如果您不需要空间,那么您将必须对两个独立的 RAID 1 阵列 V 一个分区的 RAID 10 进行基准测试(有趣的是,知道哪一个更适合您的环境:))。