SlideShare a Scribd company logo
1 of 13
Download to read offline
Identifying Problematic SQL in
Sybase ASE
®

Written by Darren Mallette, Senior Technical Consultant, Dell Software

Abstract
Database administrators (DBAs), developers, quality assurance
(QA) analysts and performance engineers have different
requirements for a tool to help identify problematic SQL. This
technical brief explains the needs of each role and describes
the Dell Software products that can be used to identify
problematic SQL statements from Sybase® Adaptive Server
Enterprise (ASE) versions 12.5.0.3 and higher.

Introduction
The tool you need for identifying problematic SQL depends on
your role in the organization. A production DBA, a developer,
a quality assurance analyst and a performance engineer all
require different features in a tool:
•	 DBAs are primarily concerned with the performance of Sybase ASE.
Therefore, they need to be able to see how ASE is using resources
(such as CPU, memory and disk), determine whether any users are
blocked or deadlocked, and identify any resource “hogs.”

•	 Developers need to ensure the performance of their code. Therefore,
they need to be able to extract and analyze embedded SQL in order
to determine which statements really need tuning.
•	 QA analysts are responsible for making sure that each application
works as expected before it is put into production. Therefore, they
need to be able to visualize the health of the ASE server during load
testing, identify the sessions consuming the most resources, and
determine which SQL statements were executed.
•	 Performance engineers need to optimize system performance.
Therefore, they need to be able to diagnose performance bottlenecks
at the SQL level.

This technical brief explores these needs in more detail, and
explains how tools from Dell Software can help IT professionals
in each role do their jobs more effectively and efficiently.
Organizational environments and responsibilities vary, so it’s
best to explore the capabilities of all the products and use
those that best suit your needs.
The native option and its limitations
The introduction of Monitoring Data
Access (MDA) tables in ASE 12.5.0.3
simplified the task of capturing SQL
statements from the ASE server.1
However, several challenges remain.
First, MDA tables are proxy tables that
have no persistent data storage — that is,
they do not store any permanent data. If
the ASE server is restarted, then previous
performance data is lost.

With Foglight’s
Sybase_MDA
cartridge, DBAs
can enable periodic
capture and storage
of performance
data, and define
criteria to identify
resource hogs.

Second, since the tables they are
implemented as in-memory “ring buffers”
that hold as much data as you tell them
to via sp_configure parameters, they
have a fixed size, and they follow a first-in
first-out method of purging data. Proper
sizing needs to be done so that you don’t
miss data. Finally, although the MDA
tables provide you with the SQL that has
executed, you must then narrow down to
the problematic SQL statements.

DBAs, developers, QA analysts and
performance engineers need better
tools to ensure ASE performance, and
Dell Software can help.

Monitoring the Sybase Server —
the DBA
The DBA is primarily concerned with
the performance of Sybase ASE and,
perhaps, to a lesser extent, the operating
system (Unix, Linux or Windows), though
that is typically the realm of the system
administrator. Dell™ Foglight™ provides
unattended, 24x7 monitoring for the
entire application stack — from the end
user to the application server to the
database and the operating system.
Foglight overview
The high-level Foglight dashboard
shows the applications and their SLA,
user impact and infrastructure status
(see Figure 1). Drilldowns give further
insight into transactions, locations and
infrastructure tiers.

Figure 1. Foglight dashboard
How to install and configure MDA tables is beyond the scope of this paper; for excellent
resources on MDA tables, please visit Rob Verschoor’s site at www.sypron.nl/mda or
consult your ASE documentation.

1

2
Figure 2. Configuring Sybase data collection

Foglight’s Sybase_MDA cartridge
A few of the DBA’s tasks are to see how
ASE is using resources (such as CPU,
memory and disk), determine whether
any users are blocked or deadlocked,
and identify any resource “hogs.” With
Foglight’s Sybase_MDA cartridge, DBAs
can enable periodic capture and
storage of performance data, and
define criteria to identify resource hogs
(including individual SQL statements,
users or programs).
Specify what performance data
to collect
Once the Sybase cartridge has been
deployed to your target ASE server, a
simple configuration change is all that is
needed to start capturing performance
data. First you need to modify the agent
properties for the Sybase cartridge. The
Data Management section allows you
to specify what performance data to

3

