SlideShare ist ein Scribd-Unternehmen logo
1 von 45
Downloaden Sie, um offline zu lesen
Polish SQL Server User Group
Troubleshoot SQL Server performance
problems like a Microsoft Engineer
Polish SQL Server User Group
About the Author
Marek Maśko
• Senior Database Analyst in
• Working with SQL Server for ~6 years
• SQL DBA, Dev & Architect
• Contact Information:
Email: marek.masko@gmail.com
LinkedIn: https://pl.linkedin.com/in/marekmasko
Twitter: @MarekMasko
Polish SQL Server User Group
Scenario
• Users report performance issue
• You know nothing about server and database
What you do?
Polish SQL Server User Group
Microsoft Customer Support Service
• Users report performance issue
• You open the MS Support Case
• MS CSS gives you PSSdiag package and ask you to run it
• You run it and collect the data
• Than You upload collected data to the workspace
• MS CSS returns with:
– huge report about your SQL Server state
– issue root cause explanation
– Solution or recommendation
How they do it?
Polish SQL Server User Group
Tools
Data collection
• PSSDiag / SQLDiag
• Diag Manager
Data analysis
• SQLNexus
– RML Utilities
– Relog
• PAL Tool
Polish SQL Server User Group
PSSDIAG
Polish SQL Server User Group
PSSdiag
• Developed as a side project at Microsoft
• Mainly used by CSS and PSS teams
• Tool wrapper on other MS tools
• Based on SQLDiag
• Two versions:
– Internal
– External
• Dramaticaly simplifies performance data collection
Polish SQL Server User Group
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
Polish SQL Server User Group
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!
Polish SQL Server User Group
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)
Polish SQL Server User Group
Parameters
• PSSdiag /B 14:00:00
• PSSdiag /E +02:00:00
• PSSdiag /B 08:00:00 /E +09:00:00
• PSSdiag /E 02:00:00 /L /Q
• PSSdiag /R /A Myname
• PSSdiag START /A Myname
• PSSdiag /U /A Myname
All command line parameters:
http://msdn.microsoft.com/en-us/library/ms162833.aspx
Polish SQL Server User Group
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 it!
Polish SQL Server User Group
Extended periods
• Run as a service so logout doesn’t stop collection
• Profiler Trace dominates output file size
• Trace files must always be collected on the server
• Enables real-time NTFS compression (/C1)
• Enable the DeleteOldTraceFiles
Polish SQL Server User Group
DIAG MANAGER
Polish SQL Server User Group
Diag Manager
• GUI tool used to create configuration files
• Can be downloaded for free from:
http://diagmanager.codeplex.com
Polish SQL Server User Group
DEMO
Lets take a look on PSSDiag
Polish SQL Server User Group
SQLNEXUS
Polish SQL Server User Group
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:
http://sqlnexus.codeplex.com/
Polish SQL Server User Group
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!
Polish SQL Server User Group
Pre-requsites
• Windows 2008 or newer
• SQL Server 2008 or newer
• .NET framework 4.0
• RML Utilities
Polish SQL Server User Group
SQL Nexus reports
• Built-in reports for:
– Environment configuration
– Blocking
– Wait statistics
– Resource utilization
– Interesting events
– Missing indexes
– Data Statistics
– Virtual file stats
Polish SQL Server User Group
Bottleneck Analysis
Polish SQL Server User Group
Read Trace Reports
Polish SQL Server User Group
Read Trace Reports
Polish SQL Server User Group
RML Utilities
• Replay Markup Language (RML) Utilities for SQL Server
• Can be downloaded for free from:
https://support.microsoft.com/en-us/kb/944837
• Package contains:
– ReadTrace
– Reporter
– OStress
– OStress Replay Control Agent (ORCA)
Polish SQL Server User Group
ReadTrace
• Command line tool for processing Profiler traces and Extended
Event traces
• ReadTrace consumes as input trace (.TRC) or (.XEL) files and
.CAB or .ZIP files which contain .TRC files.
• The outputs from ReadTrace can be .TRC files, .RML files and
the Performance Analysis (PerfAnalysis) database.
• RML Utilities have great documentation
Polish SQL Server User Group
Relog
• Command line tool for processig performance counter logs
• Possible formats:
– Text-TSV (tab delimited text)
– Text-CSV (comma-delimited text)
– Binary-BIN
– SQL
• Has possibility to filter specified counters
https://technet.microsoft.com/pl-pl/library/bb490958.aspx
Polish SQL Server User Group
DEMO
Lets take a look on SQLNexus
Polish SQL Server User Group
CUSTOM DATA COLLECTIONS
Polish SQL Server User Group
Custom Data Collections
• Add your SQL scripts to the _MyCollectors DiagManager folder
• Make sure the resultsets have a tag that uniquely identifies
them
Polish SQL Server User Group
Custom Data Collections
• Custom Collections are added to the CustomDiag.XML file in
the _MyCollectorsfolder
• It is quicker to modify this XML file than do it through the UI
Polish SQL Server User Group
Custom Data Collections
• Uses a custom import process
• By modifying a XML configuration file, you can have SQL Nexus
import your custom data collection from PSSDiag
• Add the name of the rowset to TextRowsetsCustom.xml
• Located where you installed SQL Nexus
Polish SQL Server User Group
DEMO
Polish SQL Server User Group
PAL TOOL
Polish SQL Server User Group
PAL Tool
• PAL – Performance Analysis of Logs
• Can be downloaded for free from: http://pal.codeplex.com/
• Allows you to set custom thresholds or use threshold already
configured for your workload
• Requires MS Chart Controls
Polish SQL Server User Group
PAL Wizard
• Carefully choose options and answer questions
• Processing will take time
Polish SQL Server User Group
PAL Output
• Graphs with thresholds
• Alerts summarized in time
slices
Polish SQL Server User Group
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
Polish SQL Server User Group
DEMO
Lets take a look on PAL Tool
Polish SQL Server User Group
When to Use Which Tool?
PSSDIAG / SQLNexus
• 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
• Benchmark
• Long duration
Polish SQL Server User Group
SQL SERVER
PERFORMANCE DASHBOARD
Polish SQL Server User Group
SQL Server Performance Dashboard Reports
• Set of SSRS performance reports that integrate into SSMS
• Can be downloaded for free from:
https://www.microsoft.com/en-us/download/details.aspx?id=29063
• Custom reports made to make
performance monitoring easier.
• Great for tracking down trickier
performance issues
Polish SQL Server User Group
Installation
• Download from web page
• Run *.msi package
• Execute setup.sql scripts
• Add reports to SSMS
Polish SQL Server User Group
DEMO
Polish SQL Server User Group
QUESTIONS?

