Monday, November 19, 2007

SAP BW FAQ

BW Query Performance

Question:
1. What kind of tools are available to monitor the overall Query Performance?

Answers:
o BW Statistics
o BW Workload Analysis in ST03N (Use Export Mode!)
o Content of Table RSDDSTAT

Question:
2. Do I have to do something to enable such tools?

Answer:
o Yes, you need to turn on the BW Statistics:
RSA1, choose Tools -> BW statistics for InfoCubes
(Choose OLAP and WHM for your relevant Cubes)

Question:
3. What kind of tools are available to analyse a specific query in detail?

Answers:
o Transaction RSRT
o Transaction RSRTRACE

Question:
4. Do I have a overall query performance problem?

Answers:
o Use ST03N -> BW System load values to recognize the problem. Use the
number given in table 'Reporting - InfoCubes:Share of total time (s)'
to check if one of the columns %OLAP, %DB, %Frontend shows a high
number in all InfoCubes.
o You need to run ST03N in expert mode to get these values

Question:
5. What can I do if the database proportion is high for all queries?

Answers:
Check:
o If the database statistic strategy is set up properly for your DB platform
(above all for the BW specific tables)
o If database parameter set up accords with SAP Notes and SAP Services (EarlyWatch)
o If Buffers, I/O, CPU, memory on the database server are exhausted?
o If Cube compression is used regularly
o If Database partitioning is used (not available on all DB platforms)

Question:
6. What can I do if the OLAP proportion is high for all queries?

Answers:
Check:
o If the CPUs on the application server are exhausted
o If the SAP R/3 memory set up is done properly (use TX ST02 to find
bottlenecks)
o If the read mode of the queries is unfavourable (RSRREPDIR, RSDDSTAT,
Customizing default)

Question:
7. What can I do if the client proportion is high for all queries?

Answer:
o Check whether most of your clients are connected via a WAN Connection and the amount
of data which is transferred is rather high.

Question:
8. Where can I get specific runtime information for one query?

Answers:
o Again you can use ST03N -> BW System Load
o Depending on the time frame you select, you get historical data or
current data.
o To get to a specific query you need to drill down using the InfoCube
name
o Use Aggregation Query to get more runtime information about a
single query. Use tab All data to get to the details.
(DB, OLAP, and Frontend time, plus Select/ Transferred records,
plus number of cells and formats)

Question:
9. What kind of query performance problems can I recognize using ST03N
values for a specific query?

Answers:
(Use Details to get the runtime segments)
o High Database Runtime
o High OLAP Runtime
o High Frontend Runtime

Question:
10. What can I do if a query has a high database runtime?

Answers:
o Check if an aggregate is suitable (use All data to get values
"selected records to transferred records", a high number here would
be an indicator for query performance improvement using an aggregate)
o Check if database statistics are update to data for the
Cube/Aggregate, use TX RSRV output (use database check for statistics
and indexes)
o Check if the read mode of the query is unfavourable - Recommended (H)

Question:
11. What can I do if a query has a high OLAP runtime?

Answers:
o Check if a high number of Cells transferred to the OLAP (use
"All data" to get value "No. of Cells")
o Use RSRT technical Information to check if any extra OLAP-processing
is necessary (Stock Query, Exception Aggregation, Calc. before
Aggregation, Virtual Char. Key Figures, Attributes in Calculated
Key Figs, Time-dependent Currency Translation)
together with a high number of records transferred.
o Check if a user exit Usage is involved in the OLAP runtime?
o Check if large hierarchies are used and the entry hierarchy level is
as deep as possible. This limits the levels of the
hierarchy that must be processed. Use SE16 on the inclusion
tables and use the List of Value feature on the column successor
and predecessor to see which entry level of the hierarchy is used.
- Check if a proper index on the inclusion table exist

Question:
12. What can I do if a query has a high frontend runtime?

Answers:
o Check if a very high number of cells and formattings are transferred
to the Frontend ( use "All data" to get value "No. of Cells") which
cause high network and frontend (processing) runtime.
o Check if frontend PC are within the recommendation (RAM, CPU Mhz)
o Check if the bandwidth for WAN connection is sufficient

No comments:

Blog Archive