collect and how frequently (see Figure
2). The Performance option needs to
be checked in order to collect the top
resource-consuming SQL statements.
Note that the default sample interval is
300 seconds, or five minutes.
Specify collection criteria for
SQL statements
Next you need to specify collection
criteria for SQL statements using the
Data Retrieval section of the Properties
page. For top applications, SQL and
users, specify the number of rows that
Foglight will retrieve at each interval,
in addition to the minimum resource
consumption limit that has to occur. In
Figure 3, the DBA has specified that the
top 10 SQL statements be retrieved at
each sample interval, and these must be
statements that have at least 10 seconds
of CPU time per execution.

Once the Sybase
cartridge has been
deployed to your
target ASE server, a
simple configuration
change is all that
is needed to
start capturing
performance data.
Drilling down into a
specific ASE Server
gives the DBA an
end-to-end view of
its processes and
data flows.
Figure 3. Specifying collection criteria for SQL statements
Reviewing the top SQL statements
Once some time has passed to allow
for data collection, the DBA can review
top SQL using the Sybase dashboards
(see Figure 4), as well as drill down to
a specific ASE server from the Sybase
Global View dashboard.

Figure 4. Viewing the top SQL statements

4

Drill down into a particular ASE Server
Drilling down into a specific ASE Server
gives the DBA an end-to-end view of its
processes and data flows, as illustrated
in Figure 5.
Figure 5. Drilling down into a specific ASE Server
Viewing the top SQL for a given
time period
To review the top SQL that was collected
for a time range, go to the Top Activity tab.
The page for TopSQL defaults to the past
four hours, but can easily be changed.
Since the data is retrieved from the MDA

tables and stored locally to the Foglight
server, it is preserved for later review.
On the Top SQL page shown in Figure
6, a SQL was executed with high logical
reads and CPU time. The DBA can take
this data back to the developers so they
can investigate the code and tune the
SQL to prevent the problem in the future.

Figure 6. Viewing the top SQL statements for the ASE Server

5

To review the
top SQL that was
collected for a time
range, go to the Top
Activity tab.
Investigating SQL within the
application code — the developer

Dell SQL Optimizer
for Sybase ASE
provides an easy
way to extract and
analyze embedded
SQL, so developers
can determine
which statements
really need tuning
without having to
run the application.

Often, developers write SQL code to
be functionally correct but give little
regard to performance, believing that
performance is the DBA’s job. Similarly,
code maintenance and SQL tuning is
often regarded as drudge work — who
wants to tune legacy SQL code when
they could be doing cool Java or .Net
stuff? Tuning code can be quite difficult,
because the SQL could be embedded
in stored procedures or views in the
ASE server, in text files on the LAN, or
compiled into executable code.
However, a SQL statement is correct
only if it returns the proper result and
minimizes impact on other system
resources. Performance is not only
the DBA’s responsibility; it is also the
developer’s responsibility.
Dell™ SQL Optimizer for Sybase® ASE
The SQL Scanner module of Dell™ SQL
Optimizer for Sybase® ASE provides
an easy way to extract and analyze
embedded SQL, so developers can
determine which statements really

need tuning without having to run
the application.
To start, simply add objects containing
SQL to the SQL Scanner. Figure 7
shows the stored procedures from
an ASE server; text and binary files
from a Windows file system could also
be added. Then with one click, the
SQL Scanner will extract the SQL and
analyze the query plan to pinpoint the
problematic statements.
When the analysis is complete, the
developer can review the extracted
SELECT statement from the stored
procedure, the abstract plan, the query
plan (showplan), the XML query plan
(in ASE 15), the trace on data and the
analysis of the plan. Any temp tables in
the stored procedure are also extracted
to facilitate proper analysis and tuning.
If the developer decides to tune this
statement, just one click will bring it
into the Syntactical SQL Optimizer for a
comprehensive re-write and benchmark
test to optimize performance.

Figure 7. Analysis of the query plan for the stored procedures from an ASE server

6
Figure 8. Identifying problem users and blocked processes with Spotlight

Understanding what the application
is doing — the QA analyst
Before an application goes into
production, the quality assurance
team is responsible for making sure it
works as expected. The team performs
functional, unit and load tests to
evaluate the application. Unfortunately,
the database is often seen as a black box,
and performance testing is frequently
rudimentary, limited to system
commands such as top, perfmon, or
sp_who (which shows the ASE users).
Getting an overview of ASE server
health with Spotlight on Sybase
QA analysts can easily visualize the health
of the ASE server at a glance, in real time,
during the load test using Spotlight™ on
Sybase® ASE. If any problems arise, an
icon changes color to draw attention to
the problem. With the aid of context-

7

