2.6 KiB
ETL Process for WideWorldImporters
This SSIS project performs ETL from the transactional database WideWorldImporters into the OLAP database WideWorldImportersDW for long-term storage and analytics.
Contents
About this sample
Before you begin
Running the sample
Sample details
Disclaimers
Related links
About this sample
- Applies to: SQL Server 2016 (or higher)
- Key features: Core database features
- Workload: ETL
- Programming Language:
- Authors: Greg Low, Jos de Bruijn
- Update history: 25 May 2016 - initial revision
Before you begin
To run this sample, you need the following prerequisites.
Software prerequisites:
- SQL Server 2016 (or higher).
- Visual Studio 2015.
- SQL Server 2016 Integration Services. This needs to be installed on the same machine as Visual Studio to be able to build the project.
Running the sample
-
Open the solution file WWI_Integration.sln in Visual Studio.
-
Build the solution.
-
TBD: running the ETL process
Sample details
The ETL package WWI_Integration is used to migrate data from the WideWorldImporters database to the WideWorldImportersDW database as the data changes. The package is run periodically (most commonly daily).
The design of the package uses SSIS to orchestrate bulk T-SQL operations (rather than as separate transformations within SSIS) to ensure high performance.
Dimensions are loaded first, followed by Fact tables. The package can be re-run at any time after a failure.
The workflow is as follows:
It starts with an expression task that works out the appropriate cutoff time. This time is the current time less a few seconds. (This is more robust than requesting data right to the current time). It then truncates any milliseconds from the time.
The main processing starts by populating the Date dimension table. It ensures that all dates for the current year have been populated in the table.
After this, a series of data flow tasks loads each dimension, then each fact.
Disclaimers
The code included in this sample is not intended to be used for production purposes.
Related Links
TBD For more information, see these articles:
