Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/khaouitiabdelhakim/etl-real-example
This repository contains a real example of an Extract, Transform, Load (ETL) process using SQL Server Management Studio (SSMS), SQL Server Integration Services (SSIS), and AdventureWorks2012 data. The objective is to load data into our LightAdventureDW data warehouse.
https://github.com/khaouitiabdelhakim/etl-real-example
data database database-management sql sql-server ssis ssms warehouse
Last synced: 22 days ago
JSON representation
This repository contains a real example of an Extract, Transform, Load (ETL) process using SQL Server Management Studio (SSMS), SQL Server Integration Services (SSIS), and AdventureWorks2012 data. The objective is to load data into our LightAdventureDW data warehouse.
- Host: GitHub
- URL: https://github.com/khaouitiabdelhakim/etl-real-example
- Owner: khaouitiabdelhakim
- Created: 2024-03-21T15:31:36.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-03-22T13:50:29.000Z (8 months ago)
- Last Synced: 2024-10-10T12:45:15.583Z (about 1 month ago)
- Topics: data, database, database-management, sql, sql-server, ssis, ssms, warehouse
- Language: TSQL
- Homepage: https://khaouitiapps.vercel.app
- Size: 64.7 MB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ETL Process using SSMS and SSIS with AdventureWorks2012 Data
This repository contains a real example of an Extract, Transform, Load (ETL) process using SQL Server Management Studio (SSMS), SQL Server Integration Services (SSIS), and AdventureWorks2012 data. The objective is to load data into our LightAdventureDW data warehouse.
```
If you find this repository useful or it has helped you,
please don't forget to leave a ⭐️, or even follow my GitHub account.
Your support motivates me to continue providing helpful resources.
Thank you for your appreciation! 🌟🚀💖😊👍If you'd like to support further, consider buying us a coffee:
```
[![Buy Me A Coffee](https://img.shields.io/badge/Buy%20Me%20A%20Coffee--yellow.svg?style=for-the-badge&logo=buy-me-a-coffee)](https://www.buymeacoffee.com/kh.abdelhakim)## Overview
The goal of this project is to demonstrate how to extract data from transactional databases, transform it, and load it into a data warehouse. We will achieve this by performing complex queries involving multiple table joins.
### You'll find in this repository:
- All the completed project files.
- All the queries used to perform the work in the "Queries" folder.## Instructions
### Prerequisites
- SQL Server Management Studio (SSMS)
- SQL Server Integration Services (SSIS)
- AdventureWorks2012 database### Cleanup
Before running the ETL process, it's recommended to clear existing data from the LightAdventureDW data warehouse using the following SQL script in SSMS:
```sql
delete from LIGHTADVENTUREWORKSDW.dbo.InternetSales;
delete from LIGHTADVENTUREWORKSDW.dbo.Dates;
delete from LIGHTADVENTUREWORKSDW.dbo.Products;
delete from LIGHTADVENTUREWORKSDW.dbo.Customers;
```### Extract, Transform, Load
#### Extracting Data from AdventureWorks2012
To extract data from the transactional AdventureWorks2012 database, we utilize SQL queries that perform joins and transformations. For example:
```sql
SELECT
CONVERT(INT, CONVERT(CHAR(8), OrderDate, 112)) AS DateKey,
CONVERT(DATE, OrderDate) AS FullDate,
SUBSTRING(CONVERT(CHAR(8), OrderDate, 112), 5, 2) + ' ' + DATENAME(MONTH, OrderDate) AS MonthNumberName,
DATEPART(QUARTER, OrderDate) AS CalendarQuarter,
DATEPART(YEAR, OrderDate) AS CalendarYear
FROM
AdventureWorks2012.Sales.SalesOrderHeader;
```#### Loading Data into LightAdventureDW
Once data is extracted and transformed, it can be loaded into the LightAdventureDW data warehouse. SSIS packages can be created and executed to automate this process.
#### Example: Loading Dates Dimension
Here's an example of loading the dates dimension using data from AdventureWorks2012:
```sql
SELECT DateKey, FullDateAlternateKey as FullDate,
SUBSTRING(CONVERT(CHAR(8), FullDateAlternateKey, 112), 5, 2)
+ ' ' + EnglishMonthName as MonthNumberName,
CalendarQuarter, CalendarYear
FROM AdventureWorksDW2012.dbo.DimDate;
```## Conclusion
This repository serves as a practical guide for performing ETL processes using SSMS, SSIS, and AdventureWorks2012 data. By following the provided examples, users can gain insights into extracting, transforming, and loading data for analytical purposes.
We hope you find this repository helpful!
## License
```
Copyright 2024 KHAOUITI Abdelhakim
powered by KHAOUITI AppsLicensed under the MIT License
You may obtain a copy of the License athttp://opensource.org/licenses/MIT
Unless required by applicable law or agreed to in writing, software
distributed under the MIT License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the MIT License.
```