sensitive help, the analyst can drill down
to the root cause of the problem.
For example, the Spotlight screen in
Figure 8 shows three problem users and
one blocked process. Problem users
are identified based on thresholds you
specify; in this case it is due to excessive
time blocked and high CPU usage.
Drilling down to the SQL generated by
a specific session
The analyst can then drill down to
current process activity and sort the
list of sessions to identify the session
consuming the most resources. The
session information provides many
metrics, including a history of the SQL
statements that executed. The analyst
can click a statement to see the full text,
which can then be copied and sent back
to a triage team for resolution.

QA analysts can
easily visualize the
health of the ASE
server at a glance,
in real time, during
the load test using
Spotlight on Sybase.
Spotlight makes it
easy to identify the
most resourceintensive SQL.
Figure 9. Drilling down to problematic SQL in a particular session with Spotlight

Finding the most resource-intensive
SQL server-wide
In addition to evaluating the SQL
generated by a specific session, the
QA analyst can view a current “trace”

of SQL statements server-wide in the
SQL Activity tab (see Figure 10). This list
can also be sorted to identify the most
resource-intensive SQL.

Figure 10. Finding the most resource-intensive SQL server-wide with Spotlight

8
Figure 11. Finding the most resource-intensive SQL with SQL Inspector

Ad-hoc identification of SQL — the
performance engineer
Performance engineers have a difficult
job. In theory, everyone should love
them, because their job is to optimize
system performance. But in reality,
they need to tread lightly between the
developers and DBAs: no one likes to
be told that their database or code isn’t
performing up to par.
The SQL Inspector module in SQL
Optimizer for Sybase enables the
performance engineer to take a quick

9

snapshot of SQL activity, either from
the whole server or from specific
spids or logins. The SQL Inspector
monitors SQL statements and collects
SQL performance statistics from the
Adaptive Server monitoring tables or
the QP Metrics. Then it graphically
displays and compares SQL activity
statistics to diagnose performance
bottlenecks at the SQL level (see Figure
11). The performance engineer can then
identify the most resource-intensive SQL
statements for corrective action.

The performance
engineer can
identify the most
resource-intensive
SQL statements for
corrective action
using the SQL
Inspector module
in SQL Optimizer
for Sybase.
After you’ve identified the
problematic SQL
You may be wondering what to do
with all of the problematic SQL you’ve
identified. Using SQL Optimizer for
Sybase, you have four options:
•	
•	
•	
•	

Many SQL
statements can
return the same
result set, but only
a few of them are
likely to be efficient.

Tune the SQL.
Test for concurrent user scalability.
Recommend indexes.
Perform “what if” analysis.

Option 1: Tune the SQL.
SQL Optimizer can automatically
perform a syntax rewrite of problematic
SQL statements. Many SQL statements
can return the same result set, but only
a few of them are likely to be efficient.
To ensure optimal performance, a SQL
statement needs to be transformed
in multiple ways to produce every
equivalent SQL statement, and then
those alternatives need to be evaluated
to find the most efficient SQL.
SQL Optimizer analyzes source SQL
statements and then applies a unique
artificial intelligence engine to reproduce
a list of semantically equivalent and
syntactically correct SQL statements.
Then it compares the performance of

each alternative statement, as shown
in Figure 12, so you can perform a test
run to see if the alternative statement
offers performance improvement in
your environment.
Option 2: Test for concurrent
user scalability.
The results of the test run from the SQL
Optimizer are for a single user running
each statement. However, multiple
concurrent users typically run a given
application. Performing a scalability test
with Benchmark Factory™ for Databases
will enable you to determine which
statement from the SQL Optimizer
performs best at different user loads
(see Figure 13).
Option 3: Recommend indexes.
If you cannot modify problematic source
code, another alternative is to modify the
indexes on your tables. This approach is
useful when your best efforts to optimize
a SQL statement are insufficient — for
example, when the original problematic
SQL is actually faster than the alternatives,
or the alternatives improve performance
only marginally.

Figure 12. Generating and comparing alternative SQL statements with SQL Optimizer

10
Figure 13. Testing SQL statements at different load with Benchmark Factory
for Databases
SQL Optimizer for Sybase’s Index Advisor
automatically generates a set of index
recommendations for a problematic SQL
statement by analyzing the structure of
a SQL statement (including the search
arguments and table join conditions) and
identifying all the tables and indexes it
uses (see Figure 14). You can also add
your own candidate indexes and group
candidates into compound indexes, and
then evaluate the effect the new indexes
could have on database performance.

