The main purpose of data warehouses (DW) is to maintain large volumes of historical data (originating from multiple heterogeneous data sources and representing the different states of a system caused by various business events or activities) in a format that facilitates its analysis in order to support timelier and better decision-making, at both the operational and strategic level. In order for a data warehouse to be able to adequately fulfill this purpose, its data model must enable the appropriate and consistent representation of the different states of a system. In effect, a DW data model, representing the physical structure of the DW, must be general enough, to be able to consume data from heterogeneous data sources (where all of the data should be treated as relevant data and it must be possible to trace it back to its source) and reconcile the semantic differences of the data source models, and, at the same time, be resilient to the constant changes in the structure of the data sources. One of the main problems related to DW development is the absence of a standardized DW data model. In this paper a comparative analysis of the four most prominent DW data models (namely the relational/normalized model, data vault model, anchor model and dimensional model) will be given. These models will be analyzed and compared on the basis of the following criteria: (1) semantics (i.e. the fundamental concepts), (2) resilience of the data model with regard to changes in the structure of the data sources, (3) temporal aspects and (4) completeness and traceability of the data. By identifying the strengths and weaknesses of each of these models it would be possible to establish the foundation for a new DW data model which would more adequately fulfill the posed requirements.