我正在设置一个用于数据仓库的 Azure D11 SQL Server。我只能附加 4 个数据磁盘并且已经这样做了,现在我需要确定如何配置它们并拆分 DB 文件。我正在尝试根据我的具体情况调整MS 指南。
传统设计:
OS Disk/Azure Temp Disk
1 data disk - TempDB
1 data disk - Log
2 data disk - Data
我期待他们的指南适用于一般/潜在的 OLTP 服务器。我有一个采用简单恢复模式的数据仓库,每晚只有一个 ETL 过程。我不是特别擅长日志文件管理,但我的倾向是日志和 TempDB 可以放在一个数据磁盘上,留下三个磁盘可用于条带化和最大化夜间 ETL 的 IO,更重要的是,白天的报告。
将日志和 tempdb 放在一个磁盘上并为数据分三个条带是合理的,还是日志文件真的需要在一个单独的磁盘上?
Azure IaaS 与传统的本地服务器(带有 SAN 的虚拟服务器或纯物理服务器)不同。每个连接的驱动器最多可获得 500 IOPS。
一般建议是使用存储池对多个驱动器进行条带化以增加吞吐量。
由于 D 系列上只有四个驱动器可用,我将执行以下操作。
将 TempDB 放在 D:\,它是一个 SSD。不要在那里放任何其他东西,确保启动脚本将检查该驱动器是否有任何必要的文件夹,并在需要时修复权限。
将您拥有的四个磁盘条带化到一个驱动程序中,并将您的数据和日志文件都放在那里。
如果您有 8 个磁盘可供连接,那么我建议做两个驱动器,每个驱动器有四个磁盘,并将日志放在一个上,将数据放在另一个上。