SlideShare una empresa de Scribd logo
1 de 13
Descargar para leer sin conexión
SetFocus
Business Intelligence –Master Program


  SQL SERVER INTEGRATION SERVICE




            PORJECT DOCUMENTATION



                         ON

  AllWorks, Inc. – a Ficticious Construction Company




                    Submitted By

                   Yubaraj Khanal
                      (May,2009)


                                                       0
Table of Contents


1.      Introduction: ....................................................................................................................................... 2
2.      Project Requirements: ........................................................................................................................ 2
3.      Project Overview ................................................................................................................................. 2
4.      Create SSIS Packages ........................................................................................................................... 2
4.1. Employee Master Package: ................................................................................................................. 3
4.2. Employee Rate Package ...................................................................................................................... 4
4.3. ClientMaster Package.......................................................................................................................... 4
4.4. ClientGrouping Master Package.......................................................................................................... 5
4.5. Division Master Package ..................................................................................................................... 6
4.6. Client grouping to client xref package ................................................................................................ 7
4.7. Project (Job)Master Package ............................................................................................................... 8
4.8. Project(Job)TimeSheetPackage ........................................................................................................... 9
4.9. Database Backup Package ................................................................................................................. 11
4.10. Database Re index and Shrink Package............................................................................................. 11
4.11. Master Package ................................................................................................................................. 11
4.12. Project Build, Deploy and Execution ................................................................................................. 12




SSIS Student Project Documentation                                                                                                                       1
1. Introduction:

        The project is for a fictitious construction company called AllWorks. The basic requirement of
        the project is to design and crate an ETL solution to update a SQL Server 2005 database from
        excel and flat file sources using SQL Server Integration Service.


2. Project Requirements:

        The major task of the project is to transfer the data from the different raw data sources (xls, csv
        and xml) to the SQL Server Database.

        Different packages are created to read source file and insert them into the AllWorksDBStudent
        SQL dataset. After execution of every package, an email should be generated that will send
        report containing no of rows inserted, updated or error while execution. All packages should be
        executed everyday at midnight and after execution a database should be backed up, re index
        and shrink.


3. Project Overview

        The source and destination of the data is shown in following table:
                               Source                             Destination (AllWorksDBStudent
                 File                        Details                   Database) Table Name
                                 Employees Sheet                 Employee Table
        Employees.xls
                                 Employeerates sheet             EmployeeRates Table
                                 Clientlisting sheet             Client Table
                                 Special grouping sheet          ClientGroupings
        ClientGeographies.xls
                                 Division Definition sheet       Division Table
                                 Special Groupings Sheet         ClientGroupingXCliens Table
        ProjectMaster.xls        ProjectMaster Sheet             Project(“Job”)Master Table
        EmpTime####.csv          Different files with .csv ext.  EmployeeTimeSheet Table




4. Create SSIS Packages

        To integrate external sources of data into SQL server database, altogether (including mater
        package) 11 packages were created. Each data source was read by related component, data
        converted to the proper SQL supported type, check for validation and stored to the related
        tables in the database. Data was converted with the following rules:
              Source Data Type                       Converted Data Type
        Integer                        Four Byte Signed Inter (DT_14)
        Character/Varchar              String(DT_STR)
        Date                           Date(DT_Date) or Database

SSIS Student Project Documentation                                                                       2
TimeStamp(DT_DBTIMESTAMP)
        Currency/General Numbers      Numeric(DT_NUMERIC)
        Logical/Boolean               Boolean(DT_BOOLEAN)




    4.1. Employee Master Package:

    Steps

    1. Data retrieves from excel (file:employees.xls, sheet: employees) using Data Flow Source- Excel
       Source.
    2. Data is converted according to the requirements.
    3. FullName column is added by using derived column.
    4. Lookup Transformation is added to check with employee primary key.
    5. A conditional split is used to determine either the record is new, existing and to be updated or
       will null values.
    6. According to the condition, no of rows were counted and send to the destination.
    7. An email report was generated that contains no of rows inserted, updated and error generated.




