SlideShare a Scribd company logo
Sponsors
Troubleshoot SQL Server performance
problems like a Microsoft Engineer
Marek Maśko
About the Author
Marek Maśko
• Principal Database Analyst at Sabre
• Working with SQL Server for ~7 years
• SQL DBA, Dev & Architect
• MCP since 2012
• Contact Information:
LinkedIn: https://pl.linkedin.com/in/marekmasko
Twitter: @MarekMasko
Scenario
• Users report performance issue
• You know nothing about the server and the database
What do you do?
Microsoft Customer Support Service
• Users report performance issue
• You open the MS Support Case
• MS CSS gives you PSSDiag package and asks you to run it
• You run it and collect the data
• Than you upload collected data to the MS workspace
• MS CSS returns with:
‒ Comprehensive report about your SQL Server state
‒ Issue’s root cause explanation
‒ Solution and/or list of recommendations
How they do it?
Tools
Data collection
• PSSDiag / SQLDiag
• DiagConfig / DiagManager
Data analysis
• SQL Nexus
• PAL Tool
PSSDiag
PSSdiag
• Developed as a side project at Microsoft
• Mainly used by CSS and PSS teams
• Wrapper on other MS tools
• Based on SQLDiag
• Two versions:
‒ Internal
‒ External
• Dramaticaly simplifies performance data collection
SQLDiag
• It’s a command line utility delivered with SQL Server
• Located in the installation Binn directory
• It’s main purpose is to collect diagnostic data
PSSDiag SQLDiag Collectors
What does it collect?
• Event Logs
• Performance Monitor Counters
• Server Configuration
• Error Logs
• Profiler Trace
• Blocking information
• PerfStat Scripts
• Spinlocks, query statistics, query hashes
• There is a possibility to add your own custom collectors!
How to run it?
Security
• Windows authentication is default
• SQL authentication
‒ Prompt for password
• The account used to run it
‒ Must be able to login into target instances
‒ Must be a member of the sysadmin role
‒ Must be a member of Administrators
Configuration
• Requires an XML configuration file (specifies what to collect)
Resource hit
• PSSDiag itself is negligible
• Collectors are efficient
• Profiler tracing is expensive
• Select output folder carefully
• Do not capture more than you need
• Always test and monitor!
Diag Manager
Diag Manager
• GUI tool used to create configuration files
• Can be downloaded for free from:
https://github.com/Microsoft/DiagManager
SQL Nexus
SQL Nexus
• Created as a side project at SQL Support Escalation team
• Process the output of PSSDiag/SQLDiag into a database and runs
Reporting Services reports on top of it
• Allows users to create own collections and reports
• Can be downloaded for free from:
https://github.com/Microsoft/SqlNexus
Key Features
• Fast data loading and processing
• SQL Trace data aggregation using advanced logic and pattern
recognition for intelligent statement execution grouping
• Supports multiple databases to store several performance analysis
data sets
• Visualize loaded data via reports
• Extensibility!
SQL Nexus reports
• Built-in reports for:
‒ Environment configuration
‒ Blocking
‒ Wait statistics
‒ Resource utilization
‒ Interesting events
‒ Missing indexes
‒ Data Statistics
‒ Virtual file stats
PAL Tool
PAL Tool
• PAL – Performance Analysis of Logs
• Can be downloaded for free from:
https://github.com/clinthuffman/PAL
• Allows you to set custom thresholds
or use threshold already configured
for your workload
PAL Wizard
• Carefully choose options and answer questions
• Processing will take time
PAL Output
• Graphs with thresholds
• Alerts summarized in time slices
PAL Output
• The output is color coded to let you know the areas to focus on
‒ You do have some control over this through the threshold files
‒ Not everything in red actually means something
• You must know what to look for
When to Use Which Tool?
PSSDiag / SQL Nexus
• More targeted performance analysis
• Need to view SQL internal resources (waits, blocking chains, query
plans)
• Short timespan for collection
PAL
• Great for overall system performance
• Benchmarks
• Long timespan for collection
Thank you!
Session just ended 
Please complete the evaluation form
from your pocket after the session.
Your feedback will help us to improve
future conferences and speakers will
appreciate your feedback!
Sponsors

More Related Content

PPTX
Best Practices with Sitecore
PPTX
NoSql - mayank singh
PPTX
Migration to Modern SQL Server Platform
PDF
App301 Implement a Data Access Layer with Ent Lib
PPTX
Data Stream Processing for Beginners with Kafka and CDC
PDF
Micro strategy 7i
PPTX
Practical examples of using extended events
PDF
SQL Server 2016 BI updates
Best Practices with Sitecore
NoSql - mayank singh
Migration to Modern SQL Server Platform
App301 Implement a Data Access Layer with Ent Lib
Data Stream Processing for Beginners with Kafka and CDC
Micro strategy 7i
Practical examples of using extended events
SQL Server 2016 BI updates

What's hot (19)

