Maximizing SQL Server 2005

Embed Size (px)

Citation preview

  • 7/29/2019 Maximizing SQL Server 2005

    1/19

    SQL Server Management(Performance &

    Troubleshooting) andManagement BestPractices)

    Learn how to Monitor, Manage,Diagnose and Resolve SQLServer performance issues.

  • 7/29/2019 Maximizing SQL Server 2005

    2/19

    Agenda

    About Quest Software

    Accolades & Awards

    Quest Products

    Tackling Performance Issues

    Use Cases:

    Root-cause Analysis

    Finding & Fixing Bad SQL

    Testing for Scalability

    Backup & Recovery Demo

    Call to Action

    Q & A

  • 7/29/2019 Maximizing SQL Server 2005

    3/19

    Profitable & Growing

    Nearly $400 Million in 04 revenues

    Continued growth in 01 through 05against sector trends

    Founded in 1987

    Public in 1999; Nasdaq: QSFT

    Customers: 18,000 Worldwide Including 75 percent of the Fortune 500

    over 2,500 employees

    Over 850 in R&D

    Nearly a dozen R&D centers aroundthe globe

    Headquarters: Irvine, California

    About Quest Software

    In Millions

    $0

    $50

    $100

    $150

    $200

    $250

    $300

    $350

    $400$450

    $500

    '99 '00 '01 '02 '03 '04 '05

  • 7/29/2019 Maximizing SQL Server 2005

    4/19

    Accolades & Awards

    Best of Tech Ed award 2006 with Spotlight on SQL Server

    SQL Server Magazine, Platinum readers choice award

    SQL Server Magazine Readers Choice Awards, winner in 11categories, 2005

    No. 1 vendor in Distributed Data Management Facilities, IDC, 2005

    Microsoft ISV Partner of the Year, 2004

    Microsoft TechEd Best of Show Winner, 2004

    Microsoft TechEd Europe Best of Show Winner, 2005

    No. 1 vendor in Application Management Software, GartnerDataquest, 2005

    Jolt Productivity Award Winner

    Network Computing Editors Choice Winner

    No. 8 in the Whos Who in Enterprise Software, Investors

    Business Daily

  • 7/29/2019 Maximizing SQL Server 2005

    5/19

  • 7/29/2019 Maximizing SQL Server 2005

    6/19

    Tackling Performance Issues

    Finding the cause of a performance problem in SQLServer requires detailed knowledge of:

    SQL Profiler

    Performance Monitor A variety of DBCC commands (in SQL Server 2000) or

    DMVs (in SQL Server 2005)

    Enterprise Manager & Query Analyzer (SQL2000) or SQLServer Management Studio (SQL2005)

    Requires several hours to several days to figure out theproblem.

    Well walk you through the process.

  • 7/29/2019 Maximizing SQL Server 2005

    7/19

    The importance of service monitoring

    You should begin with service monitoring= observing thehealth of the service in real-time.

    Enables DBAs to observe service behavior proactively

    and quantitatively. A key objective is to know, quantitatively, what theperformance of a given server is and then manage to thatstandard.

    Allows you to avoid depending on user experience as

    the key indicator for performance Helps find problems even when users arent on the

    system How do you put service monitoring in place?

  • 7/29/2019 Maximizing SQL Server 2005

    8/19

    Proactive Monitoring

    Benefits Best chance of catching errors before they occur. Gets you out of fire fighting mode.

    Best information about environment and apps.Better long-term decisions.

    Drawbacks Requires more time and deeper understanding of

    apps. Requires review and analysis of charts, graphs and

    other information on an on-going basis.

  • 7/29/2019 Maximizing SQL Server 2005

    9/19

    Start with the Performance Baseline

    Build a baseline performance profile. Makes you familiar with the operational behavior of

    each app/server. Clearly documents what is normal for a serverand/or application.

    Identifies types of problems that arise even when theserver is behaving normally:

    Some problems require a response. Some problems have no response.

  • 7/29/2019 Maximizing SQL Server 2005

    10/19

    Goal of a baseline

    Tells you all about the performance of a server undernormal conditions.

    Document and understand as many as possible (if

    not all) background processes Build in filters to catch do not respond situations

    before DBAs see them; Otherwise, apathy can setin.

    After completing a baseline, you then benchmarkthedatabase application at higher and higher workloadsuntil you establish the systems upper performance

    limit.

  • 7/29/2019 Maximizing SQL Server 2005

    11/19

    Building a baseline

    Need a single graphic representation, along withenough information to interpret the results.

    Use System Monitor: real-time or saved to a log.

    Choose a sampling interval that balances the need fordata vs. the disk I/O to record the collections. Every 15seconds is default.

    Flat file vs. database repository Local vs. Remote monitoring? Pros and cons to each. Next, you must assign and assess the SysMon

    counters. (Need a few more counters for building thebaseline than you need for daily monitoring.)

  • 7/29/2019 Maximizing SQL Server 2005

    12/19

    Use Cases

    Now that you know how to proactively monitor the SQLServer database application, you can use these toolsand techniques in combination to solve many different

    use cases: SQL Profiler

    PerfMon

    A variety of DBCC commands (in SQL Server 2000) orDMVs (in SQL Server 2005)

    Enterprise Manager & Query Analyzer (SQL2000) or SQLServer Management Studio (SQL2005)

  • 7/29/2019 Maximizing SQL Server 2005

    13/19

    Use Case #1 Root-cause Analysis

    Youll have to scan the SQL Server error logs as well as the

    Windows log files to determine the error and how best to fix it.

    Finding the cause of a problem in SQL Server requires detailedknowledge of:

    SQL Profiler correlated against

    Performance Monitor (counters shown earlier) combined with

    System metadata:

    A variety of DBCC commands (SQL2000), like DBCC MEMUSAGEand DBCC SQLPERF

    A variety DMVs (SQL2005), like sys.dm_os_memory_clerks andsys.events

    Youll have to correlate the data returned by each tool in turn with

    the next tool in order to construct a complete picture of the error,what happened, and how it can be fixed.

  • 7/29/2019 Maximizing SQL Server 2005

    14/19

    Use Case #2 Finding & Fixing Bad SQL

    Bad SQL are SQL statements that require too manyresources, such as CPU, IO, or cause blocking locks

    Finding bad SQL statements requires:

    Deep knowledge of the query engine and how to readquery plans

    SQL Profiler to find out when bad SQL statements areinvoked, compiled, or recompiled

    A variety of DBCC commands (SQL2000) or DMVs(SQL2005)

    Once you find the bad SQL, youll have to rewrite it,

    evaluate the new execution plan, and (if the new plan isno better) try again.

  • 7/29/2019 Maximizing SQL Server 2005

    15/19

    Use Case #3 Testing for Scalability

    You want to ensure your database application can runwith a certain number of user connections (e.g. 500,1000, etc). But how?

    Testing for scalability using native tools requires:

    Capturing a sample workload using SQL Profiler Creating a new test database and possibly an entire server

    Opening multitudes of Query Analyzer or ManagementStudio sessions to spawn and thereby simulate the propernumber of user connections

    Collect server performance metrics, collate reports, andcompare test results

    Building the test infrastructure, running the test, watchingSQL Servers performance, then collecting metrics anddetermining the results can take hours or even days

  • 7/29/2019 Maximizing SQL Server 2005

    16/19

    Use Case #4 Backup & Recovery

    Backing up a large SQL Server database:

    Consumes nearly as much space as the database itself.Thus, a 1tb database backup will require as much as980gb of space.

    Is unencrypted and readable with a simple text-editor

    Can take hours and hours (depending on the disksubsystem)

    Recovery time is directly dependent on the size of thebackup file and the number of data pages that need tobe read.

  • 7/29/2019 Maximizing SQL Server 2005

    17/19

    Demo

    Quest tools make all of these difficult processes mucheasier and faster, in many cases immediate andinstantaneous:

    Spotlight for root-cause analysis Performance Analysis and SQL Tuning for finding & fixing

    bad SQL

    Benchmark Factory for scalability testing

    Litespeed for fast & easy backups and restores

  • 7/29/2019 Maximizing SQL Server 2005

    18/19

    Call to Action Next Steps

    Attend a live demo:http://www.quest.com/landing/qc_demos.asp

    Download white papers:

    http://www.quest.com/whitepapers Get a trial versions:

    http://www.quest.com/solutions/download.asp

    Email us with your questions:

    [email protected] call 949.754.8000

    http://www.quest.com/landing/qc_demos.asphttp://www.quest.com/whitepapershttp://www.quest.com/solutions/download.aspmailto:[email protected]:[email protected]://www.quest.com/solutions/download.asphttp://www.quest.com/whitepapershttp://www.quest.com/landing/qc_demos.asp
  • 7/29/2019 Maximizing SQL Server 2005

    19/19

    Q & A

    Send questions to:

    Send broader technical questions to: [email protected]

    Send sales & licensing questions to: [email protected]

    THANK YOU!

    mailto:[email protected]:[email protected]:[email protected]:[email protected]