SlideShare a Scribd company logo
Troubleshooting SQL Server Stephen Rose- MCSE, MCT, MCSA, MCP+I Microsoft MVP- Connected Systems Developer
Agenda Who Am I? Where Do I Start? Case Study- MS Society of Canada Optimal Environment Performance Monitor (PerfMon) Optimizing SQL Conclusions Q and A
Who Am I? Stephen Rose Partner /Network Architect with Odyssey Consulting Group MCSE, MCT, MCSA, MCP+I 2007 Microsoft Most Valuable Professional – Networking  Certified in Windows NT, 2000, and 2003 15 years of Tech Experience Technical Blogger with Fast Company Magazine http://blog.fastcompany.com/experts Personal Tech Blog @ http://mcsegeek.wordpress.com   Member of the UCSD Advisory Board Member of INETA.org Board
Let’s begin
Case Study Background Odyssey Consulting Group was contracted by the Multiple Sclerosis Society of Canada to help redesign and optimize their internal network systems to better support their new online fundraising portal. Technologies like web farms, load balancing, SQL clustering and server virtualization were introduced to help meet MS Society meet their needs but the big issue was SQL and it’s connections to some legacy systems.
Optimal Environment Disc Array Small Disks = Faster 10 30GB Disks rather than 2 150GB Seek Time, Latency, Search 10k – 15k RAID 0+1 32 Bit SQL vs. 64 Bit SQL Clustering Server 2008 w/ SQL 2008 Web Farm Load Balancing
PerfMon which is a SNMP based performance monitoring tool. PerfMon has the following chracteristics:  High performance It requires little cpu to run, even with more that thousand hosts being polled.
MS Society of Canada
Network Setup
Web Server   Dual Xeon Processor 3 GHz  2 GB RAM  2 x 72GB 10K drives (RAID 1)  Windows 2003 SP1  NAT-SQL-01   Quad Xeon MP 1.5 GHz  4 GB RAM  2x 36 GB 10K Drives RAID 1(Internal, running Windows, Page Files and SQL app only)  12 x 72 GB 15K Drives (Connected to a SAN) RAID 10 (Running SQL data and log files)  Windows 2003 SP1 SQL 2000 SP4
NAT-SQL-02   Quad Xeon MP 1.5 GHz  4 GB RAM  2 x 18 GB 10K Drives RAID 1(Internal, running Windows, Page Files and SQL app only)  12 x 18 GB 15K Drives (Connected to a External SCSI array)  RAID 10 (Running SQL data and log files)  Windows 2003 SP1 SQL2005
SAN   IBM DS4300 Expansion Unit 2 x 72GB 15K Drives for NAT-APP-03 user files RAID 1 12 x 72GB 15K  Drives for NAT-SQL-01 data and log files RAID 10 2 x 72GB 15K  Drives for NAT-SQL-03 data and log files RAID 1 6 x 72GB 15K  Drives for VMWare RAID 5 2 SAN Switches for redundancy Connected to NAT-SQL-01 NAT-APP-03, NAT-SQL-03)  All servers have Dual HBA's for redundancy
Network   2 x Cisco ASA5510 Firewalls, connected to 3 SDSL and 1 ADSL internet lines (2 lines per firewall in context mode)  2 x Cisco Catalyst 3560G Core Switches (configured for failover, default gateway for network, firewalls plugged into these and linked to 3Com switches below)  VLAN's configured for routing tables
Network   2 x 3Com Superstack 3 4228G switches (All servers plugged directly into these along with all hubs and Rogers VPN connection)  Dual T1 line connected to 3com switches via a Cisco 1700 Series Router linking 14 remote sites for VPN
Issues/Solutions
% of Processor Time  Processor Usage: Issue: The processor usage averages around 50%-70%. Processor usage should be around 20%. This shows there is not enough processor cycles to manage the data. Solution: Utilize more processors. Preferably 64 Bit capable of Hyperthreading with 64 bit SQL and 2003 OS.
NAT-SQL-01rocessor(_Total) Processor Time
NAT-APP-04rocessor(_Total) Processor Time
Disk Speed Disk Speed: Issue: Your average write time is around 75MS. This should hang around 20MS. Your Read time is averaging 100. It should be around 40MS. Solution: Upgrading to smaller disks (40-60GB Max) that are faster (15,000 RPM).
NAT-SQL-01hysicalDisk(_Total) Disk Read Time
NAT-APP-04hysicalDisk(_Total) Disk Write Time
How Do We Fix These Issues?
Recommendations Memory Memory is being maxed out. Upgrade to max RAM.  WEB SERVER-   Requires 4 GB RAM min. SQL 1 Requires more than 4 GB. Reduce the size of the 12 drives to 40GB from the 72 GB More processing power is required. 1.5 GB is not enough power. Upgrade to  SQL 2005 64 BIT Switch from RAID 1 to RAID 0+1 SQL 2 Same recommendations except drive sizes and SQL are fine. SAN Reduce the size of the drives from 72GB to 40 GB  Go 0+1 on all RAID.
Let’s Dig Deeper
OLTP- Online Transaction Processing OLTP work loads are characterized by high volumes of similar small transactions. It is important to keep these characteristics in mind as we examine the significance of database design, resource utilization and system performance.  In this case study, the OLTP was an online system that allowed people to sponsor walkers/runners in MS Society events.
Database Design Issue If: Too many table joins for frequent queries. Overuse of joins in an OLTP application results in longer running queries & wasted system resources.  Generally, frequent operations requiring 5 or more table joins should be avoided by redesigning the database.
Database Design Issue If: Too many indexes on frequently updated (inclusive of inserts, updates and deletes) tables incur extra index maintenance overhead.  Generally, OLTP database designs should keep the number of indexes to a  functional minimum , again due to the high volumes of similar transactions combined with the cost of index maintenance.
Database Design Issue If: Big IOs such as table and range scans due to missing indexes.  By definition, OLTP transactions should not require big IOs and should be examined.
Database Design Issue If: Unused indexes incur the cost of index maintenance for inserts, updates, and deletes without benefiting any users. Unused indexes should be eliminated.  Any index that has been used (by select, update or delete operations) will appear in sys.dm_db_index_usage_stats.  Thus, any defined index not included in this DMV has not been used since the last re-start of SQL Server.
CPU Bottleneck If: Signal waits > 25% of total waits.  See sys.dm_os_wait_stats for Signal waits and Total waits.  Signal waits measure the time spent in the runnable queue waiting for CPU.  High signal waits indicate a CPU bottleneck.
CPU Bottleneck If: Plan re-use < 90% . A query plan is used to execute a query.  Plan re-use is desirable for OLTP workloads because re-creating the same plan (for similar or identical transactions) is a waste of CPU resources.  Compare SQL Server SQL Statistics: batch requests/sec to SQL compilations/sec.  Compute plan re-use as follows: Plan re-use = (Batch requests - SQL compilations) / Batch requests.  Special exception to the plan re-use rule: Zero cost plans will not be cached (not re-used) in SQL 2005 SP2. Applications that use zero cost plans will have a lower plan re-use but this is not a performance issue.
CPU Bottleneck If: Parallel wait type cxpacket > 10% of total waits.  Parallelism sacrifices CPU resources for speed of execution.  Given the high volumes of OLTP, parallel queries usually reduce OLTP throughput and should be avoided.  See sys.dm_os_wait_stats for wait statistics.
Memory Bottleneck If: Consistently low average page life expectancy.  See Average Page Life Expectancy Counter which is in the Perfmon object SQL Server Buffer Manager (this represents is the average number of seconds a page stays in cache).  For OLTP, an average page life expectancy of 300 is 5 minutes.  Anything less could indicate memory pressure, missing indexes, or a cache flush.
Memory Bottleneck If: Sudden big drop in page life expectancy. OLTP applications (e.g. small transactions) should have a steady (or slowly increasing) page life expectancy.  See Perfmon object SQL Server Buffer Manager.
Memory Bottleneck If: Pending memory grants.  See counter Memory Grants Pending, in the Perfmon object SQL Server Memory Manager. Small OLTP transactions should not require a large memory grant.
Memory Bottleneck If: Sudden drops or consistenty low SQL Cache hit ratio. OLTP applications (e.g. small transactions) should have a high cache hit ratio.  Since OLTP transactions are small, there should not be (1) big drops in SQL Cache hit rates or (2) consistently low cache hit rates < 90%. Drops or low cache hit may indicate memory pressure or missing indexes.
IO Bottleneck If: High average disk seconds per read. When the IO subsystem is queued, disk seconds per read increases.  See Perfmon Logical or Physical disk (disk seconds/read counter).  Normally it takes 4-8ms to complete a read when there is no IO pressure.  When the IO subsystem is under pressure due to high IO requests, the average time to complete a read increases, showing the effect of disk queues.
IO Bottleneck If: Periodic higher values for disk seconds/read may be acceptable for many applications.  For high performance OLTP applications, sophisticated SAN subsystems provide greater IO scalability and resiliency in handling spikes of IO activity.  Sustained high values for disk seconds/read (>15ms) does indicate a disk bottleneck.udden drops or consistenty low SQL Cache hit ratio.  OLTP applications (e.g. small transactions) should have a high cache hit ratio.  Since OLTP transactions are small, there should not be (1) big drops in SQL Cache hit rates or (2) consistently low cache hit rates < 90%.  Drops or low cache hit may indicate memory pressure or missing indexes.
IO Bottleneck If: High average disk seconds per write. See Perfmon Logical or Physical disk.  The throughput for high volume OLTP applications is dependent on fast sequential transaction log writes. A transaction log write can be as fast as 1ms (or less) for high performance SAN environments.  For many applications, a periodic spike in average disk seconds per write is acceptable considering the high cost of sophisticated SAN subsystems. However, sustained high values for average disk seconds/write is a reliable indicator of a disk bottleneck.
IO Bottleneck If: Big IOs such as table and range scans due to missing indexes. Top wait statistics in sys.dm_os_wait_stats are related to IO such as ASYNCH_IO_COMPLETION, IO_COMPLETION, LOGMGR, WRITELOG, or PAGEIOLATCH_x.
Network Bottleneck If: High network latency coupled with an application that incurs many round trips to the database. Network bandwidth is used up.  See counters packets/sec and current bandwidth counters in the network interface object of Performance Monitor.  For  TCP/IP frames actual bandwidth is computed as packets/sec * 1500 * 8 /1000000 Mbps.
SQL Virtualization Hyper-V, is a hypervisor-based technology that is a key feature of Windows Server 2008.It provides scalability and high performance by supporting features like guest multi-processing support and 64-bit guest and host support; reliability and security through its hypervisor architecture; flexibility and manageability by supporting features like quick migration of virtual machines from one physical host to another, and integration with System Center Virtual Machine Manager.
Questions?
Thank You Email: [email_address] Blog: http://mcsegeek.wordpress.com

