‎2007 Oct 24 12:28 PM
hiii
i want atleast 5 difference between RUNTIME ANALYSIS AND SQLTRACE
REGARDS
BASKAR
‎2007 Oct 24 12:32 PM
SE30 - Runtime Analysis Tool
This runtime analysis tools allows the ABAP/4 programmer to trace the tables used by the SAP dialog/reports programs. In the Analyze button, you can see four more buttons like:-
Hit List
Displays the execution time of each statement in the program.
Tables
Displays the tables accessed during run time.
Group hit list
Displays the execution time of all the statements and grouping them based on the type of command. e.g. performs, SQL and internal tables used.
Go to transaction SE30
Type in the transaction code you want to analyze
4.6x
In the Restriction section: select the TMP -> Temporary variant
Click the Change button
Click the Duratn/type
Select None for Aggregation
Save the variant and execute again
After finishing the process, click back to SE30
Use F3 to move back to the initial screen of SE30
Click the Analyze Button
Click Goto -> Object-centered hit list -> Database tables
For example, if you want to display the data for MSEG - Material Document table
Transaction SE16
Type in MSEG for Table name and click execute.
Data Browser will display the default selection for you to display data. If you did not change the default and click execute the data browser will display the first 500 records.
Click Settings to change the List formats, User parameters and Fields for selection.
In 4.6x, you can use SE16N.
Transaction SE11 or SE12 (4.6x)
Type in MSEG for Object name and click the Display button.
Click Utilities -> Table contents for the default selection screen. If you did not change the default and click execute, the Dictionary will display the first 500 record.
Click Settings to change the List formats, User parameters and Fields for selection.
Transaction SE17
Type in the Table Name, put in the Selection value, put a 'X'
It's checks program execution time in microseconds. When you go to T.Code SE30.if you give desired program name in performance file. YOu can find some Tips&Tricks by SAP to improve your program performance.
This transaction gives all the analysis of an ABAP program with respect to the database and the non-database processing.
You can use this for :BDCs, SCRIPTS(Print Programs)
if you really have no idea, why a report is slow, then you have to start with SE30 (runtime analysis).
There are three bargraphs: ABAP / database / system.
System should be more or less nothing.
If ABAP is bigger than database: have a look at slow abap-statements (normally operations with internal tables: read, delete, loop where,...); classic reason: to much reads without binary search / sorted table / hashed table use.
If database is bigger than ABAP: have a look at your SQL statements. If you can see already forgotten key fields, fine - otherwise SQL trace will bring help in analyzing.
A SQL trace itself says nothing about overall performance (which is done by runtime analysis), only about database part. But 'normally' programmers have their ABAP-part in control and struggle only with slow selects: that's the reason, why often SQL trace is used immediately.
From the SQL trace you can find,
1. are there recurrsive database calls
2. What index a particular selecte statement is using
3. What is the cost per database read
4. Which database read is taking more time, etc
The Runtime Analysis tool(SE30) measures ABAP/4 statements that are potentially expensive in terms of CPU time. The most significant of these are:
Statement used for database access like select.
Statement used for modularization such as module, perform, call function.
Internal table statements like append, collect.
The SQL trace is a tool(ST05), which allows displaying and analyzing the contents for the database calls, which are made by the reports and transactions written in ABAP/4. It monitors programs and transactions on the database level. With the help of this facility for every open SQL instructions, you can display, about which SQL Embedded (DECLARE, OPEN, FETCH) Statement have been executed, besides analyzing the system performance.
SQL trace is a performance analysis tool that shows how open SQL statements are converted into native SQL statements. It basically helps you to identify whether your OPEN SQL statements written in your program are accessing the database in an efficient performance intensive way or not.
The Runtime analysis tool allows you to examine the performance of any ABAP programs, such as reports, subroutines, function modules or classes, that you create in the ABAP Workbench. It saves its results in performance data files, which you can display as lists. You can use these results to identify runtime-intensive statements, to combine table accesses, and show the hierarchy of program calls.
From the results of the runtime analysis, you can identify:
1. Excessive or unnecessary use of modularization units
2. CPU-intensive program functions
3. User-specific functions that could be replaced with ABAP statements
4. Inefficient or redundant database access.
SE30 simply gives you an overview of the time spent on the application processing against the time spent selecting from the database. ST05 give an overview of exactly how the program is hitting against the database and shows you the indiviual SQL statements used with which index was used.
RUNTIME ANALYSIS
SQL TRACE