SSIS Student Project Documentation                                                                  3
4.2. Employee Rate Package

    Steps

    1. Data retrieves from excel (file:employees.xls, sheet: employeerates) using Data Flow Source-
       Excel Source.
    2. Data is converted according to the requirements.
    3. A lookup Transformation is added to check the valid employeeid.
    4. Another Lookup Transformation is added to check with employee primary key.
    5. A conditional split is used to determine either the record is new, existing and to be updated or
       will null values.
    6. According to the condition, no of rows were counted and send to the destination.
    7. An email report was generated that contains no of rows inserted, updated and error generated.




    4.3. ClientMaster Package

        Steps



SSIS Student Project Documentation                                                                  4
1. Data retrieves from excel (file: clientgeorgraphics.xls, sheet: clientlisting) using Data Flow
           Source- Excel Source.
        2. Data is converted according to the requirements.
        3. Lookup Transformation is added to check with client primary key.
        4. A conditional split is used to determine either the record is new, existing and to be updated
           or will null values.
        5. According to the condition, no of rows were counted and send to the destination.
        6. An email report was generated that contains no of rows inserted, updated and error
           generated.




    4.4. ClientGrouping Master Package

        Steps :

        1. Data retrieves from excel (file:clientgeographics.xls, sheet:specialgroupings) using Data Flow
           Source- Excel Source.
        2. Data is converted according to the requirements.
        3. An Aggregate dataflow task is added and records are grouped by grouping no and grouping
           name.

SSIS Student Project Documentation                                                                    5
4. Lookup Transformation is added to check with group primary key.
        5. A conditional split is used to determine either the record is new, existing and to be updated
           or will null values.
        6. According to the condition, no of rows were counted and send to the destination.
        7. An email report was generated that contains no of rows inserted, updated and error
           generated.




    4.5. Division Master Package

        Steps :

        1. Data retrieves from excel (file:clientgeographics.xls, sheet:divisiondefinitions) using Data
           Flow Source- Excel Source.
        2. Data is converted according to the requirements.
        3. An Aggregate dataflow task is added and records are grouped by division no and division
           descriptions.
        4. Lookup Transformation is added to check with division primary key.
        5. A conditional split is used to determine either the record is new, existing and to be updated
           or will null values.
        6. According to the condition, no of rows were counted and send to the destination.
        7. An email report was generated that contains no of rows inserted, updated and error
           generated.




SSIS Student Project Documentation                                                                   6
4.6. Client grouping to client xref package

        Steps
        1. Data retrieves from excel (file:clientgeographics.xls, sheet:specialgroupings) using Data Flow
            Source- Excel Source.
        2. Data is converted according to the requirements.
        3. A Lookup transformation added to check valid group
        4. Another Lookup Transformation is added to check with client primary key(client table).
        5. A conditional split is used to determine either the record is new, existing and to be updated
            or will null values.
        6. According to the condition, no of rows were counted and send to the destination.
        7. An email report was generated that contains no of rows inserted, updated and error
            generated.




SSIS Student Project Documentation                                                                   7
4.7. Project (Job)Master Package

        1. Data retrieves from excel (file:projectmaster.xls, sheet:projectmaster) using Data Flow
           Source- Excel Source.
        2. Data is converted according to the requirements.
        3. A Lookup Transformation is added to check for valid client (client table).
        4. Another Lookup Transformation is added to check with job master primary key.
        5. A conditional split is used to determine either the record is new, existing and to be updated
           or will null values.
        6. According to the condition, no of rows were counted and send to the destination.
        7. An email report was generated that contains no of rows inserted, updated and error
           generated.