More Related Content

What's hot

Using AWR for IO Subsystem Analysis
Using AWR for IO Subsystem AnalysisUsing AWR for IO Subsystem Analysis
Using AWR for IO Subsystem Analysis
Texas Memory Systems, and IBM Company
 
Oracle12c data guard farsync and whats new
Oracle12c data guard farsync and whats newOracle12c data guard farsync and whats new
Oracle12c data guard farsync and whats new
Nassyam Basha
 
Surviving the Crisis With the Help of Oracle Database Resource Manager
Surviving the Crisis With the Help of Oracle Database Resource ManagerSurviving the Crisis With the Help of Oracle Database Resource Manager
Surviving the Crisis With the Help of Oracle Database Resource Manager
Maris Elsins
 
AWR Sample Report
AWR Sample ReportAWR Sample Report
AWR Sample Report
Devendra Singh
 
Oracle12c data guard farsync and whats new - Nassyam Basha
Oracle12c data guard farsync and whats new - Nassyam BashaOracle12c data guard farsync and whats new - Nassyam Basha
Oracle12c data guard farsync and whats new - Nassyam Basha
pasalapudi123
 
Netezza workload management
Netezza workload managementNetezza workload management
Netezza workload management
Biju Nair
 
Technical white paper--Optimizing Quality of Service with SAP HANAon Power Ra...
Technical white paper--Optimizing Quality of Service with SAP HANAon Power Ra...Technical white paper--Optimizing Quality of Service with SAP HANAon Power Ra...
Technical white paper--Optimizing Quality of Service with SAP HANAon Power Ra...
Krystel Hery
 
Pow03190 usen
Pow03190 usenPow03190 usen
Pow03190 usen
Kaizenlogcom
 
Oracle Database Management Basic 1
Oracle Database Management Basic 1Oracle Database Management Basic 1
Oracle Database Management Basic 1
Chien Chung Shen
 
Performance Tuning With Oracle ASH and AWR. Part 1 How And What
Performance Tuning With Oracle ASH and AWR. Part 1 How And WhatPerformance Tuning With Oracle ASH and AWR. Part 1 How And What
Performance Tuning With Oracle ASH and AWR. Part 1 How And What
udaymoogala
 
Analyzing SQL Server wait stats, hands-on!
Analyzing SQL Server wait stats, hands-on!Analyzing SQL Server wait stats, hands-on!
Analyzing SQL Server wait stats, hands-on!
Red Gate Software
 
Performance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RACPerformance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Kristofferson A
 
Cloug Troubleshooting Oracle 11g Rac 101 Tips And Tricks
Cloug Troubleshooting Oracle 11g Rac 101 Tips And TricksCloug Troubleshooting Oracle 11g Rac 101 Tips And Tricks
Cloug Troubleshooting Oracle 11g Rac 101 Tips And Tricks
Scott Jenner
 
PostGreSQL Performance Tuning
PostGreSQL Performance TuningPostGreSQL Performance Tuning
PostGreSQL Performance Tuning
Maven Logix
 
Ash architecture and advanced usage rmoug2014
Ash architecture and advanced usage rmoug2014Ash architecture and advanced usage rmoug2014
Ash architecture and advanced usage rmoug2014
John Beresniewicz
 
Troubleshooting Complex Performance issues - Oracle SEG$ contention
Troubleshooting Complex Performance issues - Oracle SEG$ contentionTroubleshooting Complex Performance issues - Oracle SEG$ contention
Troubleshooting Complex Performance issues - Oracle SEG$ contention
Tanel Poder
 
Sql server backup internals
Sql server backup internalsSql server backup internals
Sql server backup internals
Hamid J. Fard
 
Building the Perfect SharePoint 2010 Farm - SharePoint Saturday NYC 2011
Building the Perfect SharePoint 2010 Farm - SharePoint Saturday NYC 2011Building the Perfect SharePoint 2010 Farm - SharePoint Saturday NYC 2011
Building the Perfect SharePoint 2010 Farm - SharePoint Saturday NYC 2011
Michael Noel
 
Dataguard physical stand by setup
Dataguard physical stand by setupDataguard physical stand by setup
Dataguard physical stand by setup
smajeed1
 
Building the Perfect SharePoint 2010 Farm - TechEd Australia 2011
Building the Perfect SharePoint 2010 Farm - TechEd Australia 2011Building the Perfect SharePoint 2010 Farm - TechEd Australia 2011
Building the Perfect SharePoint 2010 Farm - TechEd Australia 2011
Michael Noel
 

What's hot (20)

Using AWR for IO Subsystem Analysis
Using AWR for IO Subsystem AnalysisUsing AWR for IO Subsystem Analysis
Using AWR for IO Subsystem Analysis
 
Oracle12c data guard farsync and whats new
Oracle12c data guard farsync and whats newOracle12c data guard farsync and whats new
Oracle12c data guard farsync and whats new
 
Surviving the Crisis With the Help of Oracle Database Resource Manager
Surviving the Crisis With the Help of Oracle Database Resource ManagerSurviving the Crisis With the Help of Oracle Database Resource Manager
Surviving the Crisis With the Help of Oracle Database Resource Manager
 
AWR Sample Report
AWR Sample ReportAWR Sample Report
AWR Sample Report
 
Oracle12c data guard farsync and whats new - Nassyam Basha
Oracle12c data guard farsync and whats new - Nassyam BashaOracle12c data guard farsync and whats new - Nassyam Basha
Oracle12c data guard farsync and whats new - Nassyam Basha
 
Netezza workload management
Netezza workload managementNetezza workload management
Netezza workload management
 
Technical white paper--Optimizing Quality of Service with SAP HANAon Power Ra...
Technical white paper--Optimizing Quality of Service with SAP HANAon Power Ra...Technical white paper--Optimizing Quality of Service with SAP HANAon Power Ra...
Technical white paper--Optimizing Quality of Service with SAP HANAon Power Ra...
 
Pow03190 usen
Pow03190 usenPow03190 usen
Pow03190 usen
 
Oracle Database Management Basic 1
Oracle Database Management Basic 1Oracle Database Management Basic 1
Oracle Database Management Basic 1
 
Performance Tuning With Oracle ASH and AWR. Part 1 How And What
Performance Tuning With Oracle ASH and AWR. Part 1 How And WhatPerformance Tuning With Oracle ASH and AWR. Part 1 How And What
Performance Tuning With Oracle ASH and AWR. Part 1 How And What
 
Analyzing SQL Server wait stats, hands-on!
Analyzing SQL Server wait stats, hands-on!Analyzing SQL Server wait stats, hands-on!
Analyzing SQL Server wait stats, hands-on!
 
Performance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RACPerformance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RAC
 
Cloug Troubleshooting Oracle 11g Rac 101 Tips And Tricks
Cloug Troubleshooting Oracle 11g Rac 101 Tips And TricksCloug Troubleshooting Oracle 11g Rac 101 Tips And Tricks
Cloug Troubleshooting Oracle 11g Rac 101 Tips And Tricks
 
PostGreSQL Performance Tuning
PostGreSQL Performance TuningPostGreSQL Performance Tuning
PostGreSQL Performance Tuning
 
Ash architecture and advanced usage rmoug2014
Ash architecture and advanced usage rmoug2014Ash architecture and advanced usage rmoug2014
Ash architecture and advanced usage rmoug2014
 
Troubleshooting Complex Performance issues - Oracle SEG$ contention
Troubleshooting Complex Performance issues - Oracle SEG$ contentionTroubleshooting Complex Performance issues - Oracle SEG$ contention
Troubleshooting Complex Performance issues - Oracle SEG$ contention
 
Sql server backup internals
Sql server backup internalsSql server backup internals
Sql server backup internals
 
Building the Perfect SharePoint 2010 Farm - SharePoint Saturday NYC 2011
Building the Perfect SharePoint 2010 Farm - SharePoint Saturday NYC 2011Building the Perfect SharePoint 2010 Farm - SharePoint Saturday NYC 2011
Building the Perfect SharePoint 2010 Farm - SharePoint Saturday NYC 2011
 
Dataguard physical stand by setup
Dataguard physical stand by setupDataguard physical stand by setup
Dataguard physical stand by setup
 
Building the Perfect SharePoint 2010 Farm - TechEd Australia 2011
Building the Perfect SharePoint 2010 Farm - TechEd Australia 2011Building the Perfect SharePoint 2010 Farm - TechEd Australia 2011
Building the Perfect SharePoint 2010 Farm - TechEd Australia 2011
 

Viewers also liked

Troubleshooting SQL Server 2000 Virtual Server /Service Pack ...
Troubleshooting SQL Server 2000 Virtual Server /Service Pack ...Troubleshooting SQL Server 2000 Virtual Server /Service Pack ...
Troubleshooting SQL Server 2000 Virtual Server /Service Pack ...
webhostingguy
 
Ntlm
NtlmNtlm
Building your first sql server cluster
Building your first sql server clusterBuilding your first sql server cluster
Building your first sql server cluster
Joseph D'Antoni
 
IIS Always-On Services
IIS Always-On ServicesIIS Always-On Services
IIS Always-On Services
Brian Ritchie
 
Sql Cluster Tech Net 0401(Pm)
Sql Cluster Tech Net 0401(Pm)Sql Cluster Tech Net 0401(Pm)
Sql Cluster Tech Net 0401(Pm)
bigqiang zou
 
Iis it-slideshares.blogspot.com
Iis it-slideshares.blogspot.comIis it-slideshares.blogspot.com
Iis it-slideshares.blogspot.com
phanleson
 
Troubleshooting sql server
Troubleshooting sql serverTroubleshooting sql server
Troubleshooting sql server
Antonios Chatzipavlis
 
How To Set Up SQL Load Balancing with HAProxy - Slides
How To Set Up SQL Load Balancing with HAProxy - SlidesHow To Set Up SQL Load Balancing with HAProxy - Slides
How To Set Up SQL Load Balancing with HAProxy - Slides
Severalnines
 
Sql server troubleshooting
Sql server troubleshootingSql server troubleshooting
Sql server troubleshooting
Nathan Winters
 
SQL Server Cluster Presentation
SQL Server Cluster PresentationSQL Server Cluster Presentation
SQL Server Cluster Presentation
webhostingguy
 
