We recommend using multiple SCSI controllers of type VMware Paravirtual to optimize and balance the I/O for the different SQL Server database hard disks, as described in this section.
The following table shows the recommended SCSI controller design for the OLTP and snapshot database VMs. The DATA and LOG disks are distributed across separate dedicated SCSI controllers because in a SQL Server OLTP workload both types of disks generate a high level of I/O to the storage. On the other hand, the TEMP database disks generate relatively little I/O and can, therefore, exist together with the operating system volume on a separate dedicated SCSI controller.
Table 37. SCSI controller properties in the OLTP and snapshot database VMs
SCSI bus sharing
Guest operating system disk, tempdb data and log disks
SQL DATA disk 1
SQL DATA disk 2
SQL log disk
The following table shows the recommended SCSI controller design for the DSS database VM. DSS workloads generate mostly read I/O to the DATA disks, with little I/O to the log disks. Also, tempdb usage increases significantly during DSS workload and can generate a significant amount of I/O. Because of this, as shown in the following table, the DATA disks and tempdb volumes are distributed across the three dedicated SCSI controllers for load balance, while the operating system, tempdb log, and DSS database log disks are located together on the first SCSI controller.
Table 38. SCSI controller properties in the DSS VMs
SCSI bus sharing
Guest operating system disk, DSS database log, tempdb log disk
SQL data disks 1
SQL data disks 2
Tempdb data disks
All virtual hard disks for the VMs were created as VMFS6 datastores. Each datastore was then assigned to its respective VMs.