Thursday, 23 March 2017

SSAS optimsiation


*
Tables
Many to many - Check tables are written optimally (no duplicates and < 1mill rows)
 
1
DSV
Remove any unnecessary tables
 
2
Roles
Phoenix role doesn't have permissions?
 
3
Dimension Usage
Manufacturer to Product
*Make sure all materialized
4
Dimension
Account - Attribute relationship
*Rigid, etc.
5
Dimension
Misc. Account - Attribute relationship
 
6
Dimension
Product - Attribute relationship
 
7
Dimension
Wholesaler - User Hierarchy?
 
8
Dimension
Attribute hierarchy enabled for all attributes
E.g. Not needed if in User Hierarchy
9
Dimension
Estimate row count for all attributes
 
10
Calculated script
Review all iff null and use is empty
 
11
Calculated script
Review all = make sure use object reference
 
12
Partitions
Create all partitions (5-20million rows)
 
13
Partitions
Specify slices for each partition
 
14
Aggregation
Initially set most common attributes used in group by
 
15
Aggregation
Switch on usage based optimisation and run all queries for reports - rebuild aggregations
 
16
SSIS Cache
Build cache warmer SSAS job to run most common top level queries after cube has been refreshed
 
17
Reports
Shell use security to get wholesaler role and territory - sub reports remove all parameters definitions, pass through from parent report and then use separate defined data source. Finally cache all sub reports run so will be instant
Can set up schedule for cache and clearing down

No comments:

Post a Comment