Understanding IIS
Understanding IISUnderstanding IIS
Understanding IIS
Om Vikram Thapa
 
Always on in SQL Server 2012
Always on in SQL Server 2012Always on in SQL Server 2012
Always on in SQL Server 2012
Fadi Abdulwahab
 

Viewers also liked (12)

Troubleshooting SQL Server 2000 Virtual Server /Service Pack ...
Troubleshooting SQL Server 2000 Virtual Server /Service Pack ...Troubleshooting SQL Server 2000 Virtual Server /Service Pack ...
Troubleshooting SQL Server 2000 Virtual Server /Service Pack ...
 
Ntlm
NtlmNtlm
Ntlm
 
Building your first sql server cluster
Building your first sql server clusterBuilding your first sql server cluster
Building your first sql server cluster
 
IIS Always-On Services
IIS Always-On ServicesIIS Always-On Services
IIS Always-On Services
 
Sql Cluster Tech Net 0401(Pm)
Sql Cluster Tech Net 0401(Pm)Sql Cluster Tech Net 0401(Pm)
Sql Cluster Tech Net 0401(Pm)
 
Iis it-slideshares.blogspot.com
Iis it-slideshares.blogspot.comIis it-slideshares.blogspot.com
Iis it-slideshares.blogspot.com
 
Troubleshooting sql server
Troubleshooting sql serverTroubleshooting sql server
Troubleshooting sql server
 
How To Set Up SQL Load Balancing with HAProxy - Slides
How To Set Up SQL Load Balancing with HAProxy - SlidesHow To Set Up SQL Load Balancing with HAProxy - Slides
How To Set Up SQL Load Balancing with HAProxy - Slides
 
Sql server troubleshooting
Sql server troubleshootingSql server troubleshooting
Sql server troubleshooting
 
SQL Server Cluster Presentation
SQL Server Cluster PresentationSQL Server Cluster Presentation
SQL Server Cluster Presentation
 
Understanding IIS
Understanding IISUnderstanding IIS
Understanding IIS
 
Always on in SQL Server 2012
Always on in SQL Server 2012Always on in SQL Server 2012
Always on in SQL Server 2012
 

Similar to Troubleshooting SQL Server

Sql server 2016 it just runs faster sql bits 2017 edition
Sql server 2016 it just runs faster   sql bits 2017 editionSql server 2016 it just runs faster   sql bits 2017 edition
Sql server 2016 it just runs faster sql bits 2017 edition
Bob Ward
 
Building a high-performance data lake analytics engine at Alibaba Cloud with ...
Building a high-performance data lake analytics engine at Alibaba Cloud with ...Building a high-performance data lake analytics engine at Alibaba Cloud with ...
Building a high-performance data lake analytics engine at Alibaba Cloud with ...
Alluxio, Inc.
 
Performance tuning in sql server
Performance tuning in sql serverPerformance tuning in sql server
Performance tuning in sql server
Antonios Chatzipavlis
 
11g R2
11g R211g R2
11g R2
afa reg
 
Using SAS GRID v 9 with Isilon F810
Using SAS GRID v 9 with Isilon F810Using SAS GRID v 9 with Isilon F810
Using SAS GRID v 9 with Isilon F810
Boni Bruno
 
Sql Server
Sql ServerSql Server
Sql Server
SandyShin
 
Best Practices with PostgreSQL on Solaris
Best Practices with PostgreSQL on SolarisBest Practices with PostgreSQL on Solaris
Best Practices with PostgreSQL on Solaris
Jignesh Shah
 
Large Scale SQL Considerations for SharePoint Deployments
Large Scale SQL Considerations for SharePoint DeploymentsLarge Scale SQL Considerations for SharePoint Deployments
Large Scale SQL Considerations for SharePoint Deployments
Joel Oleson
 
Dmv's & Performance Monitor in SQL Server
Dmv's & Performance Monitor in SQL ServerDmv's & Performance Monitor in SQL Server
Dmv's & Performance Monitor in SQL Server
Zeba Ansari
 
Sql server performance tuning
Sql server performance tuningSql server performance tuning
Sql server performance tuning
Jugal Shah
 
Oracle R12 EBS Performance Tuning
Oracle R12 EBS Performance TuningOracle R12 EBS Performance Tuning
Oracle R12 EBS Performance Tuning
Scott Jenner
 
SQL Server It Just Runs Faster
SQL Server It Just Runs FasterSQL Server It Just Runs Faster
SQL Server It Just Runs Faster
Bob Ward
 
What's New in MySQL 5.7
What's New in MySQL 5.7What's New in MySQL 5.7
What's New in MySQL 5.7
Olivier DASINI
 
Sql server performance tuning and optimization
Sql server performance tuning and optimizationSql server performance tuning and optimization
Sql server performance tuning and optimization
Manish Rawat
 
Dba tuning
Dba tuningDba tuning
CPN302 your-linux-ami-optimization-and-performance
CPN302 your-linux-ami-optimization-and-performanceCPN302 your-linux-ami-optimization-and-performance
CPN302 your-linux-ami-optimization-and-performance
Coburn Watson
 
Clustering van IT-componenten
Clustering van IT-componentenClustering van IT-componenten
Clustering van IT-componenten
Richard Claassens CIPPE
 
Low latency in java 8 v5
Low latency in java 8 v5Low latency in java 8 v5
Low latency in java 8 v5
Peter Lawrey
 
Using preferred read groups in oracle asm michael ault
Using preferred read groups in oracle asm michael aultUsing preferred read groups in oracle asm michael ault
Using preferred read groups in oracle asm michael ault
Louis liu
 
Performance Tuning intro
Performance Tuning introPerformance Tuning intro
Performance Tuning intro
AiougVizagChapter
 

Similar to Troubleshooting SQL Server (20)

Sql server 2016 it just runs faster sql bits 2017 edition
Sql server 2016 it just runs faster   sql bits 2017 editionSql server 2016 it just runs faster   sql bits 2017 edition
Sql server 2016 it just runs faster sql bits 2017 edition
 
Building a high-performance data lake analytics engine at Alibaba Cloud with ...
Building a high-performance data lake analytics engine at Alibaba Cloud with ...Building a high-performance data lake analytics engine at Alibaba Cloud with ...
Building a high-performance data lake analytics engine at Alibaba Cloud with ...
 
Performance tuning in sql server
Performance tuning in sql serverPerformance tuning in sql server
Performance tuning in sql server
 
11g R2
11g R211g R2
11g R2
 
Using SAS GRID v 9 with Isilon F810
Using SAS GRID v 9 with Isilon F810Using SAS GRID v 9 with Isilon F810
Using SAS GRID v 9 with Isilon F810
 
Sql Server
Sql ServerSql Server
Sql Server
 
Best Practices with PostgreSQL on Solaris
Best Practices with PostgreSQL on SolarisBest Practices with PostgreSQL on Solaris
Best Practices with PostgreSQL on Solaris
 
Large Scale SQL Considerations for SharePoint Deployments
Large Scale SQL Considerations for SharePoint DeploymentsLarge Scale SQL Considerations for SharePoint Deployments
Large Scale SQL Considerations for SharePoint Deployments
 