SSIS Student Project Documentation                                                                   8
4.8. Project(Job)TimeSheetPackage

        1. Data retrieves from different .csv files inside time folder. To retrieve and transform records
           from multiple .csv files, a For each loop container with Foreach File Enumerator is used.
        2. Data is converted according to the requirements.
        3. Lookup Transformation is added to check the valid job (Job Master Table).
        4. A conditional split is used to determine the status of the job i.e. either the job is closed or
           active.
        5. For closed jobs, a multicast is used to send the data to excel files and error log table.
        6. For Active jobs, another Lookup transformation is added to check with employeepk,
           jobmasterpk and jobdate.
        7. A conditional split is used to determine either the record is new, existing and to be updated
           or will null values.
        8. According to the condition, no of rows were counted and send to the destination.
        9. An email report was generated that contains no of rows inserted, updated and error
           generated.




SSIS Student Project Documentation                                                                     9
SSIS Student Project Documentation   10
4.9. Database Backup Package

        After completion of all 8 packages, another package is generated to backup the database. For
        this, A Maintenance Plan Task- Backup Database Task control is added and set it to backup the
        database. After backup database a send mail task is added to report the status of database
        backup process.




    4.10. Database Re index and Shrink Package

        In this package, two maintenance controls Rebuilt Index and Shrink Database task are added.
        After execution of the task an email was generated with send mail task to report the progress.




    4.11. Master Package

        Finally, all packages are organized in a Master package. The following screen shows the layout of
        the master package.




SSIS Student Project Documentation                                                                   11
4.12. Project Build, Deploy and Execution

        After preparation of all packages, the packages were building and deployed and installed on SQL
        Server Database. Using SQL Server Agent, master package was scheduled to run on everyday at
        midnight.




SSIS Student Project Documentation                                                                  12

Más contenido relacionado

La actualidad más candente

Oracle forms les25
Oracle forms  les25Oracle forms  les25
Oracle forms les25
Abed Othman
 
Introduction of ssis
Introduction of ssisIntroduction of ssis
Introduction of ssis
deepakk073
 

La actualidad más candente (20)

Presentation on Relational Schema (Database)
Presentation on Relational Schema (Database)Presentation on Relational Schema (Database)
Presentation on Relational Schema (Database)
 
MS SQL SERVER: SSIS and data mining
MS SQL SERVER: SSIS and data miningMS SQL SERVER: SSIS and data mining
MS SQL SERVER: SSIS and data mining
 
Hybrid Cloud & Data Fabric for Dummies
Hybrid Cloud & Data Fabric for DummiesHybrid Cloud & Data Fabric for Dummies
Hybrid Cloud & Data Fabric for Dummies
 
Data as a service
Data as a serviceData as a service
Data as a service
 
How to Build a ML Platform Efficiently Using Open-Source
How to Build a ML Platform Efficiently Using Open-SourceHow to Build a ML Platform Efficiently Using Open-Source
How to Build a ML Platform Efficiently Using Open-Source
 
Power BI Full Course | Power BI Tutorial for Beginners | Edureka
Power BI Full Course | Power BI Tutorial for Beginners | EdurekaPower BI Full Course | Power BI Tutorial for Beginners | Edureka
Power BI Full Course | Power BI Tutorial for Beginners | Edureka
 
Introduction to Azure Data Lake
Introduction to Azure Data LakeIntroduction to Azure Data Lake
Introduction to Azure Data Lake
 
Bilir's Business Intelligence Portfolio SSIS Project
Bilir's Business Intelligence Portfolio SSIS ProjectBilir's Business Intelligence Portfolio SSIS Project
Bilir's Business Intelligence Portfolio SSIS Project
 
Tableau free tutorial
Tableau free tutorialTableau free tutorial
Tableau free tutorial
 
Azure SQL Database
Azure SQL DatabaseAzure SQL Database
Azure SQL Database
 
Data extraction, transformation, and loading
Data extraction, transformation, and loadingData extraction, transformation, and loading
Data extraction, transformation, and loading
 
Importing data to salesforce
Importing data to salesforceImporting data to salesforce
Importing data to salesforce
 
Oracle forms les25
Oracle forms  les25Oracle forms  les25
Oracle forms les25
 
NoSQL Database: Classification, Characteristics and Comparison
NoSQL Database: Classification, Characteristics and ComparisonNoSQL Database: Classification, Characteristics and Comparison
NoSQL Database: Classification, Characteristics and Comparison
 
