how to know if there are expensive sql statements
running?what will you do then to improve the response time?
Answer Posted / yash
• Detection of Expensive SQL Statements Using the
Transaction Profile and the Statistical Records:
o Using the ST03N transaction profile, you can
identify transactions that cause a significant part of
total response time, as well as transactions with high
database request times. Use of the Transaction Profile:
 Sort the Average DB time (ms) column in descending
order. Transactions with high average DB request times
might be caused by expensive SQL statements.
 Sort the Total Database Time column in ascending
order. Then Total this column. Transactions causing more
than 5% of this total database time are worth a closer look
with respect to tuning measures. .
 Sort the Total Response Time column in ascending
order. Then Total this column. Transactions causing more
than 5% of this total response time are worth a closer look
with respect to tuning measures.
o Use Statistical Records (STAD):
 On the transaction STAD entry screen, enter the
following restrictions:
• Choose a time frame (remember that statistical
records are only available for a certain time).
• Select Task Type D.
• Enter a relevant value for DB request time, for
example, 1000 ms.
 Analyze all available data for long-running dialog
steps by double-clicking individual entries in the result
list.
o Using the Database Monitor:
 On the entry screen of the database monitor you
should check the following values: .
• The quality of the database data buffer should be
higher than 95%. During .warming up. of the SAP system the
quality may be lower, but should still be above 90% (except
during a very early phase).
• Check the number of user calls compared to
recursive calls. There should be less recursive calls than
user calls.
• Check the Reads/User Call. If this value exceeds 30
(blocks read per user call) then this is a strong indicator
for expensive SQL statements.
 Use the Database Process Monitor:
• Enter transaction ST04 and then choose Detailed
Analysis Menu → Oracle Session. .
• Identify the long-running task by finding the
corresponding workprocess ID. Compare the first value in
the Client PID column with the process ID of a work process
in SM50/SM66. Alternately, you can use the link to the work
process information by choosing Process after having marked
one line in the Oracle process overview. .
• Check the current action on the database by
clicking the statement in the SQL statement column. In the
resulting popup window, you will see the following options:
o 1. Dictionary information on the accessed object
o 2. The display of the execution plan for the SQL
statement (also called Explain)
o 3. A reference to the call point in the ABAP
program (if possible) .
• Analyze the Explain
Is This Answer Correct ? | 8 Yes | 0 No |
Post New Answer View All Answers
How will go about doing a client copy ?
If a user complaints that he could not execute some of the transaction codes then what will you do?
How to delet a table in sap. How to move a table from one location to another.
What is the different architecture between SAP 4.7EE & ECC5.0
Explain how you can restrict multiple logins of user in sap? What are the thing you have to take care of while writing the id’s?
What is an interface in SAP?
How to apply job on OS Level?
Where XML file is generated in solution manager?
What is business kpis ?
What is your UNIX experience and the types of UNIX systems you have worked on.
If any errors coming during transport where it will be recorded and how will you rectify?transport log and active log
How to set predecessor relationship between two transport requests?
How to perform the transport?
What is your organization’s security philosophy? What level of security does your data require? How much risk are you willing to assume in each application area?
What is R/3? and what is basis version?