SlideShare a Scribd company logo
1 of 36
Download to read offline
Business Intelligence Portfolio

Gary A. Thompson
thompson2286@gmail.com
(360) 241-3703
Table Of Contents
 Project Overview
 T-SQL Samples
 SSIS – Integration Services
 SSAS – Analysis Services
 MDX Samples
 KPI’s, Excel Services
 SSRS – Reporting Services
 PPS – Performance Point Services
Project Overview
 Introduction: This presentation displays examples of my work (code samples and development work) using
 the Microsoft Business Intelligence tools.


 Tools used:
 T-SQL 2005
 MS SQL Server 2005
 SQL Server Integration Services 2005 - SSIS
 SQL Server Analysis Services 2005 - SSAS


 Audience:
 Business Executives
 IT Managers
 Solution Providers


 Project Goals:
 Design and build a relational database schema populated by data from three different data sources. With different data types involved,
     performed Extract, Transform, and Load processes to prepare the data and load the tables. Each step was accompanied with a
     confirming email upon the success or failure of the job run. This process used SSIS in the SQL Services Management Studio, and
     T-SQL queries to extract the data.
 Design and build an OLAP database and cube using the data from the relational database to allow for detailed data searches using
     MDX queries. KPI’s allow a visual representation to be viewed showing a comparison between actual results and performance
     goals.
T-SQL Samples
    T-SQL provides a
  means of extracting
data from the relational
 database. Many of the
        queries we
    constructed were
 designed to verify the
  load process and to
ensure the accuracy of
   the data within the
      various tables.
T-SQL Samples

                    Narrowing the
                   selection criteria
                  through the use of
                the logical “WHERE”
                helped ease validation
                of data by limiting the
                   output to a more
                rigidly defined subset.
SSIS – SQL Server Integration Services 2005
             (Documentation)

  Ask most Developers and Analysts what their least favorite and yet
  most important task is on a project and the answer is usually
  documentation. Clear, concise, and accurate documentation is
  critical to the functioning of a project and even more important to
  maintaining systems on an ongoing basis.

  Each package requires it’s own documentation about authorship,
  purpose of the package, maintenance records, etc., and the overall
  project documentation is put in place to give an overview of the
  higher level requirements that are met and the roadmap of the
  packages within the project.
SSIS – SQL Server Integration Services 2005
 Project:                           AllWorks, Inc. (SSISStudentProject)
 Author:      Gary A. Thompson
 Created Date:                      Oct. 1, 2009
 Modified Date:
 Description: This project loads the AllWorksDBStudent database tables: Employees, EmployeeRates, County, Clients, ClientGroupings, Division,
 ClientGroupingsXClients, JobMaster, and JobTimesheets.
 The project involves the following packages:
 EmployeeMasterPackage:             Loads Employee table from Employees.xls
 EmployeeRatesPackage:              Loads EmployeeRates table from Employees.xls
                                                                                 based on matching Employee table on EmployeePK.
 ClientMasterPackage:                                     Loads Clients table from ClientGeographies.xls
                                                                                 County table must load first, and be validated prior
                                                                                 to loading Clients.
 SpecialGroupingsPackage:           Loads ClientGroupings table from ClientGeographies.xls
                                                                                 based on matching ClientPK in Clients table. Data
                                                                                 is aggregated by grouping #.
 DivisionDefinitionsPackage:        Loads Division table from ClientGeographies.xls
 ClientGroupingsXrefPackage:        Loads ClientGroupingsXClients table from ClientGeographies.xls
                                                          based on matching ClientPK in Clientstaable, and
                                                                                 ClientGroupingsPK in ClientGroupings table.
 JobMasterPackage:                                        Loads JobMaster table from ProjectMaster.xls
 JobTimesheetsPackage:                                    Loads JobTimesheets table from ProjectMaster.xls
                                                                                 based on matching JobMasterPK in JobMaster table
                                                                                 and validating that the job is not closed prior to the
                                                                                 workdate being submitted.


 These packages are included in the project (SSISStudentProject) and run from MasterPackage. Also included in the Master are four Database maintenance tasks: 1. Shrink
 the database. 2. Rebuild the DB indexes. 3. Update the database statistics. 4. Backup the database. Upon the successful completion of these tasks the MasterPackage
 processes through the above packages to load the tables. If the Database maintenance tasks fail, and email is sent indicating which task failed, and processing stops.
  Upon the completion of each package contained in the MasterPackage, an email is sent indicating the success or failure of the individual package run. Success emails
 contain a count of rows being inserted, changed, and invalid rows (where indicated in requirements). Invalid rows are written to a text file for review by the users.