Weitere ähnliche Inhalte

Was ist angesagt?

Pre and post tips to installing sql server correctly
Pre and post tips to installing sql server correctlyPre and post tips to installing sql server correctly
Pre and post tips to installing sql server correctly
Antonios Chatzipavlis
 
Database Automation with MySQL Triggers and Event Schedulers
Database Automation with MySQL Triggers and Event SchedulersDatabase Automation with MySQL Triggers and Event Schedulers
Database Automation with MySQL Triggers and Event Schedulers
Abdul Rahman Sherzad
 

Was ist angesagt? (20)

Oracle Database 12c - Features for Big Data
Oracle Database 12c - Features for Big DataOracle Database 12c - Features for Big Data
Oracle Database 12c - Features for Big Data
 
SQL Monitoring in Oracle Database 12c
SQL Monitoring in Oracle Database 12cSQL Monitoring in Oracle Database 12c
SQL Monitoring in Oracle Database 12c
 
Microsoft SQL Server Query Tuning
Microsoft SQL Server Query TuningMicrosoft SQL Server Query Tuning
Microsoft SQL Server Query Tuning
 
Pre and post tips to installing sql server correctly
Pre and post tips to installing sql server correctlyPre and post tips to installing sql server correctly
Pre and post tips to installing sql server correctly
 