Dimensional Modeling
Dimensional ModelingDimensional Modeling
Dimensional Modeling
 
Tips and tricks for reports and dashboards
Tips and tricks for reports and dashboardsTips and tricks for reports and dashboards
Tips and tricks for reports and dashboards
 
Etl process in data warehouse
Etl process in data warehouseEtl process in data warehouse
Etl process in data warehouse
 
SSIS control flow
SSIS control flowSSIS control flow
SSIS control flow
 
Introduction of ssis
Introduction of ssisIntroduction of ssis
Introduction of ssis
 
Introduction to Power BI and Data Visualization
Introduction to Power BI and Data VisualizationIntroduction to Power BI and Data Visualization
Introduction to Power BI and Data Visualization
 

Destacado

A Complex SSIS Package
A Complex SSIS PackageA Complex SSIS Package
A Complex SSIS Package
Nitil Dwivedi
 
Ssis tech support_team
Ssis tech support_teamSsis tech support_team
Ssis tech support_team
Matthew Clark
 
MS BI SSIS Project Portfolio
MS BI SSIS Project PortfolioMS BI SSIS Project Portfolio
MS BI SSIS Project Portfolio
pencarver
 
Agnes's SSIS Project Documentation
Agnes's SSIS Project DocumentationAgnes's SSIS Project Documentation
Agnes's SSIS Project Documentation
agnestetter
 

Destacado (6)

A Complex SSIS Package
A Complex SSIS PackageA Complex SSIS Package
A Complex SSIS Package
 
Ssis tech support_team
Ssis tech support_teamSsis tech support_team
Ssis tech support_team
 
SSIS by Anjali
SSIS by AnjaliSSIS by Anjali
SSIS by Anjali
 
SSIS_Project
SSIS_ProjectSSIS_Project
SSIS_Project
 
MS BI SSIS Project Portfolio
MS BI SSIS Project PortfolioMS BI SSIS Project Portfolio
MS BI SSIS Project Portfolio
 
Agnes's SSIS Project Documentation
Agnes's SSIS Project DocumentationAgnes's SSIS Project Documentation
Agnes's SSIS Project Documentation
 

Similar a A-Project Report- SSIS

SSIS Project Profile
SSIS Project ProfileSSIS Project Profile
SSIS Project Profile
tthompson0421
 
B Woodward Portfolio
B Woodward PortfolioB Woodward Portfolio
B Woodward Portfolio
bwoodward
 
Business Intelligence Portfolio
Business Intelligence PortfolioBusiness Intelligence Portfolio
Business Intelligence Portfolio
Yubaraj Khanal
 
MMYERS Portfolio
MMYERS PortfolioMMYERS Portfolio
MMYERS Portfolio
Mike Myers
 
Business Intelligence Portfolio
Business Intelligence PortfolioBusiness Intelligence Portfolio
Business Intelligence Portfolio
amoffat
 
Business Intelligence Portfolio
Business Intelligence PortfolioBusiness Intelligence Portfolio
Business Intelligence Portfolio
guestc38d4b
 
Business Intelligence Portfolio
Business Intelligence PortfolioBusiness Intelligence Portfolio
Business Intelligence Portfolio
garyt1953
 
RakeshCS_5.4years
RakeshCS_5.4yearsRakeshCS_5.4years
RakeshCS_5.4years
Rakesh CS
 
Business Intelligence Portfolio
Business Intelligence PortfolioBusiness Intelligence Portfolio
Business Intelligence Portfolio
guest5a8ee60b
 

Similar a A-Project Report- SSIS (20)

SSIS Project Profile
SSIS Project ProfileSSIS Project Profile
SSIS Project Profile
 
B Woodward Portfolio
B Woodward PortfolioB Woodward Portfolio
B Woodward Portfolio
 
Business Intelligence Portfolio
Business Intelligence PortfolioBusiness Intelligence Portfolio
Business Intelligence Portfolio
 