Dmv's & Performance Monitor in SQL Server
Dmv's & Performance Monitor in SQL ServerDmv's & Performance Monitor in SQL Server
Dmv's & Performance Monitor in SQL Server
 
Sql server performance tuning
Sql server performance tuningSql server performance tuning
Sql server performance tuning
 
Oracle R12 EBS Performance Tuning
Oracle R12 EBS Performance TuningOracle R12 EBS Performance Tuning
Oracle R12 EBS Performance Tuning
 
SQL Server It Just Runs Faster
SQL Server It Just Runs FasterSQL Server It Just Runs Faster
SQL Server It Just Runs Faster
 
What's New in MySQL 5.7
What's New in MySQL 5.7What's New in MySQL 5.7
What's New in MySQL 5.7
 
Sql server performance tuning and optimization
Sql server performance tuning and optimizationSql server performance tuning and optimization
Sql server performance tuning and optimization
 
Dba tuning
Dba tuningDba tuning
Dba tuning
 
CPN302 your-linux-ami-optimization-and-performance
CPN302 your-linux-ami-optimization-and-performanceCPN302 your-linux-ami-optimization-and-performance
CPN302 your-linux-ami-optimization-and-performance
 
Clustering van IT-componenten
Clustering van IT-componentenClustering van IT-componenten
Clustering van IT-componenten
 
Low latency in java 8 v5
Low latency in java 8 v5Low latency in java 8 v5
Low latency in java 8 v5
 
Using preferred read groups in oracle asm michael ault
Using preferred read groups in oracle asm michael aultUsing preferred read groups in oracle asm michael ault
Using preferred read groups in oracle asm michael ault
 
Performance Tuning intro
Performance Tuning introPerformance Tuning intro
Performance Tuning intro
 

More from Stephen Rose

Planning customizing office 2010 for your environment online
Planning  customizing office 2010 for your environment onlinePlanning  customizing office 2010 for your environment online
Planning customizing office 2010 for your environment online
Stephen Rose
 
Consumerization
ConsumerizationConsumerization
Consumerization
Stephen Rose
 
IT Pros and The Cloud
IT Pros and The CloudIT Pros and The Cloud
IT Pros and The Cloud
Stephen Rose
 
MDOP 2011
MDOP 2011MDOP 2011
MDOP 2011
Stephen Rose
 
Alphabet soup deployment
Alphabet soup deploymentAlphabet soup deployment
Alphabet soup deployment
Stephen Rose
 
Office 2010 for IT Pros
Office 2010 for IT ProsOffice 2010 for IT Pros
Office 2010 for IT Pros
Stephen Rose
 
Desktop management and support
Desktop management and supportDesktop management and support
Desktop management and support
Stephen Rose
 
Deploying An Optimized Desktop - XP to 7 With P2V
Deploying An Optimized Desktop - XP to 7 With P2VDeploying An Optimized Desktop - XP to 7 With P2V
Deploying An Optimized Desktop - XP to 7 With P2V
Stephen Rose
 
Everything You Ever Wanted To Know About Application Compatibility
Everything You Ever Wanted To Know About Application CompatibilityEverything You Ever Wanted To Know About Application Compatibility
Everything You Ever Wanted To Know About Application Compatibility
Stephen Rose
 
Office 2010 For IT Pros
Office 2010 For IT ProsOffice 2010 For IT Pros
Office 2010 For IT Pros
Stephen Rose
 
MedV/AppV Overview
MedV/AppV OverviewMedV/AppV Overview
MedV/AppV Overview
Stephen Rose
 
Get On The Bus Keynote
Get On The Bus KeynoteGet On The Bus Keynote
Get On The Bus Keynote
Stephen Rose
 
Born To Learn Certification Final
Born To Learn Certification FinalBorn To Learn Certification Final
Born To Learn Certification Final
Stephen Rose
 
XP to Windows 7 with MDT
XP to Windows 7 with MDTXP to Windows 7 with MDT
XP to Windows 7 with MDT
Stephen Rose
 
Sdwest2008 V101 F Dpowerpoint Final
Sdwest2008 V101 F Dpowerpoint FinalSdwest2008 V101 F Dpowerpoint Final
Sdwest2008 V101 F Dpowerpoint Final
Stephen Rose
 

More from Stephen Rose (15)

Planning customizing office 2010 for your environment online
Planning  customizing office 2010 for your environment onlinePlanning  customizing office 2010 for your environment online
Planning customizing office 2010 for your environment online
 
Consumerization
ConsumerizationConsumerization
Consumerization
 
IT Pros and The Cloud
IT Pros and The CloudIT Pros and The Cloud
IT Pros and The Cloud
 
MDOP 2011
MDOP 2011MDOP 2011
MDOP 2011
 
Alphabet soup deployment
Alphabet soup deploymentAlphabet soup deployment
Alphabet soup deployment
 
Office 2010 for IT Pros
Office 2010 for IT ProsOffice 2010 for IT Pros
Office 2010 for IT Pros
 
Desktop management and support
Desktop management and supportDesktop management and support
Desktop management and support
 
Deploying An Optimized Desktop - XP to 7 With P2V
Deploying An Optimized Desktop - XP to 7 With P2VDeploying An Optimized Desktop - XP to 7 With P2V
Deploying An Optimized Desktop - XP to 7 With P2V
 
Everything You Ever Wanted To Know About Application Compatibility
Everything You Ever Wanted To Know About Application CompatibilityEverything You Ever Wanted To Know About Application Compatibility
Everything You Ever Wanted To Know About Application Compatibility
 
Office 2010 For IT Pros
Office 2010 For IT ProsOffice 2010 For IT Pros
Office 2010 For IT Pros
 
MedV/AppV Overview
MedV/AppV OverviewMedV/AppV Overview
MedV/AppV Overview
 
Get On The Bus Keynote
Get On The Bus KeynoteGet On The Bus Keynote
Get On The Bus Keynote
 
Born To Learn Certification Final
Born To Learn Certification FinalBorn To Learn Certification Final
Born To Learn Certification Final
 
XP to Windows 7 with MDT
XP to Windows 7 with MDTXP to Windows 7 with MDT
XP to Windows 7 with MDT
 
Sdwest2008 V101 F Dpowerpoint Final
Sdwest2008 V101 F Dpowerpoint FinalSdwest2008 V101 F Dpowerpoint Final
Sdwest2008 V101 F Dpowerpoint Final
 

Recently uploaded

How UiPath Discovery Suite supports identification of Agentic Process Automat...
How UiPath Discovery Suite supports identification of Agentic Process Automat...How UiPath Discovery Suite supports identification of Agentic Process Automat...
How UiPath Discovery Suite supports identification of Agentic Process Automat...
DianaGray10
 
The Challenge of Interpretability in Generative AI Models.pdf
The Challenge of Interpretability in Generative AI Models.pdfThe Challenge of Interpretability in Generative AI Models.pdf
The Challenge of Interpretability in Generative AI Models.pdf
Sara Kroft
 
