Hello,
I have a budgeting datamodel with 300 users (facility manager) where we are sometime facing DB crash / data loss. Since it is a budgeting model, we have a lof of dataflows launched by user to perform calculations.
- For an unknown reason sometime a BOARD is not able to complete a simple / basic dataflow, so the dataflow is stuck in the running process screen and all subsequent users are stuck and will no longer be able to launch dataflows
- So we are forced to kill board engine thus we are loosing data / cubes being corrupted
I'm trying to optimize the performance the data model and reduce cube tech lock / user congestion when several users are launching dataflows on the same cube at the same time.
Here an example :
Current situation : In all our users procedure, we have a dataflow where we are feeding one final consolidated P&L cube (approx 50mo) :
- Month : 100 members - Dense
- Facility : 300 members - Sparse
- P&L Item / Accounts : 300 members - Sparse
- Version : 10 members - Sparse
Tomorrow : We are thinking to split / allocates users to specific cube. So instead of having 1 conso cube, I will have 3 working cubes to allocate users + 1 conso cube.
The 3 cubes will have the exact same entities and same sparsity as the original cube
Before :
- 300 users launching dataflows to feed the unique P&L cube
After :
- 100 users launching dataflows to feed cube P&L 1
- 100 users launching dataflows to feed cube P&L 2
- 100 users launching dataflows to feed cube P&L 3
Then we will have an admin procedure (not launched by users but maybe only 5 times per day to feed the original P&L conso cube) :
- Conso P&L cube = P&L cube 1 + P&L cube 2 + P&L cube 3
Question 1
⇒ I would like to know if this architecture will help BOARD to support more user dataflow concurrency or not. If yes, could you explain why ?
⇒ I have the feeling that the data stored in the sparsity file and that it this sparsity file is shared among all cubes that have the same entities & sparse configuration.
⇒ Does it means that spreading users to specific cube will not help BOARD DB to support more dataflow concurrency since those cubes are sharing the same sparsity file ?
Question 2
Entity "Facility" is SPARSE while most of the time 1 user is dedicated to the budget of 1 facility member so in the end , each 300 users will launch a lot of dataflows but each user working only on 1 dedicated facility member.
Do you think it useful that switching that entity to DENSE instead of SPARSE may help dataflow concurrency issue ?
thanks,
julien