SSIS – SQL Server Integration Services 2005
                              The Control Flow provides a
                               roadmap of the processes
                              within the package, and also
                                provides a step by step
                                explanation of what the
                                 various processes will
                                      accomplish.


                               This Control Flow shows
                                 the steps involved in a
                                backup and maintenance
                                  process. Each step is
                                  dependent upon the
                              successful completion of the
                                       prior step.

                              The arrows here represent
                              the path that the data takes
                              and the order of execution
                                   of each process.
SSIS – SQL Server Integration Services 2005

Through the use
of script tasks we
    are able to
    extend the
   functionality
 Provided within
 SSIS to include
    customized
 processes that
 we define using
 Visual Basic for
      Access.
SSIS – SQL Server Integration Services 2005
                                   The Data Flow
                                    Task provides
                                       tools for
                                      extracting,
                                 transforming, and
                                 loading data from
                                     various data
                                     sources. The
                                  Conditional Split
                                     shown here
                                 directed the flow
                                     of data into
                                  different output
                                 files or databases
                                       based on
                                 specified criteria.
SSIS – SQL Server Integration Services 2005

  SSIS provides a
graphical interface
   to help give a
       visual
 representation of
  the steps being
taken. Each symbol
 represents a data
     source, a
  transformation
   process, or an
output destination.
  The arrows are
data pipelines that
 show the flow of
   data from one
 point to another.
SSIS – SQL Server Integration Services 2005


 Containers allow
    for the use of
        iterative
 processes. In this
   case, when this
         process
    completes an
   email indicting
   the success of
     failure of the
 process is sent to
  the defined user
          group.
SSIS – SQL Server Integration Services 2005

                               I’ve used a legend
                                    to identify
                              abbreviations which
                              identify the data as
                               it moves through
                               the various steps.
                               Consistency keeps
                                   errors at a
                                  minimum and
                               allows for ease in
                                debugging when
                                things go wrong.
SSIS – SQL Server Integration Services 2005



Using annotation
   to label the
components and
data flow assists
in giving a quick
  idea of what
   takes place,
  without going
into great detail.
SSAS – SQL Server Analysis Services 2005

                                 Good design
                                leads to a well
                              functioning cube
                                   structure.
                                 Verifying the
                                 relationships,
                              ensuring that the
                                  naming will
                               display properly
                              for the end user,
                              and referencing
                              keys is all part of
                                 good design.
SSAS – SQL Server Analysis Services 2005




 The structure
   of this cube
  contains four
 fact tables and
    nine total
   dimensions.
SSAS – SQL Server Analysis Services 2005




     Relationships are verified in the Cube Structure area and
             confirmed in the Dimension Usage area.
SSAS – SQL Server Analysis Services 2005

                              Calculations are
                              added in the SSIS
                              interface in much
                              the same manner as
                              they Calculated
                              Members are built
                              in MDX.

                                 This calculation
                              allows for a default
                              value to be inserted
                                in the event of a
                                    null value.
SSAS – SQL Server Analysis Services 2005



 Building calculations
help in the readability
of KPI’s and allows for
 their reuse in other
         areas.

Additionally, modularity
of code makes for ease
    of maintenance.
SSAS – SQL Server Analysis Services 2005




  KPI’s (Key Performance Indicators) are designed to allow the end user
  a quick graphical representation of how their area is measuring against
     their goals. They also can be used for forecasting based on trend
                                  analysis.
SSAS – SQL Server Analysis Services 2005
     The databases are partitioned at 50% in a MOLAP format
        (Multi-Dimensional OLAP) and are divided by year.
MDX: Multi-Dimensional Queries
     Multi-

                          MDX gives us a
                       means for querying a
                          cube structure,
                        grabbing data from
                        various dimension
                      tables to use in slicing
                             the facts.

                            This query
                      determines the labor
                       rate for employees
                      on a project based on
                       their hours worked
                        and the total labor
                          for the project.
MDX: Multi-Dimensional Queries
            Multi-




 Another query uses
     the Generate
command to create a
  subset of data from
   different sources,
 then uses this newly
   defined subset to
organize the data for
         output.
MDX: Multi-Dimensional Queries
        Multi-




Using a calculated member in this query provides formatting for
               data fields that contain null values.
MDX: Multi-Dimensional Queries
               Multi-




 Although this
  Query itself
was not long, It
    required
documentation
   to provide
 others with a
clear idea of its
  purpose and
    function.
MDX: Multi-Dimensional Queries
     Multi-


                             The use of
                              multiple
                             calculated
                              members
                           expanded the
                          functionality of
                             the query,
                                while
                           simplifying the
                              code for
                               greater
                             readability.