Option 4: Perform “what-if” analysis
It is helpful to know ahead of time what
will happen to SQL performance if you
make a change, such as adding an index,
migrating to ASE 15 or making a sp_
configure change. The analysis modules
in SQL Optimizer for Sybase help answer
those questions.
From a common SQL repository, you
can analyze query plans using before
and after scenarios and show the impact

Figure 14. Generating index recommendations for a problematic SQL statement
with Index Advisor

11

It is helpful to know
ahead of time what
will happen to SQL
performance if you
make a change,
such as adding an
index, migrating to
ASE 15 or making
a sp_configure
change.
of the change. You can get an overall
application view, and then drill down
to individual SQLs for detailed analysis.
Figure 15 shows an analysis provided by
the Index Impact Analyzer.

Summary
DBAs, developers, QA analysts and
performance engineers all need to
identify problematic SQL statements,
and Dell Software offers tools to fit each
of their differing needs:

You can get more
information on
these solutions
and download
trial versions at
software.dell.com

•	 Foglight provides unattended monitoring of
applications, alerting DBAs to issues as they
arise. In particular, Foglight can be used
in the ASE environment to capture and
identify poorly performing SQL statements.
Since DBAs are often fighting multiple fires
at once, this automated capture tends to
suit their needs best.
•	 The SQL Scanner of SQL Optimizer for
Sybase enables developers to quickly
extract SQL from application code and
pinpoint the SQL most in need of tuning.
It simplifies the tedious task of wading
through stored procedures and manually
pulling out SQL statements.
•	 Spotlight on Sybase ASE provides visibility
into the current activity of Sybase ASE so
the QA analyst can easily determine what
a load test is doing to the server. The
analyst can also drill down to identify the

users and SQL statements consuming the
most resources.
•	 The SQL Inspector of SQL Optimizer for
Sybase enables performance engineers
to take a snapshot of database activity. By
analyzing the most resource-intensive
statements, they can identify candidates for
performance tuning.

To explore the capabilities of each
tool and decide which are best for
your environment, please visit the Dell
Software website using the links above.
You can get more information on these
solutions and download trial versions
to find the right combination to suit
your needs.

About the author
Darren Mallette has been with Dell
Software for five years. He currently
serves as a Solutions Architect, helping
customers get the most out of their
database and virtualization platforms. In
the past 15 years, he has worked with
Oracle, SQL Server, Sybase, DB2 and
VMware technologies with a focus on
performance monitoring and tuning.
When not staring at the 1> prompt, he
enjoys spending time with his family and
competing in strongman competitions.

Figure 15. “What if” analysis from the Index Impact Analyzer

12
For More Information
© 2013 Dell, Inc. ALL RIGHTS RESERVED. This document
contains proprietary information protected by copyright. No
part of this document may be reproduced or transmitted in
any form or by any means, electronic or mechanical, including
photocopying and recording for any purpose without the
written permission of Dell, Inc. (“Dell”).
Dell, Dell Software, the Dell Software logo and products—as
identified in this document—are registered trademarks of Dell,
Inc. in the U.S.A. and/or other countries. All other trademarks
and registered trademarks are property of their respective
owners.
The information in this document is provided in connection
with Dell products. No license, express or implied, by estoppel
or otherwise, to any intellectual property right is granted by
this document or in connection with the sale of Dell products.
EXCEPT AS SET FORTH IN DELL’S TERMS AND CONDITIONS AS
SPECIFIED IN THE LICENSE AGREEMENT FOR THIS PRODUCT,

About Dell Software
Dell Software helps customers unlock greater potential through
the power of technology—delivering scalable, affordable and
simple-to-use solutions that simplify IT and mitigate risk. The Dell
Software portfolio addresses five key areas of customer needs:
data center and cloud management, information management,
mobile workforce management, security and data protection.
This software, when combined with Dell hardware and services,
drives unmatched efficiency and productivity to accelerate
business results. www.dellsoftware.com.

If you have any questions regarding your potential use of
this material, contact:
Dell Software
5 Polaris Way
Aliso Viejo, CA 92656
www.dellsoftware.com
Refer to our Web site for regional and international
office information.

13
TechBrief-ProblemSQL-SybaseASE-US-KS-23573