PDF
Using extended events for troubleshooting sql server
PPTX
Database Schema Management & Deployment using SQL Server Data Tools (SSDT)
PPTX
Building No-Code Collaboration Solutions on Office 365
PPTX
Data Estate Modernization
PDF
DesignMind SQL Server 2008 Migration
PPTX
SharePoint 2013 Search Operations
PPTX
Providers
PPTX
Project Management With SharePoint
PDF
Infinum Android Talks #04 - CouchBase Lite
PDF
Google App Engine At A Glance
PPTX
What SQL DBA's need to know about SharePoint
PPTX
Connected at the hip for MS BI: SharePoint and SQL
PPT
Working with Portlets in ADF and Webcenter
PDF
Alfresco Day Stockholm 2015 - Alfresco One
PDF
Plug saiku
PDF
Matthias Einig from Rencore - Transforming SharePoint farm solutions to the A...
PPT
Talking Services with Oracle ADF and Oracle SOA Suite
DOC
Sk_Resume_2016
PPTX
Mct Summit 2013 Why SharePoint 2013
Using extended events for troubleshooting sql server
Database Schema Management & Deployment using SQL Server Data Tools (SSDT)
Building No-Code Collaboration Solutions on Office 365
Data Estate Modernization
DesignMind SQL Server 2008 Migration
SharePoint 2013 Search Operations
Providers
Project Management With SharePoint
Infinum Android Talks #04 - CouchBase Lite
Google App Engine At A Glance
What SQL DBA's need to know about SharePoint
Connected at the hip for MS BI: SharePoint and SQL
Working with Portlets in ADF and Webcenter
Alfresco Day Stockholm 2015 - Alfresco One
Plug saiku
Matthias Einig from Rencore - Transforming SharePoint farm solutions to the A...
Talking Services with Oracle ADF and Oracle SOA Suite
Sk_Resume_2016
Mct Summit 2013 Why SharePoint 2013
Ad

Similar to SQLSaturday 664 - Troubleshoot SQL Server performance problems like a Microsoft Engineer (20)

PDF
PLSSUG - Troubleshoot SQL Server performance problems like a Microsoft Engineer
PPTX
SQL Explore 2012: P&T Part 1
PPTX
SharePoint 2013 Performance Analysis - Robi Vončina
PDF
Remote DBA Experts SQL Server 2008 New Features
PPTX
ECMDay2015 - Kent Agerlund – Configuration Manager 2012 – A Site Review
PDF
Breaking data
PPT
kjdiakdnfdifjadsjkjklljlldasgjdjdljgfldjgldjgldjgl.ppt
PPT
ow.ppt
PDF
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
PDF
SQL Server - Using Tools to Analyze Query Performance
PPT
Choosing the Right Business Intelligence Tools for Your Data and Architectura...
PPTX
Efficient & effective data management for research projects : ILRI's Data Ma...
PPTX
SQL Server Upgrade and Consolidation - Methodology and Approach
PPT
ow-123123123123123123123123123123123123123
PPTX
2019 - COMPUFAJ - DBA Career and Cloud
PDF
Managing Your Hyperion Environment – Performance Tuning, Problem Solving and ...
PPT
Datastage Introduction To Data Warehousing
PPTX
Where to save my data, for devs!
PLSSUG - Troubleshoot SQL Server performance problems like a Microsoft Engineer
SQL Explore 2012: P&T Part 1
SharePoint 2013 Performance Analysis - Robi Vončina
Remote DBA Experts SQL Server 2008 New Features
ECMDay2015 - Kent Agerlund – Configuration Manager 2012 – A Site Review
Breaking data
kjdiakdnfdifjadsjkjklljlldasgjdjdljgfldjgldjgldjgl.ppt
ow.ppt
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
SQL Server - Using Tools to Analyze Query Performance
Choosing the Right Business Intelligence Tools for Your Data and Architectura...
Efficient & effective data management for research projects : ILRI's Data Ma...
SQL Server Upgrade and Consolidation - Methodology and Approach
ow-123123123123123123123123123123123123123
2019 - COMPUFAJ - DBA Career and Cloud
Managing Your Hyperion Environment – Performance Tuning, Problem Solving and ...
Datastage Introduction To Data Warehousing
Where to save my data, for devs!
Ad

Recently uploaded (20)