KPI’s – Key Performance Indicators

                            For this project, I
                            developed several
                             KPI’s to give the
                             business users a
                               quick visual
                             summary of the
                             performance of
                           selected measures
                           against a particular
                            goal. While KPI’s
                             can also be used
                           for forecasting, job
                            requirements did
                             not call for such
                              measurements.
KPI’s – Key Performance Indicators




  This KPI show the increase in overhead expenses against a goal of 15%
being acceptable. The goals are defined as good, marginal, and unacceptable,
 using a traffic light symbol to indicate the status. Green is good, yellow is
                        marginal, and red is unacceptable.
KPI’s – Key Performance Indicators

                             The KPI’s are
                           displayed here in
                            Microsoft Excel.
                         This allows users to
                           see performance
                          measures without
                         requiring any special
                             installation of
                              software for
                         viewing. I created a
                          pivot table to hold
                           the data and KPI
                              information.
KPI’s – Key Performance Indicators




    The beauty of using KPI’s in pivot tables to display progress is that
  the measures can be adjusted on the fly. This allows the user to select
          a different way to slice the data to meet their needs.
SSRS- SQL Server Reporting Services 2005
 Reports are built to
 display information
      about how a
       company is
    performing with
   regard to specific
goals. In this example,
 if the percentage of
 increased overhead
  expense exceeds a
    certain level, the
 value is displayed in
red to supply a quick
visual representation
      of company
     expenditures.
SQL Server Reporting Services 2008
     This is a
parameter driven
    report that
provides a look at
 several previous
      months
   production.
  Depending on
selection criteria,
    the header
    information
changes to match
  the selections
 based on using
   report items
within the body of
     the tablix.
        Footer
   information is
 developed using
    calculations
 based on report
items in the body
    of the report.
SQL Server Reporting Services 2008

This report runs on a group
level and is navigated using
a document map on the top
level group to create a table
of contents in the PDF file.

Each item in the table is a
separate report based on
the groupings built in the
master report. The charts
are incorporated in the tablix
header so that they
consistentl ymatch the data
in the tablix with regard to
selection group.

Shading of alternate lines is
based on the producer level
changing, not simply every
other line in a different color.
PPS- Performance Point Services 2007




   Graphs and charts come in a variety of shapes and sizes to
accommodate all types of reports. Line charts give a comparison
     of two or more measures in an easy to read manner.
PPS- Performance Point Services 2007



                      Different types of charts are
                          combined to display
                          different values being
                           tracked. This chart
                       represents the percentage
                      of profit for an organization
                          and the performance
                        broken down by county.
PPS- Performance Point Services 2007



  Scorecards and dashboards
   can be displayed in many
fashions. One popular style of
dashboard displays as a traffic
       signal, with green
 representing progress ahead
    of goal, yellow being a
 marginal area near goal, and
  red indicating being below
             target.

More Related Content

What's hot

New Features Sql 2008
New Features Sql 2008New Features Sql 2008
New Features Sql 2008tomerl
 
Sql server 2008 r2 perf and scale datasheet
Sql server 2008 r2 perf and scale   datasheetSql server 2008 r2 perf and scale   datasheet
Sql server 2008 r2 perf and scale datasheetKlaudiia Jacome
 
Database migration from Sybase ASE to PostgreSQL @2013.pgconf.eu
Database migration from Sybase ASE to PostgreSQL @2013.pgconf.euDatabase migration from Sybase ASE to PostgreSQL @2013.pgconf.eu
Database migration from Sybase ASE to PostgreSQL @2013.pgconf.eualdaschwede80
 
Whats New Sql Server 2008 R2
Whats New Sql Server 2008 R2Whats New Sql Server 2008 R2
Whats New Sql Server 2008 R2Eduardo Castro
 
Saying goodbye to SQL Server 2000
Saying goodbye to SQL Server 2000Saying goodbye to SQL Server 2000
Saying goodbye to SQL Server 2000ukdpe
 
Presentation 1 - SSRS (1)
Presentation 1 - SSRS (1)Presentation 1 - SSRS (1)
Presentation 1 - SSRS (1)Anurag Rana
 
Database migration
Database migrationDatabase migration
Database migrationOpris Monica
 
Introduction of ssis
Introduction of ssisIntroduction of ssis
Introduction of ssisdeepakk073
 
Database migration
Database migrationDatabase migration
Database migrationOpris Monica
 
SQL Server 2008 Overview
SQL Server 2008 OverviewSQL Server 2008 Overview
SQL Server 2008 OverviewDavid Chou
 
Sql server reporting services
Sql server reporting servicesSql server reporting services
Sql server reporting servicesssuser1eca7d
 
Samuel Bayeta
Samuel BayetaSamuel Bayeta
Samuel BayetaSam B
 