Who wants to be a DBA? Roles and Responsibilities
Who wants to be a DBA? Roles and ResponsibilitiesWho wants to be a DBA? Roles and Responsibilities
Who wants to be a DBA? Roles and Responsibilities
 
Database Automation with MySQL Triggers and Event Schedulers
Database Automation with MySQL Triggers and Event SchedulersDatabase Automation with MySQL Triggers and Event Schedulers
Database Automation with MySQL Triggers and Event Schedulers
 
SQL Server Wait Types Everyone Should Know
SQL Server Wait Types Everyone Should KnowSQL Server Wait Types Everyone Should Know
SQL Server Wait Types Everyone Should Know
 
Making MySQL highly available using Oracle Grid Infrastructure
Making MySQL highly available using Oracle Grid InfrastructureMaking MySQL highly available using Oracle Grid Infrastructure
Making MySQL highly available using Oracle Grid Infrastructure
 
Collaborate 2019 - How to Understand an AWR Report
Collaborate 2019 - How to Understand an AWR ReportCollaborate 2019 - How to Understand an AWR Report
Collaborate 2019 - How to Understand an AWR Report
 
Aioug vizag oracle12c_new_features
Aioug vizag oracle12c_new_featuresAioug vizag oracle12c_new_features
Aioug vizag oracle12c_new_features
 
Simplifying EBS 12.2 ADOP - Collaborate 2019
Simplifying EBS 12.2 ADOP - Collaborate 2019   Simplifying EBS 12.2 ADOP - Collaborate 2019
Simplifying EBS 12.2 ADOP - Collaborate 2019
 
Tips to install and manage always on availability groups in sql server 2012 &...
Tips to install and manage always on availability groups in sql server 2012 &...Tips to install and manage always on availability groups in sql server 2012 &...
Tips to install and manage always on availability groups in sql server 2012 &...
 
Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)
Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)
Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)
 
Reduce latency and boost sql server io performance
Reduce latency and boost sql server io performanceReduce latency and boost sql server io performance
Reduce latency and boost sql server io performance
 
Extreme Availability using Oracle 12c Features: Your very last system shutdown?
Extreme Availability using Oracle 12c Features: Your very last system shutdown?Extreme Availability using Oracle 12c Features: Your very last system shutdown?
Extreme Availability using Oracle 12c Features: Your very last system shutdown?
 
Sql Server Performance Tuning
Sql Server Performance TuningSql Server Performance Tuning
Sql Server Performance Tuning
 
Clone Oracle Databases In Minutes Without Risk Using Enterprise Manager 13c
Clone Oracle Databases In Minutes Without Risk Using Enterprise Manager 13cClone Oracle Databases In Minutes Without Risk Using Enterprise Manager 13c
Clone Oracle Databases In Minutes Without Risk Using Enterprise Manager 13c
 
IOUG Collaborate 2015 - PDB Cloning Using SQL Commands
IOUG Collaborate 2015 - PDB Cloning Using SQL CommandsIOUG Collaborate 2015 - PDB Cloning Using SQL Commands
IOUG Collaborate 2015 - PDB Cloning Using SQL Commands
 
SQL Server Alwayson for SharePoint HA/DR Step by Step Guide
SQL Server Alwayson for SharePoint HA/DR Step by Step GuideSQL Server Alwayson for SharePoint HA/DR Step by Step Guide
SQL Server Alwayson for SharePoint HA/DR Step by Step Guide
 
SharePoint Disaster Recovery with SQL AlwaysOn
SharePoint Disaster Recovery with SQL AlwaysOnSharePoint Disaster Recovery with SQL AlwaysOn
SharePoint Disaster Recovery with SQL AlwaysOn
 

Ähnlich wie PLSSUG - Troubleshoot SQL Server performance problems like a Microsoft Engineer