PPT
Teaching material agriculture food technology
PDF
Getting Started with Data Integration: FME Form 101
PPTX
Big Data Technologies - Introduction.pptx
PPTX
MYSQL Presentation for SQL database connectivity
PPTX
Machine Learning_overview_presentation.pptx
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
SOPHOS-XG Firewall Administrator PPT.pptx
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Empathic Computing: Creating Shared Understanding
PPTX
Spectroscopy.pptx food analysis technology
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Accuracy of neural networks in brain wave diagnosis of schizophrenia
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
A Presentation on Artificial Intelligence
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Teaching material agriculture food technology
Getting Started with Data Integration: FME Form 101
Big Data Technologies - Introduction.pptx
MYSQL Presentation for SQL database connectivity
Machine Learning_overview_presentation.pptx
Agricultural_Statistics_at_a_Glance_2022_0.pdf
SOPHOS-XG Firewall Administrator PPT.pptx
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Building Integrated photovoltaic BIPV_UPV.pdf
Network Security Unit 5.pdf for BCA BBA.
Empathic Computing: Creating Shared Understanding
Spectroscopy.pptx food analysis technology
Unlocking AI with Model Context Protocol (MCP)
Accuracy of neural networks in brain wave diagnosis of schizophrenia
Assigned Numbers - 2025 - Bluetooth® Document
20250228 LYD VKU AI Blended-Learning.pptx
Group 1 Presentation -Planning and Decision Making .pptx
Reach Out and Touch Someone: Haptics and Empathic Computing
A Presentation on Artificial Intelligence
gpt5_lecture_notes_comprehensive_20250812015547.pdf

SQLSaturday 664 - Troubleshoot SQL Server performance problems like a Microsoft Engineer

  • 2. Troubleshoot SQL Server performance problems like a Microsoft Engineer Marek Maśko
  • 3. About the Author Marek Maśko • Principal Database Analyst at Sabre • Working with SQL Server for ~7 years • SQL DBA, Dev & Architect • MCP since 2012 • Contact Information: LinkedIn: https://pl.linkedin.com/in/marekmasko Twitter: @MarekMasko
  • 4. Scenario • Users report performance issue • You know nothing about the server and the database What do you do?
  • 5. Microsoft Customer Support Service • Users report performance issue • You open the MS Support Case • MS CSS gives you PSSDiag package and asks you to run it • You run it and collect the data • Than you upload collected data to the MS workspace • MS CSS returns with: ‒ Comprehensive report about your SQL Server state ‒ Issue’s root cause explanation ‒ Solution and/or list of recommendations How they do it?
  • 6. Tools Data collection • PSSDiag / SQLDiag • DiagConfig / DiagManager Data analysis • SQL Nexus • PAL Tool
  • 8. PSSdiag • Developed as a side project at Microsoft • Mainly used by CSS and PSS teams • Wrapper on other MS tools • Based on SQLDiag • Two versions: ‒ Internal ‒ External • Dramaticaly simplifies performance data collection
  • 9. SQLDiag • It’s a command line utility delivered with SQL Server • Located in the installation Binn directory • It’s main purpose is to collect diagnostic data PSSDiag SQLDiag Collectors
  • 10. What does it collect? • Event Logs • Performance Monitor Counters • Server Configuration • Error Logs • Profiler Trace • Blocking information • PerfStat Scripts • Spinlocks, query statistics, query hashes • There is a possibility to add your own custom collectors!
  • 11. How to run it? Security • Windows authentication is default • SQL authentication ‒ Prompt for password • The account used to run it ‒ Must be able to login into target instances ‒ Must be a member of the sysadmin role ‒ Must be a member of Administrators Configuration • Requires an XML configuration file (specifies what to collect)
  • 12. Resource hit • PSSDiag itself is negligible • Collectors are efficient • Profiler tracing is expensive • Select output folder carefully • Do not capture more than you need • Always test and monitor!
  • 14. Diag Manager • GUI tool used to create configuration files • Can be downloaded for free from: https://github.com/Microsoft/DiagManager
  • 16. SQL Nexus • Created as a side project at SQL Support Escalation team • Process the output of PSSDiag/SQLDiag into a database and runs Reporting Services reports on top of it • Allows users to create own collections and reports • Can be downloaded for free from: https://github.com/Microsoft/SqlNexus
  • 17. Key Features • Fast data loading and processing • SQL Trace data aggregation using advanced logic and pattern recognition for intelligent statement execution grouping • Supports multiple databases to store several performance analysis data sets • Visualize loaded data via reports • Extensibility!
  • 18. SQL Nexus reports • Built-in reports for: ‒ Environment configuration ‒ Blocking ‒ Wait statistics ‒ Resource utilization ‒ Interesting events ‒ Missing indexes ‒ Data Statistics ‒ Virtual file stats
  • 20. PAL Tool • PAL – Performance Analysis of Logs • Can be downloaded for free from: https://github.com/clinthuffman/PAL • Allows you to set custom thresholds or use threshold already configured for your workload
  • 21. PAL Wizard • Carefully choose options and answer questions • Processing will take time
  • 22. PAL Output • Graphs with thresholds • Alerts summarized in time slices
  • 23. PAL Output • The output is color coded to let you know the areas to focus on ‒ You do have some control over this through the threshold files ‒ Not everything in red actually means something • You must know what to look for
  • 24. When to Use Which Tool? PSSDiag / SQL Nexus • More targeted performance analysis • Need to view SQL internal resources (waits, blocking chains, query plans) • Short timespan for collection PAL • Great for overall system performance • Benchmarks • Long timespan for collection
  • 26. Session just ended  Please complete the evaluation form from your pocket after the session. Your feedback will help us to improve future conferences and speakers will appreciate your feedback!