Sql server 2008 r2 performance and scale
Sql server 2008 r2 performance and scaleSql server 2008 r2 performance and scale
Sql server 2008 r2 performance and scaleKlaudiia Jacome
 
Presentation sql server to oracle a database migration roadmap
Presentation    sql server to oracle a database migration roadmapPresentation    sql server to oracle a database migration roadmap
Presentation sql server to oracle a database migration roadmapxKinAnx
 
Business Intelligence Portfolio
Business Intelligence PortfolioBusiness Intelligence Portfolio
Business Intelligence Portfoliopleeloy
 
Ssrs introduction session 1
Ssrs introduction session 1Ssrs introduction session 1
Ssrs introduction session 1Muthuvel P
 
Denny Lee\'s Data Camp v1.0 talk on SSRS Best Practices for IT
Denny Lee\'s Data Camp v1.0 talk on SSRS Best Practices for ITDenny Lee\'s Data Camp v1.0 talk on SSRS Best Practices for IT
Denny Lee\'s Data Camp v1.0 talk on SSRS Best Practices for ITBala Subra
 

What's hot (20)

New Features Sql 2008
New Features Sql 2008New Features Sql 2008
New Features Sql 2008
 
Sql server 2008 r2 perf and scale datasheet
Sql server 2008 r2 perf and scale   datasheetSql server 2008 r2 perf and scale   datasheet
Sql server 2008 r2 perf and scale datasheet
 
Database migration from Sybase ASE to PostgreSQL @2013.pgconf.eu
Database migration from Sybase ASE to PostgreSQL @2013.pgconf.euDatabase migration from Sybase ASE to PostgreSQL @2013.pgconf.eu
Database migration from Sybase ASE to PostgreSQL @2013.pgconf.eu
 
Whats New Sql Server 2008 R2
Whats New Sql Server 2008 R2Whats New Sql Server 2008 R2
Whats New Sql Server 2008 R2
 
Saying goodbye to SQL Server 2000
Saying goodbye to SQL Server 2000Saying goodbye to SQL Server 2000
Saying goodbye to SQL Server 2000
 
Presentation 1 - SSRS (1)
Presentation 1 - SSRS (1)Presentation 1 - SSRS (1)
Presentation 1 - SSRS (1)
 
Database migration
Database migrationDatabase migration
Database migration
 
Introduction of ssis
Introduction of ssisIntroduction of ssis
Introduction of ssis
 
Database migration
Database migrationDatabase migration
Database migration
 
SQL Server 2008 Overview
SQL Server 2008 OverviewSQL Server 2008 Overview
SQL Server 2008 Overview
 
Sql server reporting services
Sql server reporting servicesSql server reporting services
Sql server reporting services
 
Samuel Bayeta
Samuel BayetaSamuel Bayeta
Samuel Bayeta
 
Ssis 2008
Ssis 2008Ssis 2008
Ssis 2008
 
Sql server 2008 r2 performance and scale
Sql server 2008 r2 performance and scaleSql server 2008 r2 performance and scale
Sql server 2008 r2 performance and scale
 
It ready dw_day3_rev00
It ready dw_day3_rev00It ready dw_day3_rev00
It ready dw_day3_rev00
 
Presentation sql server to oracle a database migration roadmap
Presentation    sql server to oracle a database migration roadmapPresentation    sql server to oracle a database migration roadmap
Presentation sql server to oracle a database migration roadmap
 
Business Intelligence Portfolio
Business Intelligence PortfolioBusiness Intelligence Portfolio
Business Intelligence Portfolio
 
Ssrs introduction session 1
Ssrs introduction session 1Ssrs introduction session 1
Ssrs introduction session 1
 
Mobile
MobileMobile
Mobile
 
Denny Lee\'s Data Camp v1.0 talk on SSRS Best Practices for IT
Denny Lee\'s Data Camp v1.0 talk on SSRS Best Practices for ITDenny Lee\'s Data Camp v1.0 talk on SSRS Best Practices for IT
Denny Lee\'s Data Camp v1.0 talk on SSRS Best Practices for IT
 

Viewers also liked

Bi developer gary t
Bi developer   gary tBi developer   gary t
Bi developer gary tgaryt1953
 
Scala as a Declarative Language
Scala as a Declarative LanguageScala as a Declarative Language
Scala as a Declarative Languagevsssuresh
 
OOP Comparative Study
OOP Comparative StudyOOP Comparative Study
OOP Comparative StudyDarren Tan
 
Présentation googlewave g_cavril2010
Présentation googlewave g_cavril2010Présentation googlewave g_cavril2010
Présentation googlewave g_cavril2010gcardinal
 
