in

ABAP Performance analysis Tools, SCI Code Inspector ST05 Performance Trace SE30 ABAP Runtime Analysis

Lets know what ABAP Performance analysis Tools like SCI – Code Inspector ST05 – Performance Trace SE30 ABAP Runtime Analysis are there in SAP ABAP to help in performance tuning.

What Performance analysis tools and transactions in SAP ABAP that can be used to help with performance tuning?

ST05 is the performance trace. It contain the SQL Trace plus RFC, enqueue and buffer trace. Mainly the SQL trace is is used to measure the performance of the select statements of the program.

SE30 is the Runtime Analysis transaction and can be used to measure the application performance.

SAT transaction is the replacement of the pretty outdated SE30. Provides same functionality as SE30 plus some additional features.

ST12 transaction (part of ST-A/PI software component) is a combination of ST05 and SAT. Very powerful performance analysis tool used primarily by SAP Support.

One of the best tools for static performance analyzing is Code Inspector (SCI). There are many options for finding common mistakes and possible performance bottlenecks.

SAP HANA Partitioning, Data Replication, Memory algorithms, Data Layout in the Main Memory

ABAP Performance analysis Tools: Code Inspector SCI

Static analysis of the quality of the code. Scans your program code and reports on potential problems particularly in the area of performance and security.

Benefits: Analysis of SQL WHERE clause of SELECT, UPDATE and DELETE statements. Identifies select statements that do not handle sy-subrc return codes Use of statements that infer ominous database access Identifies statements that bypass buffering Drill through support from results screen to program source statement. Etc.

Disadvantages: Static checks cannot identify the relevancy of a piece of code Cannot determine the frequency of execution of a statement of code.

Standard Checks Performed

Syntax checks and program generation

  • Normal ABAP syntax check
  • Extended Program Check
  • Program Generation

Security checks

  • Use of statements deemed critical
  • Use of statements the infers ominous database access
  • Selected statements that do not handle system return code

Performance checks

  • Select statements that implicitly bypass SAP table buffers
  • Check statements inside of SELETCT…ENDSELECT loops
  • Nested loops over internal tables and nested SELECT statements
  • Analysis of WHERE clause to determine support database indices

Search operations

  • Search for single tokens
  • Search for complete statements

Access directly from the Abap Editor, from SE38 or SE80

ABAP Performance analysis Tools, SCI Code Inspector, ST05 Performance Trace, SE30 ABAP Runtime Analysis
Code Inspector SCI

ABAP Performance analysis Tools: Performance Trace ST05

  • Used to analyze and fine-tune program’s database access
  • Dynamic analysis
  • Must be logged into processor where job is running that is subject to the trace
  • Should pre-load the application before trace is started
  • Should strive to use this trace in QA unless production problem cannot be re-created.

Types of traces available

  • SQL Trace
  • Enqueue Trace
  • RFC Trace
  • Buffer Trace

Execute ST05 tcode

Performance Trace ST05

ABAP Performance analysis Tools, SCI Code Inspector, ST05 Performance Trace, SE30 ABAP Runtime Analysis

ABAP Performance analysis Tools: Runtime Analysis SE30

SE30 is the Runtime Analysis transaction and can be used to measure the application performance.

SAT transaction is the replacement of the pretty outdated SE30. Provides same functionality as SE30 plus some additional features.

Three phases of the ABAP runtime analysis.

  • Setting limits for the data that is measured
  • Measuring the data
  • Analyzing the data.

Execute SE30 for ABAP Runtime Analysis

ABAP Performance analysis Tools, SCI Code Inspector, ST05 Performance Trace, SE30 ABAP Runtime Analysis
Runtime Analysis SE30
SE30 ABAP Runtime Analysis

 

SQL Statement Evaluation Checklist

Is there any SELECT * statements in use?

  • Change them to SELECT COL1,COL2,COL3 specifying columns

Are any CHECK statements embedded in SELECT..ENDSELECTs

  • Incorporate the check statement logic in WHERE clause

Do SELECTs use appropriate DB Index or is table buffered?

  • Change logic, create an index, or buffer table

Is nested SELECTs being used to retrieve data?

  • Convert to DB join, view or SELECT FOR ALL ENTRIES IN ITAB

Are there SELECTs without WHERE clauses, on tables that grow?

  • You need to redesign the solution.

Are SELECTs to master data tables buffered?

  • Store master data in itab and use READ TABLE…BINARY SEARCH to eliminate duplicate access with same key

Is SELECT…APPEND ITAB…ENDSELECT being used?

  • Change processing to read data immediately into ITAB

Is SELECT ORDER BY statements being used?

  • Read data to ITAB and then sort, unless DB Index supports order by.

Is program using calculations and summations that can be done on the database via SUM, AVG, MIN or MAX functions of SELECT?

  • Use the calculations available on the SELECT statement.

Are ITABs processed using READ TABLE itab WITH KEY?

  • Change table accesses to use BINARY SEARCH method.

What do you think?

Written by admin

Leave a Reply

Your email address will not be published. Required fields are marked *

VDM in ABAP CDS view

SAP OO ABAP Class Definition, Objects, Types Of Class, Implementation, OOPs ABAP step by step, Public, private, protected in SAP ABAP, SAP ABAP OOPs sample programs, OO ABAP example programs, How to create class in SAP ABAP, How to create global class in SAP ABAP, How to create class and methods in SAP ABAP, oops abap interview questions, SAP ABAP topic wise interview questions, sap abap interview questions for experienced candidates, SAP ABAP real time interview questions, OO ABAP Interview Questions, SAP ABAP fresher Interview Questions pdf, sap abap oops tutorial pdf, sap abap oops real time examples

SAP OO ABAP Class Definition, Objects, Types Of Class, Implementation