Introduction
Why do we need a house cleaning procedure ?
This procedure explains how to delete data from the BW servers which are no longer useful. There are several reasons for doing that :
- It increases the overall performances of the system (Reading in a table with 1M lines if faster than on a table with 10M lines)
- It reduces the cost of the BW server hosting : the price of the hosting depends on the number of go of storage used.
- It makes maintenance and overall usage of BW easier/clearer for everyone as you no longer have to filter out obsolete objects.
- It shortens the time taken to copy servers (ex : prod to quality) and therefore save time for technical team but also reduces the downtime of the servers for those operations.
For reference, the cost of 1 Go (depends on the SLA level & decreases with time - Empty storage about 20% is not invoiced) :
Storage Cost €/Go | 2015 | 2016 |
|---|---|---|
L1 - WBP | 1.78 | 1.68 |
L2 - PQ1 / PQ2 / WBD | 0.99 | 0.94 |
L3 - WB1 / WBQ / SQ1 / SQ2 / DQ1 / DQ2 | 0.5 | 0.47 |
Overall logic of the house cleaning procedure
In this clean 4 main types of data :
1 - Business Data : The data used by the reports and users. It's all the data found in the info-providers and related objects.
2 - Statistics Data : All the logs and historical saved data that results of the usage and maintenance of BW.
3 - Meta Data : Basically the content created by the users. Queries, workbooks, bookmarks...
4 - Database Platform : All data generated by oracle and SAP internally (Usually not much we can do).
When to run this procedure
The full procedure should only be conducted once a year on each server and mainly on the production servers. It's best to do it just before the production server is copied to quality/simulation in order to shorten the copy process.
Each step can be run individually on different schedules.
Authorization
Before launching any of the following clean up actions, it is better if all the BW users accounts that have not been used for a long time (<6 months) be deleted from the system. This is because in some cases, data cannot be deleted if the user still exists.
Business Data
Delete empty, un-used partitions for cubes
For each of the largest partitioned cubes, this can be run to delete useless partitions. This is particularly important after data was deleted from the cubes.
1 - Go to SE38 transaction
2 - Run program SAP_DROP_EMPTY_FPARTITIONS
3 - Input in CUBENAME the name of the cube you want to clean
4 - Execute once with the "Show Option"
5 - Check the result of the analysis
6 - Depending on the result, re-execute the program with "DO_DROP" checked and either "DEL_CNT" or "DEL_DIM"
Deletion of Aggregates
1 - Go to RSA1 transaction
2 - In the left menu, click on Administration --> Monitors --> Aggregates
3 - Analyse each aggregate to see if it is useful
To know if the aggregate can be deleted :
- If the cube is already in BI Acceletor --> Delete the aggregate as BI Accelerator is used first.
- If the valuation of the aggregate is not positive (Ex : |+++ ) then it means it doesn't improve the execution time --> Delete the aggregate
- If the number of "Usage" is very low considering the time since the aggregate creation --> Delete the aggregate since it's not used much
4 - To delete the aggregate, for each cube selected, go to RSA1
5 - Select the cube and right click --> Manage
6 - Go to the Rollup tab and click on "Aggregates"
7 - Select the aggregate, right click and delete
Deletion of PSA
How to check the biggest table of PSA
- Go to Tcode DB02
- Select Space --> Additional Function --> BW Analysis. The overall size of PSA will be display like picture below.
- Double click on PSA line to display detail of each datasource. Sort the size in order to see the biggest table.
- To find the name of datasource. Go to SE16 - RSTSODS and enter BW Object from DB02 into Technical ODS Name. Execute it, the name of datasource will be display
- Then, go to check on the flow in process chain. In order to delete the PSA, it has to be deleted by process chain.
How to Delete PSA
- Add object 'Deletion of Requests from PSA
- Enter parameter for each data source
The time should be:
- Delta loading is 7 days
- Full load is 1 day
Note:- The best practice is modified process chain in development system
- Deletion of PSA should be at the end of process chain.
- Check the big PSA once a year and if missing process is found, modify the process chain


