Programming Paradigms Which One Is The Best?
Programming Paradigms Which One Is The Best?Programming Paradigms Which One Is The Best?
Programming Paradigms Which One Is The Best?Netguru
 

Viewers also liked (7)

Ch1 2
Ch1 2Ch1 2
Ch1 2
 
Bi developer gary t
Bi developer   gary tBi developer   gary t
Bi developer gary t
 
Scala as a Declarative Language
Scala as a Declarative LanguageScala as a Declarative Language
Scala as a Declarative Language
 
Ch1 2
Ch1 2Ch1 2
Ch1 2
 
OOP Comparative Study
OOP Comparative StudyOOP Comparative Study
OOP Comparative Study
 
Présentation googlewave g_cavril2010
Présentation googlewave g_cavril2010Présentation googlewave g_cavril2010
Présentation googlewave g_cavril2010
 
Programming Paradigms Which One Is The Best?
Programming Paradigms Which One Is The Best?Programming Paradigms Which One Is The Best?
Programming Paradigms Which One Is The Best?
 

Similar to Business Intelligence Portfolio

Microsoft-business-intelligence-training-in-mumbai
Microsoft-business-intelligence-training-in-mumbaiMicrosoft-business-intelligence-training-in-mumbai
Microsoft-business-intelligence-training-in-mumbaiUnmesh Baile
 
Ssis ssas sps_mdx_hong_bingli
Ssis ssas sps_mdx_hong_bingliSsis ssas sps_mdx_hong_bingli
Ssis ssas sps_mdx_hong_bingliHong-Bing Li
 
A Standardized Approach to SSIS Migration
A Standardized Approach to SSIS MigrationA Standardized Approach to SSIS Migration
A Standardized Approach to SSIS MigrationCognizant
 
Ssis sql ssrs_ssas_sp_mdx_hb_li
Ssis sql ssrs_ssas_sp_mdx_hb_liSsis sql ssrs_ssas_sp_mdx_hb_li
Ssis sql ssrs_ssas_sp_mdx_hb_liHong-Bing Li
 
Ssis sql ssrs_sp_hb_li
Ssis sql ssrs_sp_hb_liSsis sql ssrs_sp_hb_li
Ssis sql ssrs_sp_hb_liHong-Bing Li
 
Ssis ssas sps_mdx_hong_bingli
Ssis ssas sps_mdx_hong_bingliSsis ssas sps_mdx_hong_bingli
Ssis ssas sps_mdx_hong_bingliHong-Bing Li
 
Ssis sql ssas_sps_mdx_hong_bingli
Ssis sql ssas_sps_mdx_hong_bingliSsis sql ssas_sps_mdx_hong_bingli
Ssis sql ssas_sps_mdx_hong_bingliHong-Bing Li
 
Ssis sql ssas_sps_mdx_hong_bingli
Ssis sql ssas_sps_mdx_hong_bingliSsis sql ssas_sps_mdx_hong_bingli
Ssis sql ssas_sps_mdx_hong_bingliHong-Bing Li
 
durga_resume
durga_resumedurga_resume
durga_resumedurga p
 
Joel Chamberlain Business Intelligence Portfolio
Joel Chamberlain Business Intelligence PortfolioJoel Chamberlain Business Intelligence Portfolio
Joel Chamberlain Business Intelligence Portfoliojwchamb
 
Sophia wang (2)
Sophia wang (2)Sophia wang (2)
Sophia wang (2)Dibakar27
 
Eugene Wabomnor Bi Portfolio
Eugene Wabomnor Bi PortfolioEugene Wabomnor Bi Portfolio
Eugene Wabomnor Bi Portfolioi661e21
 
SSIS Project Profile
SSIS Project ProfileSSIS Project Profile
SSIS Project Profiletthompson0421
 
Ssis2008 120710214348-phpapp02
Ssis2008 120710214348-phpapp02Ssis2008 120710214348-phpapp02
Ssis2008 120710214348-phpapp02sumitkumar3201
 
introductionofssis-130418034853-phpapp01.pptx
introductionofssis-130418034853-phpapp01.pptxintroductionofssis-130418034853-phpapp01.pptx
introductionofssis-130418034853-phpapp01.pptxYashaswiniSrinivasan1
 
Nicholas Dragon SQL Server Developer
Nicholas Dragon SQL Server DeveloperNicholas Dragon SQL Server Developer
Nicholas Dragon SQL Server DeveloperNicholas Dragon
 
Nicholas Dragon Sql Server Developer
Nicholas Dragon Sql Server DeveloperNicholas Dragon Sql Server Developer
Nicholas Dragon Sql Server DeveloperNicholas Dragon
 
