Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Diff b/w Run time Analyizer(se30),Sql Trace (st05) and Performance Analyzie

Former Member
0 Kudos

Can any one tell me the Diff b/w Run time Analyizer(se30),Sql Trace (st05) and Performance Analyzie(al21) ?

7 REPLIES 7

former_member186746
Active Contributor
0 Kudos

Why do you want to know?

Just execute the transactions. The differences are quite obvious (and if you want to know more info on a transactio got to help-->help with application

regards, Rob

Former Member
0 Kudos

Hi Ganesh,

Have a look at this link.

http://sapbrainsonline.com/TOOLS/SQLTRACE/SQL_TRACE.html

Reward if helpful.

Regards,

Chitra

Former Member
0 Kudos

Hi,

SE30 - Is used for run time analysis..You can analyze the run time for the entire program..

ST05 - You can use ST05 to analyze the SQL...You can check if the SQL is using proper index..and check the cost estimates for the SQL...

Thanks

Naren

former_member1345686
Active Participant
0 Kudos

Hi Ganesh,

In SE30, you are expected to run the transaction or report to be measured from within this transaction ( there is an option whether you want to call a tcode or run a report ).

After the trx or report is finished, just click back and the measurement time will be displayed. Click the Hit List to show detailed runtime component of the program ( including query time, procedure time etc ). You can base your tuning target on the runtime part with very high gross percentage .

In ST05, you call it separately from the tcode or the report .

to get specific, put a breakpoint in your program , and before press F8 to continue,

run ST05 in new window and activate the trace .

After measured program is finished, deactivate the ST05 trace, and then display the trace . You can see the query related information here .

Rgds,

Tuwuh Sih Winedya

former_member194613
Active Contributor
0 Kudos

the SE30 measures the ABAP stack, i.e. what is programmed in ABAP also the selects.

the ST05 measures SQL, Enqueues, RFCs and Buffers. But you are mainly interested in tmhe SQL statements, and there you get much more information which is not available in the SQ30, you see number of records and the explain tells you how the statement was processed by the DB, also index etc.

see on SQL trace:

/people/siegfried.boes/blog/2007/09/05/the-sql-trace-st05-150-quick-and-easy

a blog on SE30 will follow

Siegfried

Former Member
0 Kudos

Hello Ganesh,

Performance analysis is done through through the tranaction se30. Here once we execute the program we will get the amount of db access , operating system time used by our program. make sure that database time should be as less as possible. If the bar is red then we need to make it as green.

we will analyse the sql statement by using st05. here will get the amount of time taken by our query to get the records from the database.

Regards

Shiva

Former Member
0 Kudos

Hi

these all are doing t he same thing that is checking the program for better performance

Tools for Performance Analysis



Run time analysis transaction SE30
SQL Trace transaction ST05
Extended Program Check (SLIN)
Code Inspector ( SCI)

Run time analysis transaction SE30

:This transaction gives all the analysis of an ABAP program with respect to the database and the non-database processing. 

SQL Trace transaction ST05

: The trace list has many lines that are not related to the SELECT statement in the ABAP program. This is because the execution of any ABAP program requires additional administrative SQL calls. To restrict the list output, use the filter introducing the trace list.

The trace list contains different SQL statements simultaneously related to the one SELECT statement in the ABAP program. This is because the R/3 Database Interface - a sophisticated component of the R/3 Application Server - maps every Open SQL statement to one or a series of physical database calls and brings it to execution. This mapping, crucial to R/3s performance, depends on the particular call and database system. For example, the SELECT-ENDSELECT loop on a particular database table of the ABAP program would be mapped to a sequence PREPARE-OPEN-FETCH of physical calls in an Oracle environment.
The WHERE clause in the trace list's SQL statement is different from the WHERE clause in the ABAP statement. This is because in an R/3 system, a client is a self-contained unit with separate master records and its own set of table data (in commercial, organizational, and technical terms). With ABAP, every Open SQL statement automatically executes within the correct client environment. For this reason, a condition with the actual client code is added to every WHERE clause if a client field is a component of the searched table.
To see a statement's execution plan, just position the cursor on the PREPARE statement and choose Explain SQL. A detailed explanation of the execution plan depends on the database system in use.

Extended Program Check


This can be called in through transaction SE38 or through transaction SLIN. This indicates possible problems that may cause performance problems.

Code Inspector (SCI

)
You can call the Code Inspector from the ABAP Editor (SE38), the Function Builder (SE37), the Class Builder (SE24), or as a separate transaction (SCI).
The Code Inspector indicates possible problems. However, note that, especially with performance issues: There is no rule without exception. If a program passes an inspection, it does not necessarily mean that this program will have no performance problems.

reward if usefull