Jason Massie and I had a steel cage blogmatch about whether to configure a SAN with shared or dedicated drives, and we both passed out for exhaustion.
This debate is starting up again but with a slightly different spin: virtualization. In an environment with Microsoft Hyper-V or VMware ESX, more than one SQL Server may have its virtual drives on the same physical hard drives.
If we have two SQL Servers, are we better off keeping their virtual hard drives on separate physical hard drives, or using one larger pool of hard drives shared between the two? Microsoft’s technical article “Running SQL Server 2008 in a Hyper-V Environment: Best Practices and Performance Considerations” attempts to answer that burning question with Figure 16 on page 24:

This graph shows two things:
- Nobody spell checked the graph title, and
- Dedicated drives were faster.
However, they’re only 3.5% faster on average. Management of the shared disk approach is much more than 3.5% easier, so I’d have to vote for the shared drive approach, much to Jason Massie’s glee.
Plus, keep in mind that your servers probably won’t all be under full load at all times. During periods where only one server is under heavy load, that server should achieve higher performance throughput since they’ll have more idle spindles available to them.
5 Comments. Leave new
Boom, in yer face, yo. haha
And, as is so often stated, it truly does depend and that is why logging IO usage patterns over time to the individual data files is so important so that you can know what can be shared and what needs dedicated spindles for throughput.
Ah, I really like saying that. “It depends”. 🙂
Wouldn’t it be ironic if that graph was generated with Crystal Reports? 🙂
So this comparison is with dedicated LUNs using dedicated drives? What if you have a dedicated LUN that is connected with a Microsoft iSCSI initiator, but the volume that is carved off is part of a 46 drive pool that has other LUNs with ESX virtual machines?
Jack – the answer is simple: it depends. If it’s 1Gb iSCSI, then the drive back end probably doesn’t matter because your big bottleneck will be that 1Gb connection. If it’s 10Gb, then it’ll start to matter much more.