Understanding the Database Schemas
The Schema Generation Wizard generates a denormalized relational schema for the subject area database based on the dimensions and measure groups in Analysis Services. The wizard generates a relational table for each dimension to store dimension data, which is called a dimension table, and a relational table for each measure group to store fact data, which is called a fact table. The wizard ignores linked dimensions, linked measure groups, and server time dimensions when it generates these relational tables.
Before it begins to generate the underlying relational schema, the Schema Generation Wizard validates the Analysis Services cubes and dimensions. If the wizard detects errors, it stops and reports the errors to the Task List window in SQL Server Data Tools (SSDT). Examples of errors that prevent generation include the following:
-
Dimensions that have more than one key attribute.
-
Parent attributes that have different data types than the key attributes.
-
Measure groups that do not have measures.
-
Degenerate dimensions or measures that are improperly configured.
-
Surrogate keys that are improperly configured, such as multiple attributes using the ScdOriginalID attribute type or an attribute using the ScdOriginalID that is not bound to a column using the integer data type.
For each measure group in a cube, the Schema Generation Wizard generates a fact table to be included in the subject area database. The structure of the fact table depends on the choices made while designing the measure group on which it is based, and the relationships established between the measure group and any included dimensions.
Schema Generation Wizard ignores data types in all cases except for columns that use the SQL Server wchar data type. The wchar data size translates directly to the nvarchar data type. However, if the specified length of a column using the wchar size is larger than 4000 bytes, the Schema Generation Wizard generates an error.
If a data item, such as the binding for an attribute, has no specified length, the default length listed in the following table is used for the column.
|
Data item |
Default length (bytes) |
|---|---|
|
KeyColumn |
50 |
|
NameColumn |
50 |
|
CustomRollupColumn |
3000 |
|
CustomRollupPropertiesColumn |
500 |
|
UnaryOperatorColumn |
1 |

Note