|
1 | 1 | # Data-Vault-Example-Northwind |
2 | 2 |
|
3 | | -An example Data Vault data warehouse modelling Microsoft's Northwind sample database, built for SQL Server. |
| 3 | +An example Data Vault 2.0 data warehouse modelling Microsoft's Northwind sample database. |
4 | 4 |
|
5 | 5 |
|
6 | 6 | ### Purpose |
7 | 7 |
|
8 | | -The objective of this project is to develop an easily accessible example data warehouse illustrating how to model the well-known Northwind sample database using the Data Vault methodology. |
9 | | - |
10 | | -I intend the repository to mostly be of use to new Data Vault practitioners, providing a convenient option for hands-on experimentation. Hopefully it helps join a few dots on the somewhat steep learning curve that comes with Data Vault modelling. |
| 8 | +The objective of this project is to develop an easily accessible example data warehouse illustrating how to model the well-known Northwind sample database using the Data Vault 2.0 modelling standards. |
11 | 9 |
|
12 | 10 |
|
13 | 11 | ### Setup |
14 | 12 |
|
15 | | -1. Set up a SQL Server instance to hold the five component databases. |
16 | | -2. Run the following SQL scripts in this order to create the five databases. |
17 | | - * SQL\DDL\Northwind\instnwnd.sql |
18 | | - * SQL\DDL\Create_Database_Stage_Area.sql |
19 | | - * SQL\DDL\Create_Database_Meta_Metrics_Error_Mart.sql |
20 | | - * SQL\DDL\Create_Database_Data_Vault.sql |
21 | | - * SQL\DDL\Create_Database_Information_Mart.sql |
22 | | -3. Confirm setup is correct with an initial load. Run the following SQL script to execute the stored procedures for the Stage_Area and Data_Vault databases. |
23 | | - * SQL\ETL\Load_Data_Vault.sql |
24 | | -4. Additionally, check the contents of Meta_Metrics_Error_Mart.error.Error_Log for any unexpected errors. |
25 | | - |
26 | | - |
27 | | -### Documentation |
28 | | -Basic documentation covering the data models and table mapping can be found in the Documentation directory. |
| 13 | +1. Set up a new SQL Server instance to hold the five component databases |
| 14 | +2. Run the following script to create the source Northwind database |
| 15 | + * SQL\DDL\Source\instnwnd.sql |
| 16 | +3. Create the Data Vault databases. You have two options: |
| 17 | + They can be set up quickly by executing the SQL scripts in the following directory |
| 18 | + * SQL\DDL\Simple\... |
| 19 | + Alternatively, they can be created in a step-by-step fashion by executing the scripts within |
| 20 | + * SQL\DDL\Detailed\... |
| 21 | +4. Conduct the one-off load of ghost records into the necessary raw Data Vault tables |
| 22 | + * SQL\DML\ghost records.sql |
| 23 | +5. Confirm setup is correct with an initial load. Run the following script to execute the stored procedures in Staging, Data_Vault, and Information_Mart |
| 24 | + * SQL\DCL\load all.sql |
| 25 | +6. From here you should be able to query the dimensionally-modelled 'star' schema views in Information_Mart |
| 26 | + |
| 27 | + |
| 28 | +### Notes |
| 29 | + |
| 30 | +- Basic documentation covering the data models, standards, conventions, etc. can be located in the Documentation directory |
| 31 | +- This project does not cover the creation of the meta/metrics/error marts at this stage. Refer to Dan Linstedt's book 'Building a Scalable Data Warehouse with Data Vault 2.0' for the necessary details |
| 32 | +- Any attempt at building a production Data Vault 2.0 data warehouse should be preceded by taking the CDVP2 course offered by [Data Vault Alliance](https://datavaultalliance.com/) and their authorised training partners |
| 33 | +- This implementation is compliant with Data Vault 2.0 standards taught in CDVP2 as at July 2023 |
0 commit comments