Practical tools and techniques for architecting and maintaining high performing SharePoint 2013...

27
Practical tools and techniques for architecting and maintaining high performing SharePoint 2013 environments Doug Hemminger SharePoint Solutions Architect, Protiviti

Transcript of Practical tools and techniques for architecting and maintaining high performing SharePoint 2013...

Practical tools and techniques for architecting and maintaining high performing SharePoint 2013 environments

Doug HemmingerSharePoint Solutions Architect, Protiviti

About MeI am a Chicago-based Microsoft SharePoint Server MVP and a SharePoint Solution Architect for Protiviti

Chica

go

E-mail: [email protected]

Twitter: @DougHemminger

Blog: www.SharePointDoug.com

Contact Me

3

Database

• Planning

• Performance

Search

• Full Crawl

• Continuous Crawl

Caching

Developer Dashboard

Agenda

4

The evolution of file storage

Database – Planning and Performance

6

Use a dedicated server for SQL server

Collation = Latin1_General_CI_AS_KS_WS

Max Degree of Parallelism = 1

Do not enable auto-create statistics on a server that hosts SQL Server and SharePoint

Use a SQL Server alias to simplify moving the database in the future

Database - Planning

7

Allocate 2 GB for the Configuration database

Allocate 1 GB for the Central Administration content database.

Unless using mirroring or Always On, change the recovery model for the databases list above from full to simple.

Use full recovery model in combination with appropriate backup strategy for all other databases.

Increase Autogrowth Settings (Use MB Not %)

Database - Planning

8

NTFS Allocation Unit Size should be 64 KB (8 8KB Pages = 1 Extent)

Priority (Fastest to Slowest Drive)• (Fastest) Tempdb Data and Transaction Log Files• Content and Search Database Transaction Log Files• Search Database Data Files• (Slowest) Content Database Data Files

Database - Planning

9

Size your databases to what you expect them to roughly grow to in 1-2 years.

Database size = ((D × V) × S) + (10 KB × (L + (V × D)))D = Number of documentsV = Number of non-current versionS = Average size of each documentL = Number of list items (3 times the number of documents)

Database - Planning

10

200 GB Database size limit for collaboration databases

• 100 GB maximum for each site collection

• Generally a mix of read and write operations

Up to 16 TB limit for records and archival databases

• 2 TB limit for each site collection

• Generally only minimal read operations

Database - Planning

11

IOPS (Input/Output Operations Per Second)

Disk sub-system performance of 0.25 IOPS per GB to 2 IOPS per GB is recommended for optimal performance

For example, 100 GB Content DB should be on a disk that supports 25 to 200 IOPS. If you have 8 Content DBs of that size sharing a disk, you would plan for 200 – 1600 IOPS

Database - Performance

12

Higher RPS (Requests Per Second) correlate to higher IOPS.

Database Performance

13

SQLIO: Use to simulate and test Read and Write I/O patterns

SQLIOSIM: Use to test IOPS under load on an installed farm

Database - Performance

Demo

Search

16

Search

Database Scaling Disk IOPS Disk size 10M items 100M items

Crawl

One DB per 20M itemsSQL IOPS: 10 per 1 DPS

Medium/High Medium15GB2GB log

110GB50GB log

Link

One DB per 60M itemsSQL IOPS: 10 per 1M items

Medium Medium10GB0.1GB log

80GB5GB log

Analytics Reporting

Split when reaching 100-300GB

Medium MediumUsage dependent

Usage dependent

Search Administration

One DB Low Low0.4GB1GB log

1GB data2GB log

17

How long does a full crawl take on 20 million documents that exist on a disk subsystem with 500 IOPS

Example: 500 IOPS = 50 documents per second

20,000,000/50 = 400,000 seconds

400,000 seconds = 111 hours

Search

18

Search – Continuous Crawl

Demo

20

Blob Cache - controls the caching for binary large objects (BLOBs), such as frequently used image, audio, and video files.

Output cache - Stores the rendered output of a page.

Object cache - stores objects such as lists and libraries, site settings, and page layouts in memory on the front-end web server.

Caching

Demo

22

23

The Developer Dashboard contains an extensible mechanism for measuring various performance counters at various scopes.

Developer Dashboard

Demo

25

Resources

Title Url

Storage and SQL Server capacity planning and configuration (SharePoint Server 2013)

http://technet.microsoft.com/en-us/library/cc298801(v=office.15).aspx

SQLIO Disk Subsystem Benchmark Tool. http://www.microsoft.com/en-us/download/details.aspx?id=20163

How to use the SQLIOSim utility to simulate SQL Server activity on a disk subsystem.

http://support.microsoft.com/kb/231619

Performance and capacity test results and recommendations (SharePoint Server 2013)

http://technet.microsoft.com/en-us/library/ff608068(v=office.15).aspx

Tuning SQL Server 2012 for SharePoint 2013 http://channel9.msdn.com/Series/Tuning-SQL-Server-2012-for-SharePoint-2013

Software Boundaries and Limits for SharePoint 2013 http://technet.microsoft.com/en-us/library/cc262787(v=office.15).aspx

Best Practices for SQL Server in a SharePoint Server Farm http://technet.microsoft.com/en-us/library/hh292622(v=office.15).aspx

Please fill out a session survey for the HSPUG Technical presentation

Scan the QR codeto the right or type bit.ly/hspugtech1411

If you submit a survey, you are eligible for an extra prize drawing!

Thank You!