Nicholas Dragon Sql Developer2
Nicholas Dragon Sql Developer2Nicholas Dragon Sql Developer2
Nicholas Dragon Sql Developer2Nicholas Dragon
 

Similar to Business Intelligence Portfolio (20)

Microsoft-business-intelligence-training-in-mumbai
Microsoft-business-intelligence-training-in-mumbaiMicrosoft-business-intelligence-training-in-mumbai
Microsoft-business-intelligence-training-in-mumbai
 
Ssis ssas sps_mdx_hong_bingli
Ssis ssas sps_mdx_hong_bingliSsis ssas sps_mdx_hong_bingli
Ssis ssas sps_mdx_hong_bingli
 
A Standardized Approach to SSIS Migration
A Standardized Approach to SSIS MigrationA Standardized Approach to SSIS Migration
A Standardized Approach to SSIS Migration
 
Ssis sql ssrs_ssas_sp_mdx_hb_li
Ssis sql ssrs_ssas_sp_mdx_hb_liSsis sql ssrs_ssas_sp_mdx_hb_li
Ssis sql ssrs_ssas_sp_mdx_hb_li
 
Ssis sql ssrs_sp_hb_li
Ssis sql ssrs_sp_hb_liSsis sql ssrs_sp_hb_li
Ssis sql ssrs_sp_hb_li
 
Ssis ssas sps_mdx_hong_bingli
Ssis ssas sps_mdx_hong_bingliSsis ssas sps_mdx_hong_bingli
Ssis ssas sps_mdx_hong_bingli
 
Ssis sql ssas_sps_mdx_hong_bingli
Ssis sql ssas_sps_mdx_hong_bingliSsis sql ssas_sps_mdx_hong_bingli
Ssis sql ssas_sps_mdx_hong_bingli
 
Ssis sql hb_li
Ssis sql hb_liSsis sql hb_li
Ssis sql hb_li
 
Ssis sql ssas_sps_mdx_hong_bingli
Ssis sql ssas_sps_mdx_hong_bingliSsis sql ssas_sps_mdx_hong_bingli
Ssis sql ssas_sps_mdx_hong_bingli
 
durga_resume
durga_resumedurga_resume
durga_resume
 
Joel Chamberlain Business Intelligence Portfolio
Joel Chamberlain Business Intelligence PortfolioJoel Chamberlain Business Intelligence Portfolio
Joel Chamberlain Business Intelligence Portfolio
 
Sophia wang (2)
Sophia wang (2)Sophia wang (2)
Sophia wang (2)
 
Eugene Wabomnor Bi Portfolio
Eugene Wabomnor Bi PortfolioEugene Wabomnor Bi Portfolio
Eugene Wabomnor Bi Portfolio
 
SSIS Project Profile
SSIS Project ProfileSSIS Project Profile
SSIS Project Profile
 
Ssis2008 120710214348-phpapp02
Ssis2008 120710214348-phpapp02Ssis2008 120710214348-phpapp02
Ssis2008 120710214348-phpapp02
 
Chandrasekhar_Resume
Chandrasekhar_ResumeChandrasekhar_Resume
Chandrasekhar_Resume
 
introductionofssis-130418034853-phpapp01.pptx
introductionofssis-130418034853-phpapp01.pptxintroductionofssis-130418034853-phpapp01.pptx
introductionofssis-130418034853-phpapp01.pptx
 
Nicholas Dragon SQL Server Developer
Nicholas Dragon SQL Server DeveloperNicholas Dragon SQL Server Developer
Nicholas Dragon SQL Server Developer
 
Nicholas Dragon Sql Server Developer
Nicholas Dragon Sql Server DeveloperNicholas Dragon Sql Server Developer
Nicholas Dragon Sql Server Developer
 
Nicholas Dragon Sql Developer2
Nicholas Dragon Sql Developer2Nicholas Dragon Sql Developer2
Nicholas Dragon Sql Developer2
 

Business Intelligence Portfolio

  • 1. Business Intelligence Portfolio Gary A. Thompson thompson2286@gmail.com (360) 241-3703
  • 2. Table Of Contents Project Overview T-SQL Samples SSIS – Integration Services SSAS – Analysis Services MDX Samples KPI’s, Excel Services SSRS – Reporting Services PPS – Performance Point Services
  • 3. Project Overview Introduction: This presentation displays examples of my work (code samples and development work) using the Microsoft Business Intelligence tools. Tools used: T-SQL 2005 MS SQL Server 2005 SQL Server Integration Services 2005 - SSIS SQL Server Analysis Services 2005 - SSAS Audience: Business Executives IT Managers Solution Providers Project Goals: Design and build a relational database schema populated by data from three different data sources. With different data types involved, performed Extract, Transform, and Load processes to prepare the data and load the tables. Each step was accompanied with a confirming email upon the success or failure of the job run. This process used SSIS in the SQL Services Management Studio, and T-SQL queries to extract the data. Design and build an OLAP database and cube using the data from the relational database to allow for detailed data searches using MDX queries. KPI’s allow a visual representation to be viewed showing a comparison between actual results and performance goals.
  • 4. T-SQL Samples T-SQL provides a means of extracting data from the relational database. Many of the queries we constructed were designed to verify the load process and to ensure the accuracy of the data within the various tables.
  • 5. T-SQL Samples Narrowing the selection criteria through the use of the logical “WHERE” helped ease validation of data by limiting the output to a more rigidly defined subset.
  • 6. SSIS – SQL Server Integration Services 2005 (Documentation) Ask most Developers and Analysts what their least favorite and yet most important task is on a project and the answer is usually documentation. Clear, concise, and accurate documentation is critical to the functioning of a project and even more important to maintaining systems on an ongoing basis. Each package requires it’s own documentation about authorship, purpose of the package, maintenance records, etc., and the overall project documentation is put in place to give an overview of the higher level requirements that are met and the roadmap of the packages within the project.
  • 7. SSIS – SQL Server Integration Services 2005 Project: AllWorks, Inc. (SSISStudentProject) Author: Gary A. Thompson Created Date: Oct. 1, 2009 Modified Date: Description: This project loads the AllWorksDBStudent database tables: Employees, EmployeeRates, County, Clients, ClientGroupings, Division, ClientGroupingsXClients, JobMaster, and JobTimesheets. The project involves the following packages: EmployeeMasterPackage: Loads Employee table from Employees.xls EmployeeRatesPackage: Loads EmployeeRates table from Employees.xls based on matching Employee table on EmployeePK. ClientMasterPackage: Loads Clients table from ClientGeographies.xls County table must load first, and be validated prior to loading Clients. SpecialGroupingsPackage: Loads ClientGroupings table from ClientGeographies.xls based on matching ClientPK in Clients table. Data is aggregated by grouping #. DivisionDefinitionsPackage: Loads Division table from ClientGeographies.xls ClientGroupingsXrefPackage: Loads ClientGroupingsXClients table from ClientGeographies.xls based on matching ClientPK in Clientstaable, and ClientGroupingsPK in ClientGroupings table. JobMasterPackage: Loads JobMaster table from ProjectMaster.xls JobTimesheetsPackage: Loads JobTimesheets table from ProjectMaster.xls based on matching JobMasterPK in JobMaster table and validating that the job is not closed prior to the workdate being submitted. These packages are included in the project (SSISStudentProject) and run from MasterPackage. Also included in the Master are four Database maintenance tasks: 1. Shrink the database. 2. Rebuild the DB indexes. 3. Update the database statistics. 4. Backup the database. Upon the successful completion of these tasks the MasterPackage processes through the above packages to load the tables. If the Database maintenance tasks fail, and email is sent indicating which task failed, and processing stops. Upon the completion of each package contained in the MasterPackage, an email is sent indicating the success or failure of the individual package run. Success emails contain a count of rows being inserted, changed, and invalid rows (where indicated in requirements). Invalid rows are written to a text file for review by the users.
  • 8. SSIS – SQL Server Integration Services 2005 The Control Flow provides a roadmap of the processes within the package, and also provides a step by step explanation of what the various processes will accomplish. This Control Flow shows the steps involved in a backup and maintenance process. Each step is dependent upon the successful completion of the prior step. The arrows here represent the path that the data takes and the order of execution of each process.
  • 9. SSIS – SQL Server Integration Services 2005 Through the use of script tasks we are able to extend the functionality Provided within SSIS to include customized processes that we define using Visual Basic for Access.
  • 10. SSIS – SQL Server Integration Services 2005 The Data Flow Task provides tools for extracting, transforming, and loading data from various data sources. The Conditional Split shown here directed the flow of data into different output files or databases based on specified criteria.
  • 11. SSIS – SQL Server Integration Services 2005 SSIS provides a graphical interface to help give a visual representation of the steps being taken. Each symbol represents a data source, a transformation process, or an output destination. The arrows are data pipelines that show the flow of data from one point to another.
  • 12. SSIS – SQL Server Integration Services 2005 Containers allow for the use of iterative processes. In this case, when this process completes an email indicting the success of failure of the process is sent to the defined user group.
  • 13. SSIS – SQL Server Integration Services 2005 I’ve used a legend to identify abbreviations which identify the data as it moves through the various steps. Consistency keeps errors at a minimum and allows for ease in debugging when things go wrong.
  • 14. SSIS – SQL Server Integration Services 2005 Using annotation to label the components and data flow assists in giving a quick idea of what takes place, without going into great detail.
  • 15. SSAS – SQL Server Analysis Services 2005 Good design leads to a well functioning cube structure. Verifying the relationships, ensuring that the naming will display properly for the end user, and referencing keys is all part of good design.
  • 16. SSAS – SQL Server Analysis Services 2005 The structure of this cube contains four fact tables and nine total dimensions.
  • 17. SSAS – SQL Server Analysis Services 2005 Relationships are verified in the Cube Structure area and confirmed in the Dimension Usage area.
  • 18. SSAS – SQL Server Analysis Services 2005 Calculations are added in the SSIS interface in much the same manner as they Calculated Members are built in MDX. This calculation allows for a default value to be inserted in the event of a null value.
  • 19. SSAS – SQL Server Analysis Services 2005 Building calculations help in the readability of KPI’s and allows for their reuse in other areas. Additionally, modularity of code makes for ease of maintenance.
  • 20. SSAS – SQL Server Analysis Services 2005 KPI’s (Key Performance Indicators) are designed to allow the end user a quick graphical representation of how their area is measuring against their goals. They also can be used for forecasting based on trend analysis.
  • 21. SSAS – SQL Server Analysis Services 2005 The databases are partitioned at 50% in a MOLAP format (Multi-Dimensional OLAP) and are divided by year.
  • 22. MDX: Multi-Dimensional Queries Multi- MDX gives us a means for querying a cube structure, grabbing data from various dimension tables to use in slicing the facts. This query determines the labor rate for employees on a project based on their hours worked and the total labor for the project.
  • 23. MDX: Multi-Dimensional Queries Multi- Another query uses the Generate command to create a subset of data from different sources, then uses this newly defined subset to organize the data for output.
  • 24. MDX: Multi-Dimensional Queries Multi- Using a calculated member in this query provides formatting for data fields that contain null values.
  • 25. MDX: Multi-Dimensional Queries Multi- Although this Query itself was not long, It required documentation to provide others with a clear idea of its purpose and function.
  • 26. MDX: Multi-Dimensional Queries Multi- The use of multiple calculated members expanded the functionality of the query, while simplifying the code for greater readability.
  • 27. KPI’s – Key Performance Indicators For this project, I developed several KPI’s to give the business users a quick visual summary of the performance of selected measures against a particular goal. While KPI’s can also be used for forecasting, job requirements did not call for such measurements.
  • 28. KPI’s – Key Performance Indicators This KPI show the increase in overhead expenses against a goal of 15% being acceptable. The goals are defined as good, marginal, and unacceptable, using a traffic light symbol to indicate the status. Green is good, yellow is marginal, and red is unacceptable.
  • 29. KPI’s – Key Performance Indicators The KPI’s are displayed here in Microsoft Excel. This allows users to see performance measures without requiring any special installation of software for viewing. I created a pivot table to hold the data and KPI information.
  • 30. KPI’s – Key Performance Indicators The beauty of using KPI’s in pivot tables to display progress is that the measures can be adjusted on the fly. This allows the user to select a different way to slice the data to meet their needs.
  • 31. SSRS- SQL Server Reporting Services 2005 Reports are built to display information about how a company is performing with regard to specific goals. In this example, if the percentage of increased overhead expense exceeds a certain level, the value is displayed in red to supply a quick visual representation of company expenditures.
  • 32. SQL Server Reporting Services 2008 This is a parameter driven report that provides a look at several previous months production. Depending on selection criteria, the header information changes to match the selections based on using report items within the body of the tablix. Footer information is developed using calculations based on report items in the body of the report.
  • 33. SQL Server Reporting Services 2008 This report runs on a group level and is navigated using a document map on the top level group to create a table of contents in the PDF file. Each item in the table is a separate report based on the groupings built in the master report. The charts are incorporated in the tablix header so that they consistentl ymatch the data in the tablix with regard to selection group. Shading of alternate lines is based on the producer level changing, not simply every other line in a different color.
  • 34. PPS- Performance Point Services 2007 Graphs and charts come in a variety of shapes and sizes to accommodate all types of reports. Line charts give a comparison of two or more measures in an easy to read manner.
  • 35. PPS- Performance Point Services 2007 Different types of charts are combined to display different values being tracked. This chart represents the percentage of profit for an organization and the performance broken down by county.
  • 36. PPS- Performance Point Services 2007 Scorecards and dashboards can be displayed in many fashions. One popular style of dashboard displays as a traffic signal, with green representing progress ahead of goal, yellow being a marginal area near goal, and red indicating being below target.