DELL ASSUMES NO LIABILITY WHATSOEVER AND DISCLAIMS
ANY EXPRESS, IMPLIED OR STATUTORY WARRANTY RELATING
TO ITS PRODUCTS INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR
A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. IN NO
EVENT SHALL DELL BE LIABLE FOR ANY DIRECT, INDIRECT,
CONSEQUENTIAL, PUNITIVE, SPECIAL OR INCIDENTAL
DAMAGES (INCLUDING, WITHOUT LIMITATION, DAMAGES
FOR LOSS OF PROFITS, BUSINESS INTERRUPTION OR LOSS
OF INFORMATION) ARISING OUT OF THE USE OR INABILITY
TO USE THIS DOCUMENT, EVEN IF DELL HAS BEEN ADVISED
OF THE POSSIBILITY OF SUCH DAMAGES. Dell makes no
representations or warranties with respect to the accuracy or
completeness of the contents of this document and reserves
the right to make changes to specifications and product
descriptions at any time without notice. Dell does not make
any commitment to update the information contained in this
document.

More Related Content

Recently uploaded

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 

Recently uploaded (20)

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 

Featured

AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 

Featured (20)

AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 

Identifying Problematic SQL in Sybase ASE

  • 1. Identifying Problematic SQL in Sybase ASE ® Written by Darren Mallette, Senior Technical Consultant, Dell Software Abstract Database administrators (DBAs), developers, quality assurance (QA) analysts and performance engineers have different requirements for a tool to help identify problematic SQL. This technical brief explains the needs of each role and describes the Dell Software products that can be used to identify problematic SQL statements from Sybase® Adaptive Server Enterprise (ASE) versions 12.5.0.3 and higher. Introduction The tool you need for identifying problematic SQL depends on your role in the organization. A production DBA, a developer, a quality assurance analyst and a performance engineer all require different features in a tool: • DBAs are primarily concerned with the performance of Sybase ASE. Therefore, they need to be able to see how ASE is using resources (such as CPU, memory and disk), determine whether any users are blocked or deadlocked, and identify any resource “hogs.” • Developers need to ensure the performance of their code. Therefore, they need to be able to extract and analyze embedded SQL in order to determine which statements really need tuning. • QA analysts are responsible for making sure that each application works as expected before it is put into production. Therefore, they need to be able to visualize the health of the ASE server during load testing, identify the sessions consuming the most resources, and determine which SQL statements were executed. • Performance engineers need to optimize system performance. Therefore, they need to be able to diagnose performance bottlenecks at the SQL level. This technical brief explores these needs in more detail, and explains how tools from Dell Software can help IT professionals in each role do their jobs more effectively and efficiently. Organizational environments and responsibilities vary, so it’s best to explore the capabilities of all the products and use those that best suit your needs.
  • 2. The native option and its limitations The introduction of Monitoring Data Access (MDA) tables in ASE 12.5.0.3 simplified the task of capturing SQL statements from the ASE server.1 However, several challenges remain. First, MDA tables are proxy tables that have no persistent data storage — that is, they do not store any permanent data. If the ASE server is restarted, then previous performance data is lost. With Foglight’s Sybase_MDA cartridge, DBAs can enable periodic capture and storage of performance data, and define criteria to identify resource hogs. Second, since the tables they are implemented as in-memory “ring buffers” that hold as much data as you tell them to via sp_configure parameters, they have a fixed size, and they follow a first-in first-out method of purging data. Proper sizing needs to be done so that you don’t miss data. Finally, although the MDA tables provide you with the SQL that has executed, you must then narrow down to the problematic SQL statements. DBAs, developers, QA analysts and performance engineers need better tools to ensure ASE performance, and Dell Software can help. Monitoring the Sybase Server — the DBA The DBA is primarily concerned with the performance of Sybase ASE and, perhaps, to a lesser extent, the operating system (Unix, Linux or Windows), though that is typically the realm of the system administrator. Dell™ Foglight™ provides unattended, 24x7 monitoring for the entire application stack — from the end user to the application server to the database and the operating system. Foglight overview The high-level Foglight dashboard shows the applications and their SLA, user impact and infrastructure status (see Figure 1). Drilldowns give further insight into transactions, locations and infrastructure tiers. Figure 1. Foglight dashboard How to install and configure MDA tables is beyond the scope of this paper; for excellent resources on MDA tables, please visit Rob Verschoor’s site at www.sypron.nl/mda or consult your ASE documentation. 1 2
  • 3. Figure 2. Configuring Sybase data collection Foglight’s Sybase_MDA cartridge A few of the DBA’s tasks are to see how ASE is using resources (such as CPU, memory and disk), determine whether any users are blocked or deadlocked, and identify any resource “hogs.” With Foglight’s Sybase_MDA cartridge, DBAs can enable periodic capture and storage of performance data, and define criteria to identify resource hogs (including individual SQL statements, users or programs). Specify what performance data to collect Once the Sybase cartridge has been deployed to your target ASE server, a simple configuration change is all that is needed to start capturing performance data. First you need to modify the agent properties for the Sybase cartridge. The Data Management section allows you to specify what performance data to 3 collect and how frequently (see Figure 2). The Performance option needs to be checked in order to collect the top resource-consuming SQL statements. Note that the default sample interval is 300 seconds, or five minutes. Specify collection criteria for SQL statements Next you need to specify collection criteria for SQL statements using the Data Retrieval section of the Properties page. For top applications, SQL and users, specify the number of rows that Foglight will retrieve at each interval, in addition to the minimum resource consumption limit that has to occur. In Figure 3, the DBA has specified that the top 10 SQL statements be retrieved at each sample interval, and these must be statements that have at least 10 seconds of CPU time per execution. Once the Sybase cartridge has been deployed to your target ASE server, a simple configuration change is all that is needed to start capturing performance data.
  • 4. Drilling down into a specific ASE Server gives the DBA an end-to-end view of its processes and data flows. Figure 3. Specifying collection criteria for SQL statements Reviewing the top SQL statements Once some time has passed to allow for data collection, the DBA can review top SQL using the Sybase dashboards (see Figure 4), as well as drill down to a specific ASE server from the Sybase Global View dashboard. Figure 4. Viewing the top SQL statements 4 Drill down into a particular ASE Server Drilling down into a specific ASE Server gives the DBA an end-to-end view of its processes and data flows, as illustrated in Figure 5.
  • 5. Figure 5. Drilling down into a specific ASE Server Viewing the top SQL for a given time period To review the top SQL that was collected for a time range, go to the Top Activity tab. The page for TopSQL defaults to the past four hours, but can easily be changed. Since the data is retrieved from the MDA tables and stored locally to the Foglight server, it is preserved for later review. On the Top SQL page shown in Figure 6, a SQL was executed with high logical reads and CPU time. The DBA can take this data back to the developers so they can investigate the code and tune the SQL to prevent the problem in the future. Figure 6. Viewing the top SQL statements for the ASE Server 5 To review the top SQL that was collected for a time range, go to the Top Activity tab.
  • 6. Investigating SQL within the application code — the developer Dell SQL Optimizer for Sybase ASE provides an easy way to extract and analyze embedded SQL, so developers can determine which statements really need tuning without having to run the application. Often, developers write SQL code to be functionally correct but give little regard to performance, believing that performance is the DBA’s job. Similarly, code maintenance and SQL tuning is often regarded as drudge work — who wants to tune legacy SQL code when they could be doing cool Java or .Net stuff? Tuning code can be quite difficult, because the SQL could be embedded in stored procedures or views in the ASE server, in text files on the LAN, or compiled into executable code. However, a SQL statement is correct only if it returns the proper result and minimizes impact on other system resources. Performance is not only the DBA’s responsibility; it is also the developer’s responsibility. Dell™ SQL Optimizer for Sybase® ASE The SQL Scanner module of Dell™ SQL Optimizer for Sybase® ASE provides an easy way to extract and analyze embedded SQL, so developers can determine which statements really need tuning without having to run the application. To start, simply add objects containing SQL to the SQL Scanner. Figure 7 shows the stored procedures from an ASE server; text and binary files from a Windows file system could also be added. Then with one click, the SQL Scanner will extract the SQL and analyze the query plan to pinpoint the problematic statements. When the analysis is complete, the developer can review the extracted SELECT statement from the stored procedure, the abstract plan, the query plan (showplan), the XML query plan (in ASE 15), the trace on data and the analysis of the plan. Any temp tables in the stored procedure are also extracted to facilitate proper analysis and tuning. If the developer decides to tune this statement, just one click will bring it into the Syntactical SQL Optimizer for a comprehensive re-write and benchmark test to optimize performance. Figure 7. Analysis of the query plan for the stored procedures from an ASE server 6
  • 7. Figure 8. Identifying problem users and blocked processes with Spotlight Understanding what the application is doing — the QA analyst Before an application goes into production, the quality assurance team is responsible for making sure it works as expected. The team performs functional, unit and load tests to evaluate the application. Unfortunately, the database is often seen as a black box, and performance testing is frequently rudimentary, limited to system commands such as top, perfmon, or sp_who (which shows the ASE users). Getting an overview of ASE server health with Spotlight on Sybase QA analysts can easily visualize the health of the ASE server at a glance, in real time, during the load test using Spotlight™ on Sybase® ASE. If any problems arise, an icon changes color to draw attention to the problem. With the aid of context- 7 sensitive help, the analyst can drill down to the root cause of the problem. For example, the Spotlight screen in Figure 8 shows three problem users and one blocked process. Problem users are identified based on thresholds you specify; in this case it is due to excessive time blocked and high CPU usage. Drilling down to the SQL generated by a specific session The analyst can then drill down to current process activity and sort the list of sessions to identify the session consuming the most resources. The session information provides many metrics, including a history of the SQL statements that executed. The analyst can click a statement to see the full text, which can then be copied and sent back to a triage team for resolution. QA analysts can easily visualize the health of the ASE server at a glance, in real time, during the load test using Spotlight on Sybase.
  • 8. Spotlight makes it easy to identify the most resourceintensive SQL. Figure 9. Drilling down to problematic SQL in a particular session with Spotlight Finding the most resource-intensive SQL server-wide In addition to evaluating the SQL generated by a specific session, the QA analyst can view a current “trace” of SQL statements server-wide in the SQL Activity tab (see Figure 10). This list can also be sorted to identify the most resource-intensive SQL. Figure 10. Finding the most resource-intensive SQL server-wide with Spotlight 8
  • 9. Figure 11. Finding the most resource-intensive SQL with SQL Inspector Ad-hoc identification of SQL — the performance engineer Performance engineers have a difficult job. In theory, everyone should love them, because their job is to optimize system performance. But in reality, they need to tread lightly between the developers and DBAs: no one likes to be told that their database or code isn’t performing up to par. The SQL Inspector module in SQL Optimizer for Sybase enables the performance engineer to take a quick 9 snapshot of SQL activity, either from the whole server or from specific spids or logins. The SQL Inspector monitors SQL statements and collects SQL performance statistics from the Adaptive Server monitoring tables or the QP Metrics. Then it graphically displays and compares SQL activity statistics to diagnose performance bottlenecks at the SQL level (see Figure 11). The performance engineer can then identify the most resource-intensive SQL statements for corrective action. The performance engineer can identify the most resource-intensive SQL statements for corrective action using the SQL Inspector module in SQL Optimizer for Sybase.
  • 10. After you’ve identified the problematic SQL You may be wondering what to do with all of the problematic SQL you’ve identified. Using SQL Optimizer for Sybase, you have four options: • • • • Many SQL statements can return the same result set, but only a few of them are likely to be efficient. Tune the SQL. Test for concurrent user scalability. Recommend indexes. Perform “what if” analysis. Option 1: Tune the SQL. SQL Optimizer can automatically perform a syntax rewrite of problematic SQL statements. Many SQL statements can return the same result set, but only a few of them are likely to be efficient. To ensure optimal performance, a SQL statement needs to be transformed in multiple ways to produce every equivalent SQL statement, and then those alternatives need to be evaluated to find the most efficient SQL. SQL Optimizer analyzes source SQL statements and then applies a unique artificial intelligence engine to reproduce a list of semantically equivalent and syntactically correct SQL statements. Then it compares the performance of each alternative statement, as shown in Figure 12, so you can perform a test run to see if the alternative statement offers performance improvement in your environment. Option 2: Test for concurrent user scalability. The results of the test run from the SQL Optimizer are for a single user running each statement. However, multiple concurrent users typically run a given application. Performing a scalability test with Benchmark Factory™ for Databases will enable you to determine which statement from the SQL Optimizer performs best at different user loads (see Figure 13). Option 3: Recommend indexes. If you cannot modify problematic source code, another alternative is to modify the indexes on your tables. This approach is useful when your best efforts to optimize a SQL statement are insufficient — for example, when the original problematic SQL is actually faster than the alternatives, or the alternatives improve performance only marginally. Figure 12. Generating and comparing alternative SQL statements with SQL Optimizer 10
  • 11. Figure 13. Testing SQL statements at different load with Benchmark Factory for Databases SQL Optimizer for Sybase’s Index Advisor automatically generates a set of index recommendations for a problematic SQL statement by analyzing the structure of a SQL statement (including the search arguments and table join conditions) and identifying all the tables and indexes it uses (see Figure 14). You can also add your own candidate indexes and group candidates into compound indexes, and then evaluate the effect the new indexes could have on database performance. Option 4: Perform “what-if” analysis It is helpful to know ahead of time what will happen to SQL performance if you make a change, such as adding an index, migrating to ASE 15 or making a sp_ configure change. The analysis modules in SQL Optimizer for Sybase help answer those questions. From a common SQL repository, you can analyze query plans using before and after scenarios and show the impact Figure 14. Generating index recommendations for a problematic SQL statement with Index Advisor 11 It is helpful to know ahead of time what will happen to SQL performance if you make a change, such as adding an index, migrating to ASE 15 or making a sp_configure change.
  • 12. of the change. You can get an overall application view, and then drill down to individual SQLs for detailed analysis. Figure 15 shows an analysis provided by the Index Impact Analyzer. Summary DBAs, developers, QA analysts and performance engineers all need to identify problematic SQL statements, and Dell Software offers tools to fit each of their differing needs: You can get more information on these solutions and download trial versions at software.dell.com • Foglight provides unattended monitoring of applications, alerting DBAs to issues as they arise. In particular, Foglight can be used in the ASE environment to capture and identify poorly performing SQL statements. Since DBAs are often fighting multiple fires at once, this automated capture tends to suit their needs best. • The SQL Scanner of SQL Optimizer for Sybase enables developers to quickly extract SQL from application code and pinpoint the SQL most in need of tuning. It simplifies the tedious task of wading through stored procedures and manually pulling out SQL statements. • Spotlight on Sybase ASE provides visibility into the current activity of Sybase ASE so the QA analyst can easily determine what a load test is doing to the server. The analyst can also drill down to identify the users and SQL statements consuming the most resources. • The SQL Inspector of SQL Optimizer for Sybase enables performance engineers to take a snapshot of database activity. By analyzing the most resource-intensive statements, they can identify candidates for performance tuning. To explore the capabilities of each tool and decide which are best for your environment, please visit the Dell Software website using the links above. You can get more information on these solutions and download trial versions to find the right combination to suit your needs. About the author Darren Mallette has been with Dell Software for five years. He currently serves as a Solutions Architect, helping customers get the most out of their database and virtualization platforms. In the past 15 years, he has worked with Oracle, SQL Server, Sybase, DB2 and VMware technologies with a focus on performance monitoring and tuning. When not staring at the 1> prompt, he enjoys spending time with his family and competing in strongman competitions. Figure 15. “What if” analysis from the Index Impact Analyzer 12
  • 13. For More Information © 2013 Dell, Inc. ALL RIGHTS RESERVED. This document contains proprietary information protected by copyright. No part of this document may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying and recording for any purpose without the written permission of Dell, Inc. (“Dell”). Dell, Dell Software, the Dell Software logo and products—as identified in this document—are registered trademarks of Dell, Inc. in the U.S.A. and/or other countries. All other trademarks and registered trademarks are property of their respective owners. The information in this document is provided in connection with Dell products. No license, express or implied, by estoppel or otherwise, to any intellectual property right is granted by this document or in connection with the sale of Dell products. EXCEPT AS SET FORTH IN DELL’S TERMS AND CONDITIONS AS SPECIFIED IN THE LICENSE AGREEMENT FOR THIS PRODUCT, About Dell Software Dell Software helps customers unlock greater potential through the power of technology—delivering scalable, affordable and simple-to-use solutions that simplify IT and mitigate risk. The Dell Software portfolio addresses five key areas of customer needs: data center and cloud management, information management, mobile workforce management, security and data protection. This software, when combined with Dell hardware and services, drives unmatched efficiency and productivity to accelerate business results. www.dellsoftware.com. If you have any questions regarding your potential use of this material, contact: Dell Software 5 Polaris Way Aliso Viejo, CA 92656 www.dellsoftware.com Refer to our Web site for regional and international office information. 13 TechBrief-ProblemSQL-SybaseASE-US-KS-23573 DELL ASSUMES NO LIABILITY WHATSOEVER AND DISCLAIMS ANY EXPRESS, IMPLIED OR STATUTORY WARRANTY RELATING TO ITS PRODUCTS INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. IN NO EVENT SHALL DELL BE LIABLE FOR ANY DIRECT, INDIRECT, CONSEQUENTIAL, PUNITIVE, SPECIAL OR INCIDENTAL DAMAGES (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF PROFITS, BUSINESS INTERRUPTION OR LOSS OF INFORMATION) ARISING OUT OF THE USE OR INABILITY TO USE THIS DOCUMENT, EVEN IF DELL HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. Dell makes no representations or warranties with respect to the accuracy or completeness of the contents of this document and reserves the right to make changes to specifications and product descriptions at any time without notice. Dell does not make any commitment to update the information contained in this document.