COUG_AAbate_Oracle_Database_12c_New_Features
COUG_AAbate_Oracle_Database_12c_New_FeaturesCOUG_AAbate_Oracle_Database_12c_New_Features
COUG_AAbate_Oracle_Database_12c_New_Features
Alfredo Abate
 
SQL Explore 2012: P&T Part 1
SQL Explore 2012: P&T Part 1SQL Explore 2012: P&T Part 1
SQL Explore 2012: P&T Part 1
sqlserver.co.il
 
AUSPC 2013 - Understanding the Five Layers of SharePoint Security
AUSPC 2013 - Understanding the Five Layers of SharePoint SecurityAUSPC 2013 - Understanding the Five Layers of SharePoint Security
AUSPC 2013 - Understanding the Five Layers of SharePoint Security
Michael Noel
 

Ähnlich wie PLSSUG - Troubleshoot SQL Server performance problems like a Microsoft Engineer (20)

SQLSaturday 664 - Troubleshoot SQL Server performance problems like a Microso...
SQLSaturday 664 - Troubleshoot SQL Server performance problems like a Microso...SQLSaturday 664 - Troubleshoot SQL Server performance problems like a Microso...
SQLSaturday 664 - Troubleshoot SQL Server performance problems like a Microso...
 
SQL Server - Using Tools to Analyze Query Performance
SQL Server - Using Tools to Analyze Query PerformanceSQL Server - Using Tools to Analyze Query Performance
SQL Server - Using Tools to Analyze Query Performance
 
ow.ppt
ow.pptow.ppt
ow.ppt
 
ow.ppt
ow.pptow.ppt
ow.ppt
 
Ow
OwOw
Ow
 
Plantilla oracle
Plantilla oraclePlantilla oracle
Plantilla oracle
 
Building and Deploying Large Scale SSRS using Lessons Learned from Customer D...
Building and Deploying Large Scale SSRS using Lessons Learned from Customer D...Building and Deploying Large Scale SSRS using Lessons Learned from Customer D...
Building and Deploying Large Scale SSRS using Lessons Learned from Customer D...
 
SharePoint 2013 Performance Analysis - Robi Vončina
SharePoint 2013 Performance Analysis - Robi VončinaSharePoint 2013 Performance Analysis - Robi Vončina
SharePoint 2013 Performance Analysis - Robi Vončina
 
Oracle Database Performance Tuning Advanced Features and Best Practices for DBAs
Oracle Database Performance Tuning Advanced Features and Best Practices for DBAsOracle Database Performance Tuning Advanced Features and Best Practices for DBAs
Oracle Database Performance Tuning Advanced Features and Best Practices for DBAs
 
COUG_AAbate_Oracle_Database_12c_New_Features
COUG_AAbate_Oracle_Database_12c_New_FeaturesCOUG_AAbate_Oracle_Database_12c_New_Features
COUG_AAbate_Oracle_Database_12c_New_Features
 
SQL Explore 2012: P&T Part 1
SQL Explore 2012: P&T Part 1SQL Explore 2012: P&T Part 1
SQL Explore 2012: P&T Part 1
 
Breaking data
Breaking dataBreaking data
Breaking data
 
What’s new in SQL Server 2017
What’s new in SQL Server 2017What’s new in SQL Server 2017
What’s new in SQL Server 2017
 
How SQL Server 2016 SP1 Changes the Game
How SQL Server 2016 SP1 Changes the GameHow SQL Server 2016 SP1 Changes the Game
How SQL Server 2016 SP1 Changes the Game
 
Tech-Spark: SQL Server on Linux
Tech-Spark: SQL Server on LinuxTech-Spark: SQL Server on Linux
Tech-Spark: SQL Server on Linux
 
Oracle database connection with the .net developers
Oracle database connection with the .net developersOracle database connection with the .net developers
Oracle database connection with the .net developers
 
SQL Server 2019 CTP2.4
SQL Server 2019 CTP2.4SQL Server 2019 CTP2.4
SQL Server 2019 CTP2.4
 
