Tuning SQL Server for Sharepoint-Sharepoint Summit Toronto 2014
-
Upload
serge-luca -
Category
Software
-
view
113 -
download
2
Transcript of Tuning SQL Server for Sharepoint-Sharepoint Summit Toronto 2014
Tuning SQL Server for SharePoint : what every SharePoint consultant needs to know
Serge Luca & Isabelle Van Campenhoudt
www.sharepointsummit.org
About us
Isabelle Van Campenhoudt
SQL Server MVP
Consultant, speaker, trainer
Managing partner of www.ShareQL.com
Works with SQL Server since 1999
Blog: http://thesqlgrrrl.wordpress.com/
@thesqlgrrrl
Isabelle Van
Campenhoudt
www.sharepointsummit.org
About Us
Serge Luca
SharePoint MVP
Consultant, speaker, trainer
Managing partner of www.ShareQL.com
Works with SharePoint since 2001
Blog: http://sergeluca.wordpress.com/
@SergeLucaSerge Luca
www.sharepointsummit.org
A propos
Share
QL
4
Isabelle Van Campenhoudt
MVP SQLTheSQLgrrrl.wordpress.com
Serge LucaMVP SharePointSergeluca.wordpress.com
ShareQL.com
www.sharepointsummit.orgAgendaBasic SharePoint DB concepts
Operating System settings
SQL Server configuration
Databases configuration
SharePoint and SQL Server integration concepts
SQL Server optimization
HA and DR : Always On Availability Groups & SP 2013
www.sharepointsummit.orgAgendaBasic SharePoint DB concepts
Operating System settings
SQL Server configuration
Databases configuration
SharePoint and SQL Server integration concepts
SQL Server optimization
HA and DR : Always On Availability Groups & SP 2013
www.sharepointsummit.org
Basic SharePoint Concepts
95% of SharePoint content stored in SQL
Server
Farm Configuration information stored in
configuration db
Central Administration content stored in own
content db
Most Service Applications have at
least one db
All Web Applications have at least one
content db
Farm has several databases; >20 if
spousal installation
www.sharepointsummit.orgAgendaBasic SharePoint DB concepts
Operating System settings
SQL Server configuration
Databases configuration
SharePoint and SQL Server integration concepts
SQL Server optimization
HA and DR : Always On Availability Groups & SP 2013
www.sharepointsummit.org
Latence
NetworkLatency between web front ends and SQL
Server
• < 1 ms during10 minutes (1% failure max) • 1 Giga bits / sec• Mandatory for stretched farm, but good practice
www.sharepointsummit.org
NTFS Allocation Unit Size
64K is optimal, 4K = 30% Performance
Penalty
Use chkdsk <drive>to Verify
Use Format to Configure:• Format <drive> /Q /FS:NTFS /A:64K /V:<volume> /Y
www.sharepointsummit.orgAgendaBasic SharePoint DB concepts
Operating System settings
SQL Server configuration
Databases configuration
SharePoint and SQL Server integration concepts
SQL Server optimization
HA and DR : Always On Availability Groups & SP 2013
www.sharepointsummit.org
SQL Server configuration
For SharePoint 2013:• SQL Server 2008 R2 SP1• SQL Server 2012 (SP1 for BI)• SQL Server 2014 (SP2013 SP1 & April CU)
Don’t install SSMS on the SQL Server computer
Use named instances\ SharePoint
Use a dedicated instance
Run the service with a Managed account
•No specific permission
www.sharepointsummit.org
Collation settings
Latin1_General_CI_AS_KS_WS (for SharePoint databases)
(Any CI collation is supported for tempDBs, master, but Latin1_xxx_ is recommended)
SP uses this collation when it creates its own db Cannot be changed after the setup
www.sharepointsummit.org
Use alias for the connection string• Client alias or DNS alias (preferred)
Good practice : every SP Content db must be created (and documented) by a DBA after a strict capacity plan
www.sharepointsummit.orgAgendaBasic SharePoint DB concepts
Operating System settings
SQL Server configuration
Databases configuration
SharePoint and SQL Server integration concepts
SQL Server optimization
HA and DR : Always On Availability Groups & SP 2013
www.sharepointsummit.org
System databases
Master : similar to the SP configDB
Model : template for other dbs
Tempdb : temporarily results
Msdb : for automation
User databases The SharePoint databases
SQL Server basic concepts
www.sharepointsummit.org
SQL Server basic concepts
Simple Recovery Model
.MDF .LDFAddContent
Content Database Located on Hard Drive
Checkpoint
Data
Data
Simple Recovery Model
www.sharepointsummit.org
Full Recovery Model
.LDF
Data
Data
.MDFAddContent
Content Database Located on Hard Drive
Checkpoint
Data
Data
Full Recovery Model (Recommended)
SQL Server basic concepts
www.sharepointsummit.org
Model db : recovery model = full
Tempdb : recovery model = simple
SharePoint DB : recovery model ?
Contend DB = full Config DB= simple
Services App DBs= it depends :•http://
technet.microsoft.com/en-us/library/
cc678868.aspx
Always On Availability groups: recovery = full !
SQL Server basic concepts
www.sharepointsummit.org
Model DB settings
Increase Initial sizeIncrease Autogrowth
(MB , not %)
Don’t modify Model db collation Full Recovery Model
www.sharepointsummit.orgTempdb settings
Configure Tempdb files•#files = #cores •(on sql server 2012 Max 8 if #cores > 8)
•Same size for every file
Configure Tempdb Size •At Least 10% of Total Content DB’s Size or
•Size of Largest Table - Whichever Greater
Tempdb Database Settings•Increase Initial Size Setting•Increase Autogrowth Settings (Use MB Not %)•Use Simple Recovery Model•Place on Different Drive Than Content Databases
www.sharepointsummit.org
Files Placement
Priority (Fastest to Slowest Drive)
Tempdb Data and Transaction Log Files
DataBase Transaction Log Files
Search Database Data Files Content Database Data
Files
Use Multiple Data Files for Content and Search DB’s
Distribute Equally-Sized Data Files Across Separate Disks
Number of Data Files Should Be <= Number of Processor Cores
Multiple Data Files Not Supported for Other DBs
www.sharepointsummit.orgAgendaBasic SharePoint DB concepts
Operating System settings
SQL Server configuration
Databases configuration
SharePoint and SQL Server integration concepts
SQL Server optimization
HA and DR : Always On Availability Groups & SP 2013
www.sharepointsummit.org
Installating SharePoint
Setup account (sp-install)Must be:
(SQL Server) DBcreator
(SQL Server) Securityadmin
Local admin Domain account
www.sharepointsummit.org
Integrating SharePoint and SQL Serveur
Farm has several databases; >20 if spousal installation
Site Collections only reside in one database
Content database contains multiple site collections (2,000 Default Setting)
If Site Collection > 100GB store in own content database•Soft limit maximum size <= 200 GB
Use SharePoint to control size of content database •Quota Templates •Maximum Number of Site Collections
www.sharepointsummit.org
SP Health Analyzer
Job will defragment the indices
If fragment > 30% &
rowcount > 10.000
Job will update statistics
AUTO_CREATE_STATISTICS
OFF
www.sharepointsummit.org
Verify Integrity of databases
DBCC CheckDB
Check REPAIR_REBUILD Option to Fix Errors (Not
Always Possible)REPAIR_ALLOW_DATA_
LOSS Not Supported
Time Consuming Operation, Run During
Non-Peak Hours
For Very Large DBs consider using option
MAXDOP=1
www.sharepointsummit.orgAgendaBasic SharePoint DB concepts
Operating System settings
SQL Server configuration
Databases configuration
SharePoint and SQL Server integration concepts
SQL Server optimization
HA and DR : Always On Availability Groups & SP 2013
www.sharepointsummit.org
Tools
CPU I/O (and use SQL I/O to check
your SAN) Network Memory
Run a trace of Performance Counters (24 hours) Provides templates of
accurate counters Analyse regarding
thresholds Generate meaningfull
reports
Use PAL(« Performance Analysis of Logs »)
Use this trace as a baseline!!!
www.sharepointsummit.org
Using SQL Server Resource Governor to optimize Search Database usage
Part of SQL Server Enterprise (since SQL 2008)
Limits CPU and memory usage on some DBs• like search DBs
Allow less CPU & mem usage during work hours
Allow more CPU & mem usage during off hours
39
www.sharepointsummit.orgAgendaBasic SharePoint DB concepts
Operating System settings
SQL Server configuration
Databases configuration
SharePoint and SQL Server integration concepts
SQL Server optimization
HA and DR : Always On Availability Groups & SP 2013
www.sharepointsummit.org
Always On Availability Groups & SharePoint
SQL 1
FARM 1
SQL 2
ProductionToronto
High Availabilty
Synchronous
www.sharepointsummit.org
Always On Availability Groups & SharePoint
SQL 1
FARM 1
SQL 2
Synchronous
ProductionToronto
High Availabilty
www.sharepointsummit.org
Always On Availability Groups & SharePoint
SQL 1
FARM 1
SQL 2
FARM 2
SQL 3
ProductionToronto
DRMontréal
Asynchronous
DisasterRecovery
Synchronous
www.sharepointsummit.org
Comparison AlwaysOn and other SQL Servers HA & DR
High Availability and Disaster RecoverySQL Server Solution
Potential Data Loss
(RPO)
Potential Recovery Time
(RTO)
Automatic Failover
Readable Secondaries
AlwaysOn Availability Group - synchronous-commit Zero Seconds Yes 0 – 2
AlwaysOn Availability Group - asynchronous-commit Seconds Minutes No 0 - 4
AlwaysOn Failover Cluster Instance NA Seconds-to-minutes
Yes NA
Database Mirroring - High-safety (sync + witness) Zero Seconds Yes NA
Database Mirroring - High-performance (async) Seconds Minutes No NA
Log Shipping Minutes Minutes-to-hours
No Not duringa restore
Backup, Copy, Restore Hours Hours-to-days
No Not duringa restore
Thank you for your attention!This presentation will be available on the Toronto
SharePoint Summit web site a few days after the event.
@sergeluca@thesqlgrrrl