Many people have many different opinions on this subject. Is it wise to virtualise SQL? I think it is fine. I was once not so sure but visiting SharePoint best practices conference last year as well as a data management event I now feel pretty confident. Also with our beast of a hyper-v setup I can have more RAM in a virtual SQL box than I could ever dream of in a physical server!
So on to SharePoint 2010. I wrote a couple of simle SQL scripts just to make the database server do some work and then I used SharePoint to see how it was afected. (I’m a Firefox user so all the SharePoint stuff was done using that) The SQL server was SQL 2008 with 10Gb RAM, with the data going to a normal vhd (our production environment will be virtual failover cluster with data over iSCSI). SharePoint is sitting on a virtual machine with 8GB of RAM.
I did the following actions and timed how long each step took. Then I did them twice more; once with the SQL CPU running at 100% and then again with the disk being very busy writing rows to a database and also sharepoint performing a full crawl.
The tasks were:
Create a Team Site
Upload a docx (this was a sample made using the great “=rand(10,10)” feature of Word)
Open the document using Web Apps
Save the document after editing it within the browser
And finally deleting the site
I selected these actions as they are the kind of things people will be doing everyday with sharepoint. I didnt inclide page loading times as there was no noticble difference between browsing the site when SQL was under load and when it was not.
And the results are in:
| Control (No Load) [seconds] | 100% CPU [seconds] | Disk load /full crawl [seconds] | |
| Create Site | 2.3 | 39.0 | 15.2 |
| Upload Docx | < 1 | 3.3 | 1.5 |
| Open with Web App | 1.5 | 6 | 6.8 |
| Save Docx | 2.3 | 13.0 | 1.8 |
| Delete Site | < 1 | 2.3 | 1.2 |
Pretty good really. Even with the SQL server sweating away at the backend your dear SharePoint end users will be uploading and viewing documents with minimal fustration!
If anyone else has any numbers or tests they have performed (or want to question mine) then please leave a comment!
Chris














Blog Comments