The other day working with a client, I was attempting to move the TEMPDB data files to a new Solid State Drive (SSD) drive! I was stoked to see the performance gain with this because I have yet to work with SSD in a SQL Environment.
Of course I hit a problem or I wouldn’t be writing a blog post about it!
it is on a volume with sector size 8192. SQL Server supports a maximum sector size of 4096 bytes
Excuse me? SQL Server can’t support a drive? Well needless to say this was problematic. After extensive research, the client purchased the latest and greatest SSD. But unfortunately neither of us paid attention to the details. As always, the Devil is in the Details.
Apparently MS SQL Server cannot use a physical sector size larger than 4096. It can use smaller, but not larger! OK, next step what exactly are we working with.
Using FSUTIL command (fsutil fsinfo sectorinfo) I did confirm the physical sector size for the SSD was 8192. Repeated attempts to re-partition and/or re-format was not successful and it should not have been because the “physical” sectors are 8192, not the logical sectors.
Physical sector size is determined upon manufacturing and firmware. My client had to go back to the vendor to see if firmware was available to change the physical sector to 4096!
Once again, lesson learned! Be specific and diligent in your hardware details when purchasing SQL Server hardware.