cancel
Showing results for 
Search instead for 
Did you mean: 

Material attributes in separate dimension?

Former Member
0 Kudos

Hi BW experts,

As a new member I have been looking for a similar topic but unfortunately I can't find anything on it so I was hoping one of you could help me out.

I want to redesign our stock/movement cube due to performance issues. One step is to have the 0MAT_PLANT as a separate (line-item) dimension as opposed to a charateristic of 0MATERIAL. I assume this will help a great deal since 0MAT_PLANT has over 8.5 M entries which does not really help to speed up any queries. (fact table has about 40M records)

Another thing is that I would like to create a separate dimension with 0MAT_PLANT navigational attributes like service level, ABC indicator etc. These fields are now in the material dimension and I reckon these nav attr blow up the dimension massively since one material has multiple service levels and ABC indicators. Can I just drag in these field into a new dimension, say Material Attributes and still have them in there as master data?!

In other words, can I create a dimension with only 0MAT_PLANT navigational attributes and what are the consequences of this?

Thanks heaps!

Cheers,

Niels

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

As far as the navigational attr - they are not actually in the dim tables if they are NA so they don't increase the size of the dim table, although they do increase the complexity of the queries by adding more tables and joins.

Have you reviewed SQL Explain Plans for the queries involved? As an interim aid, another option to look at as far as Mat Plant, would be to add an index for Mat Plant on the Material dimension able, and possibly on some of the NAs for some some of the Msr Data tables.

To actually physically put the NAs into the cube, you must be in Expert mode. The main implication is that the atribute values are now in the cube rather than just a reference. If maint is done to change a Mat Plant attribute in the mstr data, that value is NOT changed in the cube. Th ecube has the attibute's value from the time the data was loaded. This may or may not be OK, depending on what you want to see.

Former Member
0 Kudos

Thanks Pizzaman.

I do not think it will be a good idea to physically put the master data in the cube in my case so I have to keep it as master data.

Can you explain to me what happens when I take the following steps:

I take out the 0MAT_PLANT characteristic (which has 8.5M records) and create a separate (line item) dimension for it and I leave the NA for 0MAT_PLANT (like service level and ABC indicator) in the Material dimension.

Would this have any impact on the number of records to be read when I run a query for plant, material and ABC indicator?

Doesn't the query still have to read the 8.5M records which are now in the 0MAT_PLANT dimension instead of the 0MATERIAL dimension?

So does creating a separate 0MAT_PLANT dimension have any impact on query performance?

I do understand you point about the indexes and that might work.

Hope you can help me with this

Thanks.

Cheers

Answers (1)

Answers (1)

Former Member
0 Kudos

WHat are looking - improving data loading performance or improving reporting time...

There are lots of docs avail on SDn/net..plz do dearch for them and see Wiki...

For loading, conisder abt design modelling - go for smaller dimensions - chk with report SAP_INFOCUBE_DESIGN(s..?)"...this will give you ratio of data in different dimensions- which dim you need to change..start from there....

Hope it helps

Thanks for any points..