AUSPC 2013 - Understanding the Five Layers of SharePoint Security
AUSPC 2013 - Understanding the Five Layers of SharePoint SecurityAUSPC 2013 - Understanding the Five Layers of SharePoint Security
AUSPC 2013 - Understanding the Five Layers of SharePoint Security
 
pandas.(to/from)_sql is simple but not fast
pandas.(to/from)_sql is simple but not fastpandas.(to/from)_sql is simple but not fast
pandas.(to/from)_sql is simple but not fast
 
Access Data from XPages with the Relational Controls
Access Data from XPages with the Relational ControlsAccess Data from XPages with the Relational Controls
Access Data from XPages with the Relational Controls
 

Kürzlich hochgeladen

Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
chiefasafspells
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
masabamasaba
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
masabamasaba
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
VictoriaMetrics
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 

Kürzlich hochgeladen (20)

WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaS
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
 
tonesoftg
tonesoftgtonesoftg
tonesoftg
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 

PLSSUG - Troubleshoot SQL Server performance problems like a Microsoft Engineer

  • 1. Polish SQL Server User Group Troubleshoot SQL Server performance problems like a Microsoft Engineer
  • 2. Polish SQL Server User Group About the Author Marek Maśko • Senior Database Analyst in • Working with SQL Server for ~6 years • SQL DBA, Dev & Architect • Contact Information: Email: marek.masko@gmail.com LinkedIn: https://pl.linkedin.com/in/marekmasko Twitter: @MarekMasko
  • 3. Polish SQL Server User Group Scenario • Users report performance issue • You know nothing about server and database What you do?
  • 4. Polish SQL Server User Group Microsoft Customer Support Service • Users report performance issue • You open the MS Support Case • MS CSS gives you PSSdiag package and ask you to run it • You run it and collect the data • Than You upload collected data to the workspace • MS CSS returns with: – huge report about your SQL Server state – issue root cause explanation – Solution or recommendation How they do it?
  • 5. Polish SQL Server User Group Tools Data collection • PSSDiag / SQLDiag • Diag Manager Data analysis • SQLNexus – RML Utilities – Relog • PAL Tool
  • 6. Polish SQL Server User Group PSSDIAG
  • 7. Polish SQL Server User Group PSSdiag • Developed as a side project at Microsoft • Mainly used by CSS and PSS teams • Tool wrapper on other MS tools • Based on SQLDiag • Two versions: – Internal – External • Dramaticaly simplifies performance data collection
  • 8. Polish SQL Server User Group 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
  • 9. Polish SQL Server User Group 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!
  • 10. Polish SQL Server User Group 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)
  • 11. Polish SQL Server User Group Parameters • PSSdiag /B 14:00:00 • PSSdiag /E +02:00:00 • PSSdiag /B 08:00:00 /E +09:00:00 • PSSdiag /E 02:00:00 /L /Q • PSSdiag /R /A Myname • PSSdiag START /A Myname • PSSdiag /U /A Myname All command line parameters: http://msdn.microsoft.com/en-us/library/ms162833.aspx
  • 12. Polish SQL Server User Group 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 it!
  • 13. Polish SQL Server User Group Extended periods • Run as a service so logout doesn’t stop collection • Profiler Trace dominates output file size • Trace files must always be collected on the server • Enables real-time NTFS compression (/C1) • Enable the DeleteOldTraceFiles
  • 14. Polish SQL Server User Group DIAG MANAGER
  • 15. Polish SQL Server User Group Diag Manager • GUI tool used to create configuration files • Can be downloaded for free from: http://diagmanager.codeplex.com
  • 16. Polish SQL Server User Group DEMO Lets take a look on PSSDiag
  • 17. Polish SQL Server User Group SQLNEXUS
  • 18. Polish SQL Server User Group 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: http://sqlnexus.codeplex.com/
  • 19. Polish SQL Server User Group 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!
  • 20. Polish SQL Server User Group Pre-requsites • Windows 2008 or newer • SQL Server 2008 or newer • .NET framework 4.0 • RML Utilities
  • 21. Polish SQL Server User Group SQL Nexus reports • Built-in reports for: – Environment configuration – Blocking – Wait statistics – Resource utilization – Interesting events – Missing indexes – Data Statistics – Virtual file stats
  • 22. Polish SQL Server User Group Bottleneck Analysis
  • 23. Polish SQL Server User Group Read Trace Reports
  • 24. Polish SQL Server User Group Read Trace Reports
  • 25. Polish SQL Server User Group RML Utilities • Replay Markup Language (RML) Utilities for SQL Server • Can be downloaded for free from: https://support.microsoft.com/en-us/kb/944837 • Package contains: – ReadTrace – Reporter – OStress – OStress Replay Control Agent (ORCA)
  • 26. Polish SQL Server User Group ReadTrace • Command line tool for processing Profiler traces and Extended Event traces • ReadTrace consumes as input trace (.TRC) or (.XEL) files and .CAB or .ZIP files which contain .TRC files. • The outputs from ReadTrace can be .TRC files, .RML files and the Performance Analysis (PerfAnalysis) database. • RML Utilities have great documentation
  • 27. Polish SQL Server User Group Relog • Command line tool for processig performance counter logs • Possible formats: – Text-TSV (tab delimited text) – Text-CSV (comma-delimited text) – Binary-BIN – SQL • Has possibility to filter specified counters https://technet.microsoft.com/pl-pl/library/bb490958.aspx
  • 28. Polish SQL Server User Group DEMO Lets take a look on SQLNexus
  • 29. Polish SQL Server User Group CUSTOM DATA COLLECTIONS
  • 30. Polish SQL Server User Group Custom Data Collections • Add your SQL scripts to the _MyCollectors DiagManager folder • Make sure the resultsets have a tag that uniquely identifies them
  • 31. Polish SQL Server User Group Custom Data Collections • Custom Collections are added to the CustomDiag.XML file in the _MyCollectorsfolder • It is quicker to modify this XML file than do it through the UI
  • 32. Polish SQL Server User Group Custom Data Collections • Uses a custom import process • By modifying a XML configuration file, you can have SQL Nexus import your custom data collection from PSSDiag • Add the name of the rowset to TextRowsetsCustom.xml • Located where you installed SQL Nexus
  • 33. Polish SQL Server User Group DEMO
  • 34. Polish SQL Server User Group PAL TOOL
  • 35. Polish SQL Server User Group PAL Tool • PAL – Performance Analysis of Logs • Can be downloaded for free from: http://pal.codeplex.com/ • Allows you to set custom thresholds or use threshold already configured for your workload • Requires MS Chart Controls
  • 36. Polish SQL Server User Group PAL Wizard • Carefully choose options and answer questions • Processing will take time
  • 37. Polish SQL Server User Group PAL Output • Graphs with thresholds • Alerts summarized in time slices
  • 38. Polish SQL Server User Group 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
  • 39. Polish SQL Server User Group DEMO Lets take a look on PAL Tool
  • 40. Polish SQL Server User Group When to Use Which Tool? PSSDIAG / SQLNexus • 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 • Benchmark • Long duration
  • 41. Polish SQL Server User Group SQL SERVER PERFORMANCE DASHBOARD
  • 42. Polish SQL Server User Group SQL Server Performance Dashboard Reports • Set of SSRS performance reports that integrate into SSMS • Can be downloaded for free from: https://www.microsoft.com/en-us/download/details.aspx?id=29063 • Custom reports made to make performance monitoring easier. • Great for tracking down trickier performance issues
  • 43. Polish SQL Server User Group Installation • Download from web page • Run *.msi package • Execute setup.sql scripts • Add reports to SSMS
  • 44. Polish SQL Server User Group DEMO
  • 45. Polish SQL Server User Group QUESTIONS?