Best practice to add a dimension to existing cubes (Board 12)
Fabiano Martino
Customer
Hi,
I need to add a new dimension to some existing cubes.
These cubes have a dimension related to delivery customers and the new dimension is relative to invoiced customers.
Is there a best practice for this scenario?
I followed this steps:
- Entities creation (Invoiced customer, city, category, ...).
- Relationship creation for the new entities.
- Data reader for the relationship (SQL Server query).
- Changes to the cubes, adding the invoiced customer as a sparse dimension (the cubes were cleared by this operation).
- Data reader for the cubes (SQL Server query). I removed all the dimensions and the cubes in the data reader and the added back the cubes. The dimensions were automatically added.
- Running of the entire loading procedure (populating the new dimension, the updated cubes and other dimensions and cubes not related to the new dimension).
Is there a different/better procedure you suggest for the same result?
Thanks
Fabiano
------------------------------
Fabiano Martino
Senior Developer
A.F.I.S. G. CLERICI SPA
Italy
------------------------------
I need to add a new dimension to some existing cubes.
These cubes have a dimension related to delivery customers and the new dimension is relative to invoiced customers.
Is there a best practice for this scenario?
I followed this steps:
- Entities creation (Invoiced customer, city, category, ...).
- Relationship creation for the new entities.
- Data reader for the relationship (SQL Server query).
- Changes to the cubes, adding the invoiced customer as a sparse dimension (the cubes were cleared by this operation).
- Data reader for the cubes (SQL Server query). I removed all the dimensions and the cubes in the data reader and the added back the cubes. The dimensions were automatically added.
- Running of the entire loading procedure (populating the new dimension, the updated cubes and other dimensions and cubes not related to the new dimension).
Is there a different/better procedure you suggest for the same result?
Thanks
Fabiano
------------------------------
Fabiano Martino
Senior Developer
A.F.I.S. G. CLERICI SPA
Italy
------------------------------
Tagged:
0
Accepted Answer
-
Hi @Fabiano Martino,
the steps needed to create the new entities with their relationships and populate them via DataReader will always have to be the way you described them.
Any changes to a cube's structure will always clear the cube because the system would not be able to connect existing transactions to new dimensions, automatically.
The cube's DataReader might react dubious if you delete all mappings and add the new ones - this might work or not; in your case, it did; good. I usually create a new DataReader for that purpose and change the nightly load procedure accordingly.
When you've built up the new relationships and populated them you wouldn't need to load the master again when populating the cube, just make sure the master data will be loaded prior to the transactions in your nightly load.
That said, no: there's no better way of performing that other than what you did.
Kind regards
Helmut
------------------------------
Helmut Heimann
Senior Consultant
Board Community
Germany
------------------------------
-------------------------------------------2
Categories
- All Categories
- 2K Forums
- 1.8K Platform
- 159 Academy
- 325 Resources
- 1 Board Knowledge Base
- 50 Best Practices
- 49 How-To Guides
- 19 Board Advocacy Program
- 192 Blog
- 4 Groups Hub
- 4 About Groups
- New Community Members
- DACH
- Japan
- 4 Community Captains
- 1 About Community Captains
- 2 Meet the Community Captains
- 1 Topics & Thought Starters
- Learn from the Board Captains
- Release Notes
- Academy
- 2 Board Academy
- 8 ILT/VILT Course Catalogue
- 13 e-Learning Course Catalogue
- 4 Academy Forum
- 1.2K Idea Exchange
- 337 Partner Hub
- 94 Support
- 14 FAQ's
- Customer Support Portal
- 54 Support Articles
- BEAP