MS SQL Server Performance Tuning
Overview
This course is designed to give the right amount of internal knowledge and wealth of practical tuning and optimization techniques that you can put into production. The 5 day class offers a comprehensive coverage of SQL Server architecture, indexing and statistics strategies, optimize transaction log operations, tempdb and data file configuration, transactions and isolation levels, and locking and blocking. The course also teaches how to create baselines and benchmark SQL Server performance, how to analyze workload and figure out where performance problems are, and how to fix them. The course has a special focus on SQL Server I/O, CPU usage, memory usage, query plans, statement execution, parameter sniffing and procedural code, deadlocking, plan cache, wait and latch statistics, Extended Events, DMVs and PerfMon
Duration
The course is run 5 days full time.
Technical Skill
The primary audience for this course is individuals who administer and maintain SQL Server databases and are responsible for optimal performance of SQL Server instances that they manage. These individuals also write queries against data and need to ensure optimal execution performance of the workloads.
In addition to their professional experience, students who attend this training should already have the following technical knowledge:
Basic knowledge of the Microsoft Windows operating system and its core functionality.
Working knowledge of database administration and maintenance
Working knowledge of Transact-SQL.
Private Training
This course is offered only privately. The course can be run onsite or on our site. The course can be run from our office in Cape Town or Johannesburg. The course price is R12 599 onsite and R17 500 on our premises. There is no set date to run the course, we schedule the course on dates that suits your team. A minimum of 4 delegates is required to run the course.
Course Curriculum
Performance Tuning Overview
The Performance-Tuning Process Performance vs. Price Performance Baseline Where to Focus Efforts SQL Server Performance Killers
SQL Perfomance Analysis
Performance Monitor Tool Dynamic Management Views Hardware Resource Bottlenecks Memory Bottleneck Analysis Memory Bottleneck Resolutions Disk Bottleneck Analysis Disk Bottleneck Resolutions Processor Bottleneck Analysis Processor Bottleneck Resolutions Network Bottleneck Analysis Network Bottleneck Resolutions SQL Server Overall Performance Creating a Baseline System Behavior Analysis Against Baseline
SQL Query Performance Analysis
Extended Events Wizard Extended Events Automation Extended Events Recommendations Other Query Performance Metrics Methods Costly Queries Execution Plans
Index Analysis
What Is an Index? Index Design Recommendations Clustered Indexes Nonclustered Indexes Clustered vs. Nonclustered Indexes Advanced Indexing Techniques ColumnStore Indexes Special Index Types Additional Characteristics of Indexes
Database Tuning Advisor
Database Engine Tuning Advisor Mechanisms Database Engine Tuning Advisor Examples Database Engine Tuning Advisor Limitations
Bookmark Lookup Analysis
Purpose of Bookmark Lookups Drawbacks of Bookmark Lookups Analyzing the Cause of a Bookmark Lookup Resolving Bookmark Lookups
Statistics Analysis
The Role of Statistics in Query Optimization Statistics on an Indexed Column Statistics on a Nonindexed Column Analyzing Statistics Statistics Maintenance Analyzing the Effectiveness of Statistics
Index Fragmentation Analysis
Causes of Fragmentation Fragmentation Overhead Analyzing the Amount of Fragmentation Fragmentation Resolutions Significance of the Fill Factor Automatic Maintenance
Execution Plan Cache Analysis
Execution Plan Generation Execution Plan Caching Components of the Execution Plan Aging of the Execution Plan Analyzing the Execution Plan Cache Execution Plan Reuse Query Plan Hash and Query Hash Execution Plan Cache Recommendations
Query Recompilation
Benefits and Drawbacks of Recompilation Identifying the Statement Causing Recompilation Analyzing Causes of Recompilation Avoiding Recompilations
Query Design Analysis
Query Design Recommendations Operating on Small Result Sets Using Indexes Effectively Avoiding Optimizer Hints Using Domain and Referential Integrity Avoiding Resource-Intensive Queries Reducing the Number of Network Round-Trips Reducing the Transaction Cost
Blocking Analysis
Blocking Fundamentals Understanding Blocking Locks Isolation Levels Effect of Indexes on Locking Capturing Blocking Information Blocking Resolutions Recommendations to Reduce Blocking Automation to Detect and Collect Blocking Information
Deadlock Analysis
Deadlock Fundamentals Using Error Handling to Catch a Deadlock Deadlock Analysis Avoiding Deadlocks
Cursor Cost Analysis
Cursor Fundamentals Cursor Cost Comparison Default Result Set Analyzing SQL Server Overhead with Cursors Cursor Recommendations
Database Performance Stress Testing
Database Stressing with JMeter Replaying SQL Scripts with JMeter Performance Testing Overview Capturing Data with the Server Side Trace Distributed Replay for Database Testing Summary and SQL Server Optimization Checklist
Last updated
Was this helpful?