Child pages
  • Confused between performance on Read and Loop Statements??
Skip to end of metadata
Go to start of metadata

Applies to:

SAP BW 3.5 , SAP BW 7.0.

Summary

This wiki helps in exlporing the various table types in order to understand which is the most optimal way to use and where..

Author(s):  Vikram Srivastava

   
Company: Infosys Technologies Ltd.    
Created on:    29-12-2009

Author(s) Bio
Vikram Srivastava is working as Technology Analyst with Infosys Technologies Limited. He has got rich experience on various BW Implementation/Support Projects in both SAP BW 3.5 and SAP BW 7.0.

READ TABLE WITH KEY

|| Table Types || Processing Manner || Time Taken ||

Sorted Table

Complete table in scanned to read the data. If the key is a part of the table key then also full table scan is done , but to find out the first row BINARY SERACH is used.

More the number of records,more is the time taken.

Hashed Table

Complete table in scanned to read the data. If the key contains all the table keys then HASHED PROCESS is used.

More the number of records,more is the time taken.

Standard Table

Complete table in scanned to read the data row by row.

More the number of records,more is the time taken.

READ TABLE WITH TABLE KEY

|| Table Types || Processing Manner || Time Taken ||

Sorted Table

A BINARY scan is used to read the record.

It is proportional to log ( number of entries)

Hashed Table

HASHED process is used to read the record.

It has a constant access time.

Standard Table

Complete table in scanned to read the data row by row.

More the number of records,more is the time taken.

READ TABLE INDEX

|| Table Types || Processing Manner || Time Taken ||

Sorted Table

Complete scan is not required.

Constant Time

Hashed Table

It is not possible.

 

Standard Table

Complete scan is not required.

Constant Time

LOOP AT TABLE WHERE

|| Table Types || Processing Manner || Time Taken ||

Sorted Table

If the WHERE clause contains the first part of the key with a query on = , a binary search is used uo to a entry point.
After that , only those entries are scanned that have relevant values.
Else , complete table scan is required.

Log(number of table entries) + number of hits in first case ,else more the number of records,more is the time taken.

Hashed Table

Complete table in scanned.

More the number of records,more is the time taken.

Standard Table

Complete table in scanned to read the data row by row.

More the number of records,more is the time taken.