Aditya_2015
Aditya_2015Aditya_2015
Aditya_2015
 
MMYERS Portfolio
MMYERS PortfolioMMYERS Portfolio
MMYERS Portfolio
 
Shashi.Kiran_CV
Shashi.Kiran_CVShashi.Kiran_CV
Shashi.Kiran_CV
 
Business Intelligence Portfolio
Business Intelligence PortfolioBusiness Intelligence Portfolio
Business Intelligence Portfolio
 
Business Intelligence Portfolio
Business Intelligence PortfolioBusiness Intelligence Portfolio
Business Intelligence Portfolio
 
sql resume
sql resumesql resume
sql resume
 
DBT PU BI Lab Manual for ETL Exercise.pdf
DBT PU BI Lab Manual for ETL Exercise.pdfDBT PU BI Lab Manual for ETL Exercise.pdf
DBT PU BI Lab Manual for ETL Exercise.pdf
 
Business Intelligence Portfolio
Business Intelligence PortfolioBusiness Intelligence Portfolio
Business Intelligence Portfolio
 
David Weston SSIS Portfolio
David Weston SSIS PortfolioDavid Weston SSIS Portfolio
David Weston SSIS Portfolio
 
Ganesh CV
Ganesh CVGanesh CV
Ganesh CV
 
RakeshCS_5.4years
RakeshCS_5.4yearsRakeshCS_5.4years
RakeshCS_5.4years
 
Bi Ppt Portfolio Elmer Donavan
Bi Ppt Portfolio  Elmer DonavanBi Ppt Portfolio  Elmer Donavan
Bi Ppt Portfolio Elmer Donavan
 
Eugene Wabomnor Bi Portfolio
Eugene Wabomnor Bi PortfolioEugene Wabomnor Bi Portfolio
Eugene Wabomnor Bi Portfolio
 
Business Intelligence Portfolio
Business Intelligence PortfolioBusiness Intelligence Portfolio
Business Intelligence Portfolio
 
Business Intelligence Portfolio
Business Intelligence PortfolioBusiness Intelligence Portfolio
Business Intelligence Portfolio
 
Dennis Schmid Portfolio
Dennis Schmid PortfolioDennis Schmid Portfolio
Dennis Schmid Portfolio
 
Ssis ssas sps_mdx_hong_bingli
Ssis ssas sps_mdx_hong_bingliSsis ssas sps_mdx_hong_bingli
Ssis ssas sps_mdx_hong_bingli
 

Último

Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptxHarnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
FIDO Alliance
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
panagenda
 

Último (20)

Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
 
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
 
Easier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties ReimaginedEasier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties Reimagined
 
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The InsideCollecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
 
Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024
 
Intro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxIntro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptx
 
1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT
1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT
1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
 
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
 
AI mind or machine power point presentation
AI mind or machine power point presentationAI mind or machine power point presentation
AI mind or machine power point presentation
 
Working together SRE & Platform Engineering
Working together SRE & Platform EngineeringWorking together SRE & Platform Engineering
Working together SRE & Platform Engineering
 
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptxHarnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
 
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
 
Google I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGoogle I/O Extended 2024 Warsaw
Google I/O Extended 2024 Warsaw
 
Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoft
 
The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
 
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
 
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
 

