Início > Cube Processing, Performance > Performance – Case Study

Performance – Case Study

Link:http://www.msbiconcepts.com/

We have discussed about incremental cube processing in earlier post. I am placing same flow diagram again because this flow diagram will be referenced in my current post. For one of my project, we have reduced processing time drastically by just understanding dependencies among SSAS objects and grouping them properly for parallel processing.
Fig.1 Flow diagram for cube processing
Incremental processing can be done in three steps mentioned in above flow diagram. Most of the SSAS developer tries to implement same approach by putting SSAS objects in serial order which increases cubes processing time. We can reduce processing time drastically by understanding dependencies among SSAS objects and divide them into different smaller group which can be run in parallel.
Let’s understand the scenario. Initially cube processing was taking approximately 12 hours for finishing the job in serial manner.
Fig.2 SSAS Objects in Serial Manner
We know that cube’s partitions can be processed only after dimension processing but we can process dimensions simultaneously as they are not dependent on each other. Same way, cubes are independent to each other. We can create two groups, one for dimensions processing and another for cubes processing. By doing this manner, processing time will reduce to approximately 6 hours(50% of total cubes processing).

 

Fig3. SSAS Objects in Parallel Manner

Now each cube will be available with new data after 6 hours. Now if you check fig.3 closely,  you will find customer dimension is exceptionally taking higher processing time. Customer dimension has more than 100M rows so processing of customer dimension takes around 3 hours but this dimension is used only in one of the cube(cube1) then you can reduce cube processing time for cube2 and cube 21. You will need to regroup SSAS objects. Here is flowchart after re- arrangement:

Fig4. SSAS Objects in Parallel Manner(Special scenario)

However cube 1 will be available after 6 hours but cube 2 and cube 21 will be available early in approximately 3 hours.

Cube 21 up time(processing time) has reduced to 25% and cube 2 up time (processing time) reduced to 33% which is significant improvement. If there are 2-3 dimension similar to Dim Customer then running them parallel will improve time for cube 1 also.

This dependency mapping exercise help me a lot in reducing overall processing time. There are methods to reduce processing time for SSAS objects which will be taken separately in my future posts. Please share your views/suggestions by putting comment or sending email

  1. Ainda sem comentários.
  1. No trackbacks yet.

Deixe uma Resposta

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão / Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão / Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão / Alterar )

Google+ photo

Está a comentar usando a sua conta Google+ Terminar Sessão / Alterar )

Connecting to %s

%d bloggers like this: