Richard Douglas
Dell Software - Systems Consultant
8th Movember 2013

“The Day After Tomorrow”;
why you need to baseline
Access to online
training content

JOIN THE PASS
COMMUNITY
Become a PASS member for free
and join the world’s biggest SQL
...
Who’s this guy?
•Richard Douglas
•Editor in Chief – ToadWorld.com
•MCITPro
•Maidenhead PASS Chapter Leader
•Blog: http://S...
Agenda
• What is a “baseline”?
• What is “benchmarking”?
• Where do we start?
• What should I capture?
• What should I cap...
What is a “baseline”?
•Typical state
•Average over a time period
•Multiple baselines

Why baseline?
•Line in the sand
•Usa...
What is “benchmarking”?

A level by which
something can be
measured or judged

Allows you to make informed
decisions
Performance tuning lifecycle
Obligatory analogy
When should I capture it?
It depends

•Consider different baselines for different business periods
– Maintenance windows
–...
What should I capture?

System
Configuration

Windows OS
Counters

SQL Server
Counters

Wait statistics
What should I capture?
System configuration

•Infrastructure diagrams.
•Windows and SQL Server version information.
•Drive...
What should I capture?

Operating System / SQL Server Counters - Memory

•Memory: Available Mbytes
•Paging File: %Usage

0...
Virtualisation Considerations
VMWare

