Team Foundation Server Data Warehouse
Updated: July 2010
Team Foundation Server includes a data warehouse where data from work item tracking, source control, builds, testing tools, and third-party tools (if any) are stored. This data is used by Team Foundation for its built-in reporting functionality. The warehouse includes both a relational and an OLAP database. The relational database is organized in an approximate star schema, and the OLAP database is a data cube derived from the relational database.
Each Team Foundation tool contributes one or more facts to the data warehouse. Each type of fact has a primary relational table and a cube in the OLAP database that draws from that table. Each fact is composed of dimensions, measures, and details.
Dimensions are properties that are used to slice the data in a report. For example the Work Item facts include Type and State dimensions. Dimensions are realized in the relational database as tables, with foreign key references to the dimension tables from the primary fact table.
Measures are properties that are aggregated (counted, added, and so on) to provide the quantitative values in reports. The CodeChurn cube provided by the source control tool, for example, includes Lines Added, Lines Deleted, and Lines Modified measures. Measures are columns in the primary fact table.
Details are columns that appear in the relational database only. They are generally longer text strings like work item titles that are primarily used in list reports that can be drawn as efficiently from a relational database as it can from an OLAP database. Details are columns in the primary fact table that do not appear in the OLAP cube.
All the facts have a project dimension that can be used to slice the data in the warehouse by team project.