Camunda Chapter NY Meetup July 2024.pptx
Camunda Chapter NY Meetup July 2024.pptxCamunda Chapter NY Meetup July 2024.pptx
Camunda Chapter NY Meetup July 2024.pptx
ZachWylie3
 
Keynote : AI & Future Of Offensive Security
Keynote : AI & Future Of Offensive SecurityKeynote : AI & Future Of Offensive Security
Keynote : AI & Future Of Offensive Security
Priyanka Aash
 
"Hands-on development experience using wasm Blazor", Furdak Vladyslav.pptx
"Hands-on development experience using wasm Blazor", Furdak Vladyslav.pptx"Hands-on development experience using wasm Blazor", Furdak Vladyslav.pptx
"Hands-on development experience using wasm Blazor", Furdak Vladyslav.pptx
Fwdays
 
It's your unstructured data: How to get your GenAI app to production (and spe...
It's your unstructured data: How to get your GenAI app to production (and spe...It's your unstructured data: How to get your GenAI app to production (and spe...
It's your unstructured data: How to get your GenAI app to production (and spe...
Zilliz
 
Indian Privacy law & Infosec for Startups
Indian Privacy law & Infosec for StartupsIndian Privacy law & Infosec for Startups
Indian Privacy law & Infosec for Startups
AMol NAik
 
Choosing the Best Outlook OST to PST Converter: Key Features and Considerations
Choosing the Best Outlook OST to PST Converter: Key Features and ConsiderationsChoosing the Best Outlook OST to PST Converter: Key Features and Considerations
Choosing the Best Outlook OST to PST Converter: Key Features and Considerations
webbyacad software
 
FIDO Munich Seminar Workforce Authentication Case Study.pptx
FIDO Munich Seminar Workforce Authentication Case Study.pptxFIDO Munich Seminar Workforce Authentication Case Study.pptx
FIDO Munich Seminar Workforce Authentication Case Study.pptx
FIDO Alliance
 
Top 12 AI Technology Trends For 2024.pdf
Top 12 AI Technology Trends For 2024.pdfTop 12 AI Technology Trends For 2024.pdf
Top 12 AI Technology Trends For 2024.pdf
Marrie Morris
 
Mule Experience Hub and Release Channel with Java 17
Mule Experience Hub and Release Channel with Java 17Mule Experience Hub and Release Channel with Java 17
Mule Experience Hub and Release Channel with Java 17
Bhajan Mehta
 
Generative AI technology is a fascinating field that focuses on creating comp...
Generative AI technology is a fascinating field that focuses on creating comp...Generative AI technology is a fascinating field that focuses on creating comp...
Generative AI technology is a fascinating field that focuses on creating comp...
Nohoax Kanont
 
The History of Embeddings & Multimodal Embeddings
The History of Embeddings & Multimodal EmbeddingsThe History of Embeddings & Multimodal Embeddings
The History of Embeddings & Multimodal Embeddings
Zilliz
 
DefCamp_2016_Chemerkin_Yury_--_publish.pdf
DefCamp_2016_Chemerkin_Yury_--_publish.pdfDefCamp_2016_Chemerkin_Yury_--_publish.pdf
DefCamp_2016_Chemerkin_Yury_--_publish.pdf
Yury Chemerkin
 
Welcome to Cyberbiosecurity. Because regular cybersecurity wasn't complicated...
Welcome to Cyberbiosecurity. Because regular cybersecurity wasn't complicated...Welcome to Cyberbiosecurity. Because regular cybersecurity wasn't complicated...
Welcome to Cyberbiosecurity. Because regular cybersecurity wasn't complicated...
Snarky Security
 
Generative AI Reasoning Tech Talk - July 2024
Generative AI Reasoning Tech Talk - July 2024Generative AI Reasoning Tech Talk - July 2024
Generative AI Reasoning Tech Talk - July 2024
siddu769252
 
"Building Future-Ready Apps with .NET 8 and Azure Serverless Ecosystem", Stan...
"Building Future-Ready Apps with .NET 8 and Azure Serverless Ecosystem", Stan..."Building Future-Ready Apps with .NET 8 and Azure Serverless Ecosystem", Stan...
"Building Future-Ready Apps with .NET 8 and Azure Serverless Ecosystem", Stan...
Fwdays
 
History and Introduction for Generative AI ( GenAI )
History and Introduction for Generative AI ( GenAI )History and Introduction for Generative AI ( GenAI )
History and Introduction for Generative AI ( GenAI )
Badri_Bady
 
Exchange, Entra ID, Conectores, RAML: Todo, a la vez, en todas partes
Exchange, Entra ID, Conectores, RAML: Todo, a la vez, en todas partesExchange, Entra ID, Conectores, RAML: Todo, a la vez, en todas partes
Exchange, Entra ID, Conectores, RAML: Todo, a la vez, en todas partes
jorgelebrato
 
NVIDIA at Breakthrough Discuss for Space Exploration
NVIDIA at Breakthrough Discuss for Space ExplorationNVIDIA at Breakthrough Discuss for Space Exploration
NVIDIA at Breakthrough Discuss for Space Exploration
Alison B. Lowndes
 

Recently uploaded (20)

How UiPath Discovery Suite supports identification of Agentic Process Automat...
How UiPath Discovery Suite supports identification of Agentic Process Automat...How UiPath Discovery Suite supports identification of Agentic Process Automat...
How UiPath Discovery Suite supports identification of Agentic Process Automat...
 
The Challenge of Interpretability in Generative AI Models.pdf
The Challenge of Interpretability in Generative AI Models.pdfThe Challenge of Interpretability in Generative AI Models.pdf
The Challenge of Interpretability in Generative AI Models.pdf
 
Camunda Chapter NY Meetup July 2024.pptx
Camunda Chapter NY Meetup July 2024.pptxCamunda Chapter NY Meetup July 2024.pptx
Camunda Chapter NY Meetup July 2024.pptx
 
Keynote : AI & Future Of Offensive Security
Keynote : AI & Future Of Offensive SecurityKeynote : AI & Future Of Offensive Security
Keynote : AI & Future Of Offensive Security
 
"Hands-on development experience using wasm Blazor", Furdak Vladyslav.pptx
"Hands-on development experience using wasm Blazor", Furdak Vladyslav.pptx"Hands-on development experience using wasm Blazor", Furdak Vladyslav.pptx
"Hands-on development experience using wasm Blazor", Furdak Vladyslav.pptx
 
It's your unstructured data: How to get your GenAI app to production (and spe...
It's your unstructured data: How to get your GenAI app to production (and spe...It's your unstructured data: How to get your GenAI app to production (and spe...
It's your unstructured data: How to get your GenAI app to production (and spe...
 
Indian Privacy law & Infosec for Startups
Indian Privacy law & Infosec for StartupsIndian Privacy law & Infosec for Startups
Indian Privacy law & Infosec for Startups
 
Choosing the Best Outlook OST to PST Converter: Key Features and Considerations
Choosing the Best Outlook OST to PST Converter: Key Features and ConsiderationsChoosing the Best Outlook OST to PST Converter: Key Features and Considerations
Choosing the Best Outlook OST to PST Converter: Key Features and Considerations
 
FIDO Munich Seminar Workforce Authentication Case Study.pptx
FIDO Munich Seminar Workforce Authentication Case Study.pptxFIDO Munich Seminar Workforce Authentication Case Study.pptx
FIDO Munich Seminar Workforce Authentication Case Study.pptx
 
Top 12 AI Technology Trends For 2024.pdf
Top 12 AI Technology Trends For 2024.pdfTop 12 AI Technology Trends For 2024.pdf
Top 12 AI Technology Trends For 2024.pdf
 
Mule Experience Hub and Release Channel with Java 17
Mule Experience Hub and Release Channel with Java 17Mule Experience Hub and Release Channel with Java 17
Mule Experience Hub and Release Channel with Java 17
 
Generative AI technology is a fascinating field that focuses on creating comp...
Generative AI technology is a fascinating field that focuses on creating comp...Generative AI technology is a fascinating field that focuses on creating comp...
Generative AI technology is a fascinating field that focuses on creating comp...
 
The History of Embeddings & Multimodal Embeddings
The History of Embeddings & Multimodal EmbeddingsThe History of Embeddings & Multimodal Embeddings
The History of Embeddings & Multimodal Embeddings
 
DefCamp_2016_Chemerkin_Yury_--_publish.pdf
DefCamp_2016_Chemerkin_Yury_--_publish.pdfDefCamp_2016_Chemerkin_Yury_--_publish.pdf
DefCamp_2016_Chemerkin_Yury_--_publish.pdf
 
Welcome to Cyberbiosecurity. Because regular cybersecurity wasn't complicated...
Welcome to Cyberbiosecurity. Because regular cybersecurity wasn't complicated...Welcome to Cyberbiosecurity. Because regular cybersecurity wasn't complicated...
Welcome to Cyberbiosecurity. Because regular cybersecurity wasn't complicated...
 
Generative AI Reasoning Tech Talk - July 2024
Generative AI Reasoning Tech Talk - July 2024Generative AI Reasoning Tech Talk - July 2024
Generative AI Reasoning Tech Talk - July 2024
 
"Building Future-Ready Apps with .NET 8 and Azure Serverless Ecosystem", Stan...
"Building Future-Ready Apps with .NET 8 and Azure Serverless Ecosystem", Stan..."Building Future-Ready Apps with .NET 8 and Azure Serverless Ecosystem", Stan...
"Building Future-Ready Apps with .NET 8 and Azure Serverless Ecosystem", Stan...
 
History and Introduction for Generative AI ( GenAI )
History and Introduction for Generative AI ( GenAI )History and Introduction for Generative AI ( GenAI )
History and Introduction for Generative AI ( GenAI )
 
Exchange, Entra ID, Conectores, RAML: Todo, a la vez, en todas partes
Exchange, Entra ID, Conectores, RAML: Todo, a la vez, en todas partesExchange, Entra ID, Conectores, RAML: Todo, a la vez, en todas partes
Exchange, Entra ID, Conectores, RAML: Todo, a la vez, en todas partes
 
NVIDIA at Breakthrough Discuss for Space Exploration
NVIDIA at Breakthrough Discuss for Space ExplorationNVIDIA at Breakthrough Discuss for Space Exploration
NVIDIA at Breakthrough Discuss for Space Exploration
 

Troubleshooting SQL Server

  • 1. Troubleshooting SQL Server Stephen Rose- MCSE, MCT, MCSA, MCP+I Microsoft MVP- Connected Systems Developer
  • 2. Agenda Who Am I? Where Do I Start? Case Study- MS Society of Canada Optimal Environment Performance Monitor (PerfMon) Optimizing SQL Conclusions Q and A
  • 3. Who Am I? Stephen Rose Partner /Network Architect with Odyssey Consulting Group MCSE, MCT, MCSA, MCP+I 2007 Microsoft Most Valuable Professional – Networking Certified in Windows NT, 2000, and 2003 15 years of Tech Experience Technical Blogger with Fast Company Magazine http://blog.fastcompany.com/experts Personal Tech Blog @ http://mcsegeek.wordpress.com Member of the UCSD Advisory Board Member of INETA.org Board
  • 5. Case Study Background Odyssey Consulting Group was contracted by the Multiple Sclerosis Society of Canada to help redesign and optimize their internal network systems to better support their new online fundraising portal. Technologies like web farms, load balancing, SQL clustering and server virtualization were introduced to help meet MS Society meet their needs but the big issue was SQL and it’s connections to some legacy systems.
  • 6. Optimal Environment Disc Array Small Disks = Faster 10 30GB Disks rather than 2 150GB Seek Time, Latency, Search 10k – 15k RAID 0+1 32 Bit SQL vs. 64 Bit SQL Clustering Server 2008 w/ SQL 2008 Web Farm Load Balancing
  • 7. PerfMon which is a SNMP based performance monitoring tool. PerfMon has the following chracteristics: High performance It requires little cpu to run, even with more that thousand hosts being polled.
  • 8. MS Society of Canada
  • 10. Web Server Dual Xeon Processor 3 GHz 2 GB RAM 2 x 72GB 10K drives (RAID 1) Windows 2003 SP1 NAT-SQL-01 Quad Xeon MP 1.5 GHz 4 GB RAM 2x 36 GB 10K Drives RAID 1(Internal, running Windows, Page Files and SQL app only) 12 x 72 GB 15K Drives (Connected to a SAN) RAID 10 (Running SQL data and log files) Windows 2003 SP1 SQL 2000 SP4
  • 11. NAT-SQL-02 Quad Xeon MP 1.5 GHz 4 GB RAM 2 x 18 GB 10K Drives RAID 1(Internal, running Windows, Page Files and SQL app only) 12 x 18 GB 15K Drives (Connected to a External SCSI array) RAID 10 (Running SQL data and log files) Windows 2003 SP1 SQL2005
  • 12. SAN IBM DS4300 Expansion Unit 2 x 72GB 15K Drives for NAT-APP-03 user files RAID 1 12 x 72GB 15K Drives for NAT-SQL-01 data and log files RAID 10 2 x 72GB 15K Drives for NAT-SQL-03 data and log files RAID 1 6 x 72GB 15K Drives for VMWare RAID 5 2 SAN Switches for redundancy Connected to NAT-SQL-01 NAT-APP-03, NAT-SQL-03) All servers have Dual HBA's for redundancy
  • 13. Network 2 x Cisco ASA5510 Firewalls, connected to 3 SDSL and 1 ADSL internet lines (2 lines per firewall in context mode) 2 x Cisco Catalyst 3560G Core Switches (configured for failover, default gateway for network, firewalls plugged into these and linked to 3Com switches below) VLAN's configured for routing tables
  • 14. Network 2 x 3Com Superstack 3 4228G switches (All servers plugged directly into these along with all hubs and Rogers VPN connection) Dual T1 line connected to 3com switches via a Cisco 1700 Series Router linking 14 remote sites for VPN
  • 16. % of Processor Time Processor Usage: Issue: The processor usage averages around 50%-70%. Processor usage should be around 20%. This shows there is not enough processor cycles to manage the data. Solution: Utilize more processors. Preferably 64 Bit capable of Hyperthreading with 64 bit SQL and 2003 OS.
  • 19. Disk Speed Disk Speed: Issue: Your average write time is around 75MS. This should hang around 20MS. Your Read time is averaging 100. It should be around 40MS. Solution: Upgrading to smaller disks (40-60GB Max) that are faster (15,000 RPM).
  • 22. How Do We Fix These Issues?
  • 23. Recommendations Memory Memory is being maxed out. Upgrade to max RAM. WEB SERVER- Requires 4 GB RAM min. SQL 1 Requires more than 4 GB. Reduce the size of the 12 drives to 40GB from the 72 GB More processing power is required. 1.5 GB is not enough power. Upgrade to SQL 2005 64 BIT Switch from RAID 1 to RAID 0+1 SQL 2 Same recommendations except drive sizes and SQL are fine. SAN Reduce the size of the drives from 72GB to 40 GB Go 0+1 on all RAID.
  • 25. OLTP- Online Transaction Processing OLTP work loads are characterized by high volumes of similar small transactions. It is important to keep these characteristics in mind as we examine the significance of database design, resource utilization and system performance. In this case study, the OLTP was an online system that allowed people to sponsor walkers/runners in MS Society events.
  • 26. Database Design Issue If: Too many table joins for frequent queries. Overuse of joins in an OLTP application results in longer running queries & wasted system resources. Generally, frequent operations requiring 5 or more table joins should be avoided by redesigning the database.
  • 27. Database Design Issue If: Too many indexes on frequently updated (inclusive of inserts, updates and deletes) tables incur extra index maintenance overhead. Generally, OLTP database designs should keep the number of indexes to a functional minimum , again due to the high volumes of similar transactions combined with the cost of index maintenance.
  • 28. Database Design Issue If: Big IOs such as table and range scans due to missing indexes. By definition, OLTP transactions should not require big IOs and should be examined.
  • 29. Database Design Issue If: Unused indexes incur the cost of index maintenance for inserts, updates, and deletes without benefiting any users. Unused indexes should be eliminated. Any index that has been used (by select, update or delete operations) will appear in sys.dm_db_index_usage_stats. Thus, any defined index not included in this DMV has not been used since the last re-start of SQL Server.
  • 30. CPU Bottleneck If: Signal waits > 25% of total waits. See sys.dm_os_wait_stats for Signal waits and Total waits. Signal waits measure the time spent in the runnable queue waiting for CPU. High signal waits indicate a CPU bottleneck.
  • 31. CPU Bottleneck If: Plan re-use < 90% . A query plan is used to execute a query. Plan re-use is desirable for OLTP workloads because re-creating the same plan (for similar or identical transactions) is a waste of CPU resources. Compare SQL Server SQL Statistics: batch requests/sec to SQL compilations/sec. Compute plan re-use as follows: Plan re-use = (Batch requests - SQL compilations) / Batch requests. Special exception to the plan re-use rule: Zero cost plans will not be cached (not re-used) in SQL 2005 SP2. Applications that use zero cost plans will have a lower plan re-use but this is not a performance issue.
  • 32. CPU Bottleneck If: Parallel wait type cxpacket > 10% of total waits. Parallelism sacrifices CPU resources for speed of execution. Given the high volumes of OLTP, parallel queries usually reduce OLTP throughput and should be avoided. See sys.dm_os_wait_stats for wait statistics.
  • 33. Memory Bottleneck If: Consistently low average page life expectancy. See Average Page Life Expectancy Counter which is in the Perfmon object SQL Server Buffer Manager (this represents is the average number of seconds a page stays in cache). For OLTP, an average page life expectancy of 300 is 5 minutes. Anything less could indicate memory pressure, missing indexes, or a cache flush.
  • 34. Memory Bottleneck If: Sudden big drop in page life expectancy. OLTP applications (e.g. small transactions) should have a steady (or slowly increasing) page life expectancy. See Perfmon object SQL Server Buffer Manager.
  • 35. Memory Bottleneck If: Pending memory grants. See counter Memory Grants Pending, in the Perfmon object SQL Server Memory Manager. Small OLTP transactions should not require a large memory grant.
  • 36. Memory Bottleneck If: Sudden drops or consistenty low SQL Cache hit ratio. OLTP applications (e.g. small transactions) should have a high cache hit ratio. Since OLTP transactions are small, there should not be (1) big drops in SQL Cache hit rates or (2) consistently low cache hit rates < 90%. Drops or low cache hit may indicate memory pressure or missing indexes.
  • 37. IO Bottleneck If: High average disk seconds per read. When the IO subsystem is queued, disk seconds per read increases. See Perfmon Logical or Physical disk (disk seconds/read counter). Normally it takes 4-8ms to complete a read when there is no IO pressure. When the IO subsystem is under pressure due to high IO requests, the average time to complete a read increases, showing the effect of disk queues.
  • 38. IO Bottleneck If: Periodic higher values for disk seconds/read may be acceptable for many applications. For high performance OLTP applications, sophisticated SAN subsystems provide greater IO scalability and resiliency in handling spikes of IO activity. Sustained high values for disk seconds/read (>15ms) does indicate a disk bottleneck.udden drops or consistenty low SQL Cache hit ratio. OLTP applications (e.g. small transactions) should have a high cache hit ratio. Since OLTP transactions are small, there should not be (1) big drops in SQL Cache hit rates or (2) consistently low cache hit rates < 90%. Drops or low cache hit may indicate memory pressure or missing indexes.
  • 39. IO Bottleneck If: High average disk seconds per write. See Perfmon Logical or Physical disk. The throughput for high volume OLTP applications is dependent on fast sequential transaction log writes. A transaction log write can be as fast as 1ms (or less) for high performance SAN environments. For many applications, a periodic spike in average disk seconds per write is acceptable considering the high cost of sophisticated SAN subsystems. However, sustained high values for average disk seconds/write is a reliable indicator of a disk bottleneck.
  • 40. IO Bottleneck If: Big IOs such as table and range scans due to missing indexes. Top wait statistics in sys.dm_os_wait_stats are related to IO such as ASYNCH_IO_COMPLETION, IO_COMPLETION, LOGMGR, WRITELOG, or PAGEIOLATCH_x.
  • 41. Network Bottleneck If: High network latency coupled with an application that incurs many round trips to the database. Network bandwidth is used up. See counters packets/sec and current bandwidth counters in the network interface object of Performance Monitor. For TCP/IP frames actual bandwidth is computed as packets/sec * 1500 * 8 /1000000 Mbps.
  • 42. SQL Virtualization Hyper-V, is a hypervisor-based technology that is a key feature of Windows Server 2008.It provides scalability and high performance by supporting features like guest multi-processing support and 64-bit guest and host support; reliability and security through its hypervisor architecture; flexibility and manageability by supporting features like quick migration of virtual machines from one physical host to another, and integration with System Center Virtual Machine Manager.
  • 44. Thank You Email: [email_address] Blog: http://mcsegeek.wordpress.com