Thursday, February 13, 2014


The focus of this blog will be to deal with some real world examples that will help to better understand Dimensional Modelling. Procurement is a critical activity for most of the organizations. For retailers and distributors, effective procurement of products at the correct price is very important. Organizations could have analytical requirements like what products are frequently purchased, at what prices from various vendors, firms receiving negotiated pricing or not, vendor performance and fill rate etc.



The procurement transaction type dimension is used for grouping or filtering transaction types like purchase orders. The degenerate dimension contract number is used to determine the volume of business conducted under each negotiated contract.

In the above example many dimension are applicable to some transaction types but not all, leading to separate fact tables. So we use the bus matrix for high level of abstraction and visionary planning on data warehouse architectural level. It provides a framework and master plan for agile development identifying the reusable common descriptive dimensions that provide both data consistency and reduced time-to-market delivery.



The decision to have separate fact tables for purchase requisitions, purchase orders, shipping notices, warehouse receipts, and vendor payments was made from a user perspective as they see these activities as separate and distinct business processes. Different systems provide data and there is unique dimensionality for various transaction types. Stay tuned for more updates !

References:
The Data Warehouse Toolkit 3rd Edition - Ralph Kimball, Margy Ross