A-Project Report- SSIS

  • 1. SetFocus Business Intelligence –Master Program SQL SERVER INTEGRATION SERVICE PORJECT DOCUMENTATION ON AllWorks, Inc. – a Ficticious Construction Company Submitted By Yubaraj Khanal (May,2009) 0
  • 2. Table of Contents 1. Introduction: ....................................................................................................................................... 2 2. Project Requirements: ........................................................................................................................ 2 3. Project Overview ................................................................................................................................. 2 4. Create SSIS Packages ........................................................................................................................... 2 4.1. Employee Master Package: ................................................................................................................. 3 4.2. Employee Rate Package ...................................................................................................................... 4 4.3. ClientMaster Package.......................................................................................................................... 4 4.4. ClientGrouping Master Package.......................................................................................................... 5 4.5. Division Master Package ..................................................................................................................... 6 4.6. Client grouping to client xref package ................................................................................................ 7 4.7. Project (Job)Master Package ............................................................................................................... 8 4.8. Project(Job)TimeSheetPackage ........................................................................................................... 9 4.9. Database Backup Package ................................................................................................................. 11 4.10. Database Re index and Shrink Package............................................................................................. 11 4.11. Master Package ................................................................................................................................. 11 4.12. Project Build, Deploy and Execution ................................................................................................. 12 SSIS Student Project Documentation 1
  • 3. 1. Introduction: The project is for a fictitious construction company called AllWorks. The basic requirement of the project is to design and crate an ETL solution to update a SQL Server 2005 database from excel and flat file sources using SQL Server Integration Service. 2. Project Requirements: The major task of the project is to transfer the data from the different raw data sources (xls, csv and xml) to the SQL Server Database. Different packages are created to read source file and insert them into the AllWorksDBStudent SQL dataset. After execution of every package, an email should be generated that will send report containing no of rows inserted, updated or error while execution. All packages should be executed everyday at midnight and after execution a database should be backed up, re index and shrink. 3. Project Overview The source and destination of the data is shown in following table: Source Destination (AllWorksDBStudent File Details Database) Table Name Employees Sheet Employee Table Employees.xls Employeerates sheet EmployeeRates Table Clientlisting sheet Client Table Special grouping sheet ClientGroupings ClientGeographies.xls Division Definition sheet Division Table Special Groupings Sheet ClientGroupingXCliens Table ProjectMaster.xls ProjectMaster Sheet Project(“Job”)Master Table EmpTime####.csv Different files with .csv ext. EmployeeTimeSheet Table 4. Create SSIS Packages To integrate external sources of data into SQL server database, altogether (including mater package) 11 packages were created. Each data source was read by related component, data converted to the proper SQL supported type, check for validation and stored to the related tables in the database. Data was converted with the following rules: Source Data Type Converted Data Type Integer Four Byte Signed Inter (DT_14) Character/Varchar String(DT_STR) Date Date(DT_Date) or Database SSIS Student Project Documentation 2
  • 4. TimeStamp(DT_DBTIMESTAMP) Currency/General Numbers Numeric(DT_NUMERIC) Logical/Boolean Boolean(DT_BOOLEAN) 4.1. Employee Master Package: Steps 1. Data retrieves from excel (file:employees.xls, sheet: employees) using Data Flow Source- Excel Source. 2. Data is converted according to the requirements. 3. FullName column is added by using derived column. 4. Lookup Transformation is added to check with employee primary key. 5. A conditional split is used to determine either the record is new, existing and to be updated or will null values. 6. According to the condition, no of rows were counted and send to the destination. 7. An email report was generated that contains no of rows inserted, updated and error generated. SSIS Student Project Documentation 3
  • 5. 4.2. Employee Rate Package Steps 1. Data retrieves from excel (file:employees.xls, sheet: employeerates) using Data Flow Source- Excel Source. 2. Data is converted according to the requirements. 3. A lookup Transformation is added to check the valid employeeid. 4. Another Lookup Transformation is added to check with employee primary key. 5. A conditional split is used to determine either the record is new, existing and to be updated or will null values. 6. According to the condition, no of rows were counted and send to the destination. 7. An email report was generated that contains no of rows inserted, updated and error generated. 4.3. ClientMaster Package Steps SSIS Student Project Documentation 4
  • 6. 1. Data retrieves from excel (file: clientgeorgraphics.xls, sheet: clientlisting) using Data Flow Source- Excel Source. 2. Data is converted according to the requirements. 3. Lookup Transformation is added to check with client primary key. 4. A conditional split is used to determine either the record is new, existing and to be updated or will null values. 5. According to the condition, no of rows were counted and send to the destination. 6. An email report was generated that contains no of rows inserted, updated and error generated. 4.4. ClientGrouping Master Package Steps : 1. Data retrieves from excel (file:clientgeographics.xls, sheet:specialgroupings) using Data Flow Source- Excel Source. 2. Data is converted according to the requirements. 3. An Aggregate dataflow task is added and records are grouped by grouping no and grouping name. SSIS Student Project Documentation 5
  • 7. 4. Lookup Transformation is added to check with group primary key. 5. A conditional split is used to determine either the record is new, existing and to be updated or will null values. 6. According to the condition, no of rows were counted and send to the destination. 7. An email report was generated that contains no of rows inserted, updated and error generated. 4.5. Division Master Package Steps : 1. Data retrieves from excel (file:clientgeographics.xls, sheet:divisiondefinitions) using Data Flow Source- Excel Source. 2. Data is converted according to the requirements. 3. An Aggregate dataflow task is added and records are grouped by division no and division descriptions. 4. Lookup Transformation is added to check with division primary key. 5. A conditional split is used to determine either the record is new, existing and to be updated or will null values. 6. According to the condition, no of rows were counted and send to the destination. 7. An email report was generated that contains no of rows inserted, updated and error generated. SSIS Student Project Documentation 6
  • 8. 4.6. Client grouping to client xref package Steps 1. Data retrieves from excel (file:clientgeographics.xls, sheet:specialgroupings) using Data Flow Source- Excel Source. 2. Data is converted according to the requirements. 3. A Lookup transformation added to check valid group 4. Another Lookup Transformation is added to check with client primary key(client table). 5. A conditional split is used to determine either the record is new, existing and to be updated or will null values. 6. According to the condition, no of rows were counted and send to the destination. 7. An email report was generated that contains no of rows inserted, updated and error generated. SSIS Student Project Documentation 7
  • 9. 4.7. Project (Job)Master Package 1. Data retrieves from excel (file:projectmaster.xls, sheet:projectmaster) using Data Flow Source- Excel Source. 2. Data is converted according to the requirements. 3. A Lookup Transformation is added to check for valid client (client table). 4. Another Lookup Transformation is added to check with job master primary key. 5. A conditional split is used to determine either the record is new, existing and to be updated or will null values. 6. According to the condition, no of rows were counted and send to the destination. 7. An email report was generated that contains no of rows inserted, updated and error generated. SSIS Student Project Documentation 8
  • 10. 4.8. Project(Job)TimeSheetPackage 1. Data retrieves from different .csv files inside time folder. To retrieve and transform records from multiple .csv files, a For each loop container with Foreach File Enumerator is used. 2. Data is converted according to the requirements. 3. Lookup Transformation is added to check the valid job (Job Master Table). 4. A conditional split is used to determine the status of the job i.e. either the job is closed or active. 5. For closed jobs, a multicast is used to send the data to excel files and error log table. 6. For Active jobs, another Lookup transformation is added to check with employeepk, jobmasterpk and jobdate. 7. A conditional split is used to determine either the record is new, existing and to be updated or will null values. 8. According to the condition, no of rows were counted and send to the destination. 9. An email report was generated that contains no of rows inserted, updated and error generated. SSIS Student Project Documentation 9
  • 11. SSIS Student Project Documentation 10
  • 12. 4.9. Database Backup Package After completion of all 8 packages, another package is generated to backup the database. For this, A Maintenance Plan Task- Backup Database Task control is added and set it to backup the database. After backup database a send mail task is added to report the status of database backup process. 4.10. Database Re index and Shrink Package In this package, two maintenance controls Rebuilt Index and Shrink Database task are added. After execution of the task an email was generated with send mail task to report the progress. 4.11. Master Package Finally, all packages are organized in a Master package. The following screen shows the layout of the master package. SSIS Student Project Documentation 11
  • 13. 4.12. Project Build, Deploy and Execution After preparation of all packages, the packages were building and deployed and installed on SQL Server Database. Using SQL Server Agent, master package was scheduled to run on everyday at midnight. SSIS Student Project Documentation 12