Database Configuration for Maximum SharePoint 2010 Performance

  • 5,068 views
Uploaded on

Database configuration has a direct impact on how SharePoint 2010 performs. This presentation looks at the SQL Server database and what configuration changes can be made to maximize performance for …

Database configuration has a direct impact on how SharePoint 2010 performs. This presentation looks at the SQL Server database and what configuration changes can be made to maximize performance for your SharePoint 2010 farms

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
5,068
On Slideshare
0
From Embeds
0
Number of Embeds
3

Actions

Shares
Downloads
88
Comments
0
Likes
10

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. for Maximum SharePoint 2010/2013 Performance
  • 2. http://bassplayerdoc.wordpress.com EdwinMSarmiento@Outlook.com @EdwinMSarmiento http://ca.linkedin.com/in/EdwinMSarmiento Microsoft MVP - SQL Server
  • 3. Henry Kremer had a vision of having human-powered airplanes
  • 4. “ - Dr. Paul MacCready, American aeronautical engineer - The problem is that “
  • 5. it is problems NO DIFFERENT from how we performance
  • 6. duct tape fixes
  • 7. whatif problems we look at the same
  • 8. let’s look at the databaseto improvehow we can performance
  • 9. a SharePoint databaseneeds 8-cores,x64 16 GB
  • 10. but we already KNOWthat
  • 11. but we already KNOWthat or do we
  • 12. MDF/NDF LDF a SharePoint databasehas
  • 13. MDF/NDF LDF a SharePoint databasehas which are simply just
  • 14. a SharePoint databasehas MDF/NDF LDF which are simply just
  • 15. a SharePoint databasehas MDF/NDF LDF their file access patterns
  • 16. a SharePoint databasehas MDF/NDF LDF MDF/NDF read-write behavior:
  • 17. a SharePoint databasehas MDF/NDF LDF LDF read-write behavior:
  • 18. a SharePoint databasehas MDF/NDF LDF stored inside
  • 19. a SharePoint databasehas MDF/NDF LDF stored inside
  • 20. let’s answer a few questionsbased on this information
  • 21. let’s answer a few based on this information what would happen if the files are stored on multiple disks questions
  • 22. let’s answer a few based on this information what would happen if we have multiple files questions
  • 23. let’s answer a few based on this information on multiple disks multiple files questions
  • 24. then single drive are we storing database files in a
  • 25. then system drive are we storing database files in the
  • 26. provision capacity based on performance &
  • 27. some
  • 28. some measure* I/O system performance BEFORE deployment *a utility called can be used for this
  • 29. some measure* I/O system performance BEFORE deployment because you want to know if you’re getting what was promised
  • 30. some create multiple data files because you can have multiple disks doing their job for you *only supported on filegroup
  • 31. some create multiple data files because you can have multiple disks doing their job for you *I usually start with data files
  • 32. some move database files OUT of the system partition because your system partition is already doing something else
  • 33. some use RAID 10 for better protection & write performance
  • 34. some physically* separate MDF from LDF because they have different access patterns *your may tell you otherwise
  • 35. some format the LUNs* with 64K clusters because SQL Server works in 64K chunks *for both &
  • 36. some pre-size MDF/NDF and LDF files because you don’t want your storage to work harder
  • 37. some make all file & autogrowth sizes EQUAL because SQL Server uses the proportional fill algorithm
  • 38. some make all file & autogrowth sizes EQUAL and because you don’t want your storage to work harder
  • 39. hidden process of reclaiming used disk space without having to ZERO it out
  • 40. configuring instant file initialization
  • 41. log (LDF) files are NOT affected by instant file initialization
  • 42. some pre-size MDF/NDF and LDF files that’s why you need to
  • 43. understanding
  • 44. have you ever wondered what that recovery model is for?
  • 45. all database changes are written in the log
  • 46. this allows for point-in-time recoverability
  • 47. the log gets full over time
  • 48. the log gets full over time
  • 49. the log gets full over time
  • 50. the log gets full over time
  • 51. the log gets full over time
  • 52. what happens if it gets FULL?
  • 53. what happens if it gets FULL? it GROWS we’re assuming autogrowth is configured
  • 54. what happens if it gets FULL? and GROWS
  • 55. what happens if it gets FULL? and
  • 56. when it it has to ZERO out the file
  • 57. when it it has to ZERO out the file which also means that transactions are waiting for the autogrowth process to complete before they can continue
  • 58. when the disk containing the log (LDF) file gets full, the database automatically becomes read-only even
  • 59. log file growth causing database to be read-only
  • 60. can we AVOID this
  • 61. changing to recovery model you don’t want to do this if you’re concerned about point-in-time recoverability
  • 62. run regular
  • 63. and
  • 64. shrinking your databases
  • 65. effects of shrinking databases on index fragmentation
  • 66. configuration create ¼ the number of files per CPU core *I usually start with 4 data files of equal size and autogrowth increments
  • 67. configuration place database files on faster drive
  • 68. configuration place database files on protected drive *because SQL Server WILL NOT START without tempdb
  • 69. other configuration available in SQL Server 2008 and higher
  • 70. other configuration the faster the backups complete, the more resources are available for the database
  • 71. other configuration also very useful for high availability and disaster recovery
  • 72. other configuration this is documented - http://technet.microsoft.com/en-us/library/cc298801.aspx#Section6 we, DBAs, are confused because this is not OUR best practice *look for the proc_UpdateStatistics stored procedure
  • 73. other configuration we, DBAs, are confused because this is not OUR best practice this is documented - http://technet.microsoft.com/en-us/library/cc298801.aspx#Section6 *look for the proc_UpdateStatistics stored procedure
  • 74. other configuration we, DBAs, are confused because this is not OUR best practice this is documented - http://technet.microsoft.com/en-us/library/cc298801.aspx#Section6
  • 75. other configuration we want to avoid PAGE SPLITS
  • 76. other configuration applies to Standard Edition *because Enterprise Edition already has this by default
  • 77. checking and setting database configuration
  • 78. http://technet.microsoft.com/en-us/library/cc262731.aspx
  • 79. perform REGULAR consistency checks http://technet.microsoft.com/en-us/library/cc262731.aspx *test implementing Trace Flag 2549 & 2562 KB 2634571 SQL Server 2008 SP2 and higher
  • 80. perform REGULAR index maintenance http://technet.microsoft.com/en-us/library/cc262731.aspx *look for the proc_DefragmentIndices stored procedure
  • 81. exclude SQL Server files on your AV scan http://support.microsoft.com/kb/309422 How to choose antivirus software to run on computers that are running SQL Server
  • 82. pattern did you NOTICE a common in all of the
  • 83. I/O they ALL pertain to performance
  • 84. great DBA the SECRET to becoming a I just told you
  • 85. TALK to your SQL Server DBAs
  • 86. IMPLEMENT these changes
  • 87. Questions
  • 88. http://bassplayerdoc.wordpress.com EdwinMSarmiento@Outlook.com @EdwinMSarmiento http://ca.linkedin.com/in/EdwinMSarmiento Microsoft MVP - SQL Server