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.
- Keep in mind that some processes take a long time to run and take processes. Better run when server is under light workload.
- 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.
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
Delete un-used & obsolete infoproviders & info-objects
Info-providers and info-objects that are no longer useful should be deleted.
In this case, it is necessary to request approval from the object owner :
- Reporting CC Manager if technical object
- Reporting coordinator of the relevant process for other objects
One way of identifying the obsolete objects is to check the date of last loading.
Database re-organisations
In many cases, removing data from a table will not decrease the table size, nor the tablespace size, nor the total database size.
It's necessary to request a re-organisation from IBM in order to really reflect the size change.
Several types of re-organisations can be requested :
- Table re-org : The table will be re-organized to take less space. This won't affect the tablespace of database size. It will simply review the size taken by the table and it's index to free some space.
- Note that even if the table is empty, there is a minimum size defined for each table in the system. A table with 0 lines will therefore have the minimum size after re-org.
- Tablespace re-org : The full tablespace is re-organised. In this case it will move out and copy back all tables and reduce the size of the tablespace, It will effectively decrease the size of the database accordingly (reducing the "free" space).
- Full database re-org : This does a full re-org on all the tablespaces.














































