Databases used for daily operational work are maintained by an Online Transaction Processing (OLTP) system. The users of an OLTP system perform operational tasks; they sell products, process orders, control stock, and so on.
As a counterpart, a data warehouse is a non-operational database; it is a specialized database designed for decision support purposes. Users of a data warehouse analyze the data, and they do it from different points of view.
The most used technique to deliver data to data warehouse users is dimensional modeling. This technique consists of building a star-like schema with dimension tables surrounding a fact table, making databases simple and understandable.
The primary table in a dimensional model is the fact table. A fact table stores numerical measurements of the business as a quantity of products sold, amount represented by the sold products, discounts, taxes, number of invoices, number of claims, and anything that can be measured. These...