Have you ever used a pivot table in Excel? It's a great tool which allows you to slice data with different criteria:
Above you see that we have a spreadsheet that contains some orders and right beside it we have a pivot table that breaks down what sold in a region.
As data grows more and more calculations are needed to produce the breakdowns. That is where SQL Server (Analysis Services) comes to the rescue. It allows people to specify what they want to measure and how they want to slice the data. Cube definitions in Analysis Services allow people to specify what they watn to measure and how they are plannign to slice the data. That is I can specify I want to measure all the Totals from my orders and I want to slice my Totals by Region and Date.
This following link describes Cubes is more detail: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnexcl2k2/html/odc_da_whatrcubes.asp
One of the deliverables that we have for the Reporting & Anaytics team is to produce good cubes.
To start a user would make Entities in MBF. These entities are objects that programs can interact with. The user would specify properties on these objects that the application are able to see. These properties will get their values from the database. For example:
Next the user would setup Associations & Compositions (relationships) to allow navigation between entities. This will enable one to get from OrderLine to the Product that that OrderLine refers to. It will allow one to get from the Order to the Customer etc.
Once the entities are designed the entities will be mapped to the backing SQL store. This is where the Entities will get all their data. Also set operations on the Entities will translate to SQL updates.
NOW Analytics how comes in. Once these entities and relationships are specified Reporting&Analytics tools are ready to make cubes.