•Memory Limit (MB)
•Memory Reservation (MB)
•Memory Ballooned (MB)
•Memory Swapped (...
What should I capture?

Operating System / SQL Server Counters - CPU

•Processor: % Processor Time

LT 80%

•Process: % Pr...
What should I capture?
Operating System / SQL Server Counters - IO
•Physical Disk: Current Disk Queue Length

?

•Physical...
SAN Considerations
•Virtualised storage
– How is it connected?
– How many spindles?
– How many other servers share this?

...
What should I capture?
SQL Server Counters

•SQL Server Access Method: Forwarded Records/Sec

Ideally 0

•SQL Server Acces...
What should I capture?
•Query information
– Understand the server workload
– Consider exporting plans from the cache.

•Jo...
What free tools can I capture it with?
•Performance Monitor (OS + SQL Server Counters)
•Your favourite T-SQL editor - SSMS...
How do I analyse?
•Import data into Microsoft Excel
– http://www.toadworld.com/platforms/sqlserver/w/wiki/10421.performanc...
DEMO
Mature Information Management Processes

Level 1
Reactive

Level 0
Chaotic











Ad hoc
Undocumented
Unpredic...
“The Day After Tomorrow”;
why you need to baseline
Summary

•What a “baseline” is.
•What “benchmarking” means.
•How to pla...
Any questions?
“The Day After Tomorrow”;
why you need to baseline
Richard Douglas
@SQLRich
http://SQL.RichardDouglas.co.uk
Upcoming SlideShare
Loading in …5
×

The day after tomorrow, why you need to baseline - SQL Rally 2013 - Amsterdam

2,535 views

Published on

Presentation by Richard Douglas - @SQLRich - on baselining a SQL Server environment from the PASS SQL Rally held in Amsterdam 2013

Abstract:
Ensuring peak SQL Server performance isn’t always easy and requires a lot of work on the part of the DBA. To maintain the best-possible performance, you need to make sure you’re monitoring the right things. But how do you know if the figures you’re seeing are good or bad? Baseline comparisons can help, and in this educational session, SQL Server expert Richard Douglas will show you how to get the most from them. Richard will explain what a baseline is, why and when you need to take one, and how you can create one. You’ll also learn about a number of native Windows and SQL Server tools that will allow you to do just that.

Read more: Presentations - 2013 | Richard Douglas - SQL Server Professional http://sql.richarddouglas.co.uk/presentations/presentations-2013#ixzz2kcBNBxMK

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,535
On SlideShare
0
From Embeds
0
Number of Embeds
1,093
Actions
Shares
0
Downloads
18
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

The day after tomorrow, why you need to baseline - SQL Rally 2013 - Amsterdam

  1. 1. Richard Douglas Dell Software - Systems Consultant 8th Movember 2013 “The Day After Tomorrow”; why you need to baseline
  2. 2. Access to online training content JOIN THE PASS COMMUNITY Become a PASS member for free and join the world’s biggest SQL Server Community. Join Local Chapters Personalize your PASS website experience Access to events at discounted rates Join Virtual Chapters 2
  3. 3. Who’s this guy? •Richard Douglas •Editor in Chief – ToadWorld.com •MCITPro •Maidenhead PASS Chapter Leader •Blog: http://SQL.RichardDouglas.co.uk •Twitter: @SQLRich •Email: Richard.Douglas@Software.Dell.com
  4. 4. Agenda • What is a “baseline”? • What is “benchmarking”? • Where do we start? • What should I capture? • What should I capture it with?
  5. 5. What is a “baseline”? •Typical state •Average over a time period •Multiple baselines Why baseline? •Line in the sand •Usage patterns A measurement or calculation used as a basis for comparison.
  6. 6. What is “benchmarking”? A level by which something can be measured or judged Allows you to make informed decisions
  7. 7. Performance tuning lifecycle
  8. 8. Obligatory analogy
  9. 9. When should I capture it? It depends •Consider different baselines for different business periods – Maintenance windows – Month/Quarter/Year end – Seasonal peaks •After Windows and SQL Server patches •After failovers / DR scenarios •After any new project deployment
  10. 10. What should I capture? System Configuration Windows OS Counters SQL Server Counters Wait statistics
  11. 11. What should I capture? System configuration •Infrastructure diagrams. •Windows and SQL Server version information. •Driver information •IO Subsystem information •System catalogue information – Sys.configurations – Sys.databases – Sys.master_files
  12. 12. What should I capture? Operating System / SQL Server Counters - Memory •Memory: Available Mbytes •Paging File: %Usage 0 •SQL Server Memory Manager: Target Server Memory(KB) •SQL Server Memory Manager: Total Server Memory(KB) •SQL Server Memory Manager: Memory Grants Pending •SQL Server Buffer Manager: Buffer cache hit ratio SQL Server Buffer Manager: Page Life Expectancy 300 •SQL Server Buffer Manager: Extension Page Unreferenced Time PLE * (16 or 32) •SQL Server Buffer Manager: Database Pages •SQL Server Buffer Manager: Procedure Cache Pages
  13. 13. Virtualisation Considerations VMWare •Memory Limit (MB) •Memory Reservation (MB) •Memory Ballooned (MB) •Memory Swapped (MB) Read more about VMWare memory settings here: http://www.vmware.com/files/pdf/techpaper/vsp_41_perf_memory_mgmt.p df
  14. 14. What should I capture? Operating System / SQL Server Counters - CPU •Processor: % Processor Time LT 80% •Process: % Processor Time (SQLServr) LT 80% •System: Processor Queue Length LT 12 good ideally LT 4 •System: Context Switches/Sec LT 3000 good ideally LT 1500 •SQL Server SQL Statistics: SQL Compilations/Sec •SQL Server SQL Statistics: SQL ReCompilations/Sec
  15. 15. What should I capture? Operating System / SQL Server Counters - IO •Physical Disk: Current Disk Queue Length ? •Physical Disk: Avg. Disk Sec/Read LT 20ms •Physical Disk: Avg. Disk Sec/Write •Physical Disk: Avg. Bytes/Read •Physical Disk: Avg. Bytes/Write LT 10ms
  16. 16. SAN Considerations •Virtualised storage – How is it connected? – How many spindles? – How many other servers share this? •Dynamic storage – Your data may move!!!!! •What’s a good way to test for consistency? – Baseline your maintenance window(s)
  17. 17. What should I capture? SQL Server Counters •SQL Server Access Method: Forwarded Records/Sec Ideally 0 •SQL Server Access Method: Page Splits/Sec It depends* •SQL Server General Statistics: User Connections Beware pooling •SQL Server SQL Statistics: Batch Requests/Sec •SQL Server Buffer Manager: Page Reads/Sec LT 90 •SQL Server Buffer Manager: Page Writes/Sec LT 90 ** *Page splits include “regular” new page allocations ** Cross reference this with Checkpoint and Lazy Writer counters
  18. 18. What should I capture? •Query information – Understand the server workload – Consider exporting plans from the cache. •Job information – Are my jobs taking longer? •Wait statistics – What is SQL Server waiting on?
  19. 19. What free tools can I capture it with? •Performance Monitor (OS + SQL Server Counters) •Your favourite T-SQL editor - SSMS or Toad for SQL Server freeware (Dynamic Management Objects) •Profiler / Extended events (Query information)
  20. 20. How do I analyse? •Import data into Microsoft Excel – http://www.toadworld.com/platforms/sqlserver/w/wiki/10421.performance-monitor.aspx – http://bit.ly/YXOfZD - Brent Ozar at SQLBits
  21. 21. DEMO
  22. 22. Mature Information Management Processes Level 1 Reactive Level 0 Chaotic         Ad hoc Undocumented Unpredictable Multiple help desks Minimal IT operations User call notification     Level 3 Service Level 2 Proactive    Fight fires  Inventory Desktop sw  distribution  Initiate problem mgt process Alert and event mgt Monitor component availability  Analyze trends Set thresholds Predict problems Monitor end-user response time Automate Mature problem, configuration, change, asset and performance mgt processes        IT as strategic business partner IT and business metric linkage IT/business collaboration improves business process Real-time infrastructure Business planning IT as a service provider  Define services, classes, pricing Understand costs  Guarantee SLAs Monitor and report  service availability Capacity Manage IT mgt as a Business Service and Account Management Service Delivery Process Engineering Operational Process Engineering Tool Leverage Level 4 Value
  23. 23. “The Day After Tomorrow”; why you need to baseline Summary •What a “baseline” is. •What “benchmarking” means. •How to plan your baseline. •How to choose your measures. •Native tools.
  24. 24. Any questions?
  25. 25. “The Day After Tomorrow”; why you need to baseline Richard Douglas @SQLRich http://SQL.RichardDouglas.co.uk

×