Partially Processing a Partitioned Cube
Perhaps everyone else knows this already, but this tip has saved me loads of time so I thought I’d post it anyway…
I’m always breaking cubes, or rather making changes to them that put them in an unprocessed state (usually intentionally, but quite often by accident). If cube processing takes a long time this can be quite annoying: it’s always good to have a cube to browse so you can see the effect of any changes you’ve made. You can of course use a view to limit the number of rows in your fact tables which makes processing much faster, or switch the fact tables used in the dsv, but that’s not always practical – a lot of the time I’m working with cubes where the partitioning has been done using a query to slice the fact table and you don’t want to go changing all that SQL – and you can’t simply process a single partition in the cube. Or so I thought. I found out last week if you do a Process Structure (which takes seconds) on an unprocessed cube you can browse it but no data is there; if you subsequently do a Process Full on one of the partitions then you get a cube with only that partition’s data in it.
While we’re on this topic, it’s also worth mentioning that if you redesign the aggregations on your measure group/partitions, you just need to do a Process Index to make them available which is much faster than doing a Process Full.