A data warehouse model is an applied form of a computer system data model. In computer systems, data flow is modeled based on theoretical information in order to test the abilities and limitations of the system. When data warehousing came into existence, these same models began to find actual physical applications in the construction of the data. This would be similar to a person simply doing math problems, then having those equations used to build a new type of engine.
There are several different ideas behind a data warehouse model. Each of them has its own strengths and weaknesses, as well as data types that it is more suited to handle. It isn’t uncommon for several different data warehouse models, or for hybrid systems that pull on the strengths of multiple types, to exist in the same system.
The Flat system is the type of data warehouse model that many users would recognize as the easiest. This manner of data storage involves interconnected rows and columns of information, similar to a spreadsheet. While this method is easy for humans to read, it is harder for computers and slow to correlate.
A Hierarchical data warehouse model stores information in a continuous series of levels. Each level contains information that is dependent on the generation above. This is very similar to the Network model, which also contains a series of dependent levels. The difference lies in their dependencies—in a Hierarchical system, each block of data may only have one higher level of dependency, but in a Network model, they may have as many as they need. In both cases, a single block of information may connect to several blocks below.
A Relational data warehouse model is a variation on the Flat system. Data is held in tables, similar to those in a Flat system, and each fundamental piece of data is given a unique identifier. This identifier travels along with the data, assuring is uniqueness. For instance, if an employer has two employees with the same name, their identifier would still separate them in the system. This identifier is correlated through the entire system—if everything works correctly, any time anything related to the unique information comes into the system, it would correlate with preexisting information based on the identifier alone.
The Dimensional model is based on the Hierarchical. A single fact is used as a starting point, then additional information relating to that fact trickles down from it. An item such as an employee number would be an initial fact; then dates relating to that worker, as well as pay or vacation time, would connect to it as they enter the system.
The Relational and Dimensional data warehouse models are the two most common styles. Other types of data warehousing exist, but they are minor in comparison to these. Generally, new models are build off the Flat, Hierarchical or Network systems; often, they are just simple improvements to their basic method of organizing.