2. Who Am I?
Team Lead: Microsoft Business Intelligence Practice
Corporate Trainer on Microsoft Business Intelligence 2005/2008
Microsoft Certified in SQL Server 2008, Business Intelligence
Development and Maintenance
Member of Pune User Group
Active contributor in number of online user group related to
Microsoft Business Intelligence & .NET
Monday, January 11, 2010
3. Prerequisites for Business Intelligence 2005
Knowledge of RDBMS
Experience with SQL Server
Familiarity with database analytics
Familiarity with database reports
.NET Scripting with VB.NET
Monday, January 11, 2010
4. MCTS certifications on Microsoft SQL Server 2005
Exam 70-431
TS: Microsoft SQL Server 2005, Implementation and
Maintenance
Exam 70-445
TS: Microsoft SQL Server 2005, Business Intelligence
Development and Maintenance
Monday, January 11, 2010
5. Exam 70-445
Microsoft Certified Technology Specialist (MCTS)
(70-445)SQL Server 2005: Business Intelligence Development
1,088 only professionals
(70-431)SQL Server 2005…………………………………..
27,526 professionals
Monday, January 11, 2010
7. What is Business Intelligence
Business Intelligence (BI) is about getting the right information, to
the right decision makers, at the right time.
BI is an enterprise-wide platform that supports reporting, analysis
and decision making.
BI leads to:
fact-based decision making
―single version of the truth‖
BI includes reporting and analytics.
Monday, January 11, 2010
8. What is Business Intelligence
Enterprise Business Intelligence
– Enterprise business intelligence involves deploying query, reporting, and analysis
capabilities to all employees who can benefit from them as well as to customers and
suppliers.
Search BI
– BI search applies keyword search capabilities to structured data and BI reports, making
it possible for users to find reports, generate queries, and find related analyses with a
simplified user interface.
Data Governance
– Data governance describes the people, processes, and technology needed to ensure
consistent definitions and rules for commonly used data elements.
Performance Management
– Performance management uses business intelligence tools to monitor and manage
progress toward achieving strategic objectives and goals represented in budgets and
other plans.
Predictive Analytics
– Predictive analytics uses analytical models based on statistical and machine-learning
algorithms to describe or predict patterns within large volumes of data to help
companies better anticipate events and behavior.
Monday, January 11, 2010
9. Why BI? The Five Questions
• What happened?
Past
• What is happening?
• Why did it happen?
Present
• What will happen?
• What do I want to happen?
Future
Data Black
ERP CRM SCM 3Pty
books
Monday, January 11, 2010 9
10. Common Pain Points...
Data everywhere, information no where
Different users have different needs
Excel versus PDF
Pull versus push
On demand – on schedule
Your format – my format
Takes too long – wasted resources/efforts
Security
Technical ―mumbo jumbo‖ … Why I just can’t get it to you when you
want it.
Monday, January 11, 2010
11. Microsoft Business Intelligence Vision
Improving organizations by
providing business insights
to all employees leading to
better, faster, more
relevant decisions
Advanced Analytics
Self Service Reporting
End-User Analysis
Business Performance Management
Operational Applications
Embedded Analytics
Monday, January 11, 2010
12. Business Intelligence Overview
―A category of applications and technologies for gathering, storing, analyzing, sharing and providing
access to data to help enterprise users make better business decisions‖
Analyzing Reporting
Drill down, exception reports, root- Detailed operational data
cause analysis, multidimensional
Sharing standardized reports
analysis
Monitoring ?
Dashboards, scorecards and alerts
Planning
Create plans, models and scenarios, which are then fed back into the monitoring
layer and encoded as targets and thresholds.
Monday, January 11, 2010
13. SQL Server 2005 Business Intelligence
Integrate Analyze Report
Data acquisition from Data enrichment Data presentation
source systems and with business logic; and distribution
integration hierarchical views Data access for
Data transformation Data discovery the masses
and synthesis through data mining
15. SQL Server Database Management
SQL Server Relational Database – provides a robust, scalable and
enterprise-ready Data Warehouse platform. Microsoft SQL Server
2005 has improved partitioning, manageability, and query
optimizations to streamline data warehouse operations and increase
performance.
Many Business Solutions and systems currently use this database.
Business Intelligence Platform
Analysis Services Reporting Services
SQL 2005
Integration Services Database Management
Monday, January 11, 2010
16. SQL Server Integration Services
Provides functionality commonly referred to as Extract, Transform,
Load (ETL).
Moves and transforms data between sources and destinations,
regardless of format.
Cleanses data and ensures data integrity.
Integrates heterogeneous data sources.
Business Intelligence Platform
Analysis Services Reporting Services
SQL 2005
Integration Services Database Management
Source: 2007 Microsoft® Office System Business Intelligence Integration, White Paper, February 1, 2007, Anthony T.
Mann
Monday, January 11, 2010
17. SQL Server Analysis Services
Allows for Online Analytical Processing (OLAP), commonly
referred to as ―cubes‖.
Includes advanced analytical features such as complete data
mining and key performance indicator frameworks.
Enables organizations to accommodate multiple analytic needs
within one solution.
Business Intelligence Platform
Analysis Services Reporting Services
SQL 2005
Integration Services Database Management
Monday, January 11, 2010
18. SQL Server Reporting Services
Provides a complete reporting platform so that end-users can view
data using a Web browser or desk top.
Includes report authoring tools for both technical developers and
business users.
Allows web-based viewing and rendering in popular document
formats such as Microsoft Excel and PDF.
Contains robust e-mail subscription capability.
Business Intelligence Platform
Analysis Services Reporting Services
SQL 2005
Integration Services Database Management
Monday, January 11, 2010
19. Drive Corporate Performance
Purpose to Business Intelligence
―You can’t manage what you can’t measure.
You can’t measure what you can’t describe‖
Microsoft Business Intelligence is a complete offering that enables all
decision makers to drive increased business performance.
Monday, January 11, 2010
20. Microsoft Business Intelligence
Portal
(SharePoint/ASP.NET Site)
End-user
Tools End-user Analysis
(Excel)
Integrate Analyze Report
Technical
Layer
Data Warehouse
End user tools Business Intelligence Platform
Monday, January 11, 2010
22. Data integration without SSIS
Alerts & escalation
ETL Data mining
Call centre data: semi structured Text Mining Staging
Staging
Warehouse
ETL
Hand
Legacy data: binary files
coding
Cleansing
&
ETL Reports
ETL Staging
Application database Mobile
data
•Integration and warehousing require separate, staged, operations.
•Preparation of data requires different, often incompatible, tools.
•Reporting and escalation is a slow process, delaying smart responses.
•Heavy data volumes make this scenario increasingly unworkable.
Monday, January 11, 2010
23. Data Integration with SSIS
Alerts & escalation
Text mining Data mining Mobile
components components data
Call centre:
semi-structured data
Custom Merges
source
Warehouse
Legacy data: binary files
Standard Data cleansing
sources components
Reports
Application database SQL Server Integration Services
•Integration and warehousing are a seamless, manageable, operation.
•Source, prepare and load data in a single, auditable process.
Now let’s explore solutions built on the SSIS platform
Monday, January 11, 2010
24. What is SSIS?
SQL Server Integration Services (SSIS) is a component of
Microsoft SQL Server 2005 and 2008.
Replaces DTS- Data Transformation Services.
Primary use is data warehousing :has flexible tool for data
extraction, transformation, and loading (ETL).
Also used to automate maintenance of SQL Server databases,
update multidimensional cube data, and perform other functions
Monday, January 11, 2010
25. SSIS Overview
SQL Server Integration Services (SSIS) is a set of tools and
technologies that enable users and programmers to:
– Import data from a variety of sources into a database
– Export data from a database to a variety of targets
– Perform data mining and warehousing tasks such as:
Extract subsets or samples of database content for further
analysis (e.g., marketing research)
Combine data in multiple databases or tables into a single
database or table
Modify existing data using complex rules
Monday, January 11, 2010
26. SSIS Components
SSIS has two broad groups of components
– Server-Side
Extensions to the DBMS that enable advanced SSIS
tasks (simpler tasks are supported on most DBMSs via
standard drivers and SQL commands)
Extensions are ―invisible‖ to the user/programmer unless
they’re absent or incorrectly installed
Monday, January 11, 2010
27. SSIS Components
– Client-Side
Software components for both low-level and high-level
integration tasks
Interfaces to data sources (e.g., spreadsheets, text files,
and various DBMSs)
Interfaces to data destinations
A toolkit (Visual Studio 2005 plus required components
and templates) that enables users/programmers to
combine components and interfaces to accomplish
specific high-level tasks
Monday, January 11, 2010
30. More on Integration Services as service
Starting remote and locally stored packages
Stopping remote and locally running packages
Monitoring remote and locally running packages
Importing and exporting packages
Managing package storage
Customizing storage folders
Stopping running packages when the service is stopped
Viewing the Windows Event log
Connecting to multiple Integration Services servers
Monday, January 11, 2010
31. SSIS Control Flow
SSIS a workflow is called a Control Flow.
A Control Flow links together our modular Data Flows as a series
of operations in order to achieve a desired result.
A Control Flow consists of one or more tasks and containers that
execute when the package runs.
Monday, January 11, 2010
32. Control Flow Elements
SQL Server 2005 Integration Services (SSIS) provides three
different types of control flow elements:
– Containers
Provide structures in packages
– Tasks
Provide functionality
– Precedence Constraints
Connect the executables, containers, and tasks into an
ordered control flow
Monday, January 11, 2010
33. Control Flow Elements
The Integration Services architecture supports the nesting of containers,
and a control flow can include multiple levels of nested containers
Monday, January 11, 2010
34. Containers
Containers provide structure in packages and services to tasks
in the control flow. Integration Services includes the following
container types, for grouping tasks and implementing repeating
control flows
– The Foreach Loop container enumerates a collection and
repeats its control flow for each member of the collection.
– The For Loop container repeats its control flow until a
specified expression evaluates to False.
– The Sequence container lets you define a subset of the
control flow within a container and to manage tasks and
containers as a unit
Monday, January 11, 2010
35. Tasks
Tasks do the work in packages. Integration Services includes
tasks for performing a variety of functions.
– The Data Flow task defines and runs data flows that extract
data, apply transformations, and load data.
– Data preparation tasks copy files and directories, download
files and data, save data returned by Web methods, or work
with XML documents.
– Workflow tasks communicate with other processes to run
packages or programs, send and receive messages between
packages, send e-mail messages, read Windows
Management Instrumentation (WMI) data, or watch for WMI
events.
Monday, January 11, 2010
36. Tasks
– SQL Server tasks access, copy, insert, delete, or modify SQL
Server objects and data.
– Analysis Services tasks create, modify, delete, or process
Analysis Services objects.
– Scripting tasks extend package functionality through custom
scripts.
– Maintenance tasks perform administrative functions, such as
backing up and shrinking SQL Server databases, rebuilding
and reorganizing indexes, and running SQL Server Agent
jobs.
Monday, January 11, 2010
37. Types of Tasks
Integration Services includes the following types of tasks.
– Data Flow Task
– Data Preparation Tasks
– Workflow Tasks
– SQL Server Tasks
– Scripting Tasks
– Analysis Services Tasks
– Maintenance Tasks
– Custom Tasks
Monday, January 11, 2010
38. Precedence Constraints
Precedence constraints connect containers and task in packages
into an ordered control flow.
You can control the sequence execution for tasks and
containers, and specify conditions that determine whether tasks
and containers run.
Monday, January 11, 2010
39. Data Flow Elements
The task that runs data flows to extract data, apply column level
transformations, and load data.
Provides three different types of data flow components:
– Sources
Extract data from data stores such as tables and views in
relational databases, files, and Analysis Services databases
– Transformations
Modify, summarize, and clean data.
– Destinations.
Load data into data stores or create in-memory datasets.
Monday, January 11, 2010
41. Data Preparation Tasks
The tasks that copy files and directories, download files and
data, execute Web methods, and apply operations to XML
documents.
– File System Task
– FTP Task
– Web Service Task
– XML Task
Monday, January 11, 2010
42. Workflow Tasks
The tasks that communicate with other processes to run
packages, run programs or batch files, send and receive
messages between packages, send e-mail messages, read
Windows Management Instrumentation (WMI) data, and watch
for WMI events.
– Execute Package Task
– Execute DTS 2000 Package Task
– Execute Process Task
– Message Queue Task
– Send Mail Task
– WMI Data Reader Task
– WMI Event Watcher Task
Monday, January 11, 2010
43. SQL Server Tasks
The tasks that access, copy, insert, delete, and modify SQL
Server objects and data.
– Bulk Insert Task
– Execute SQL Task
– Transfer Database Task
– Transfer Error Messages Task
– Transfer Jobs Task
– Transfer Logins Task
– Transfer Master Stored Procedures Task
– Transfer SQL Server Objects Task
Monday, January 11, 2010
44. Scripting Tasks
The tasks that extend package functionality by using scripts.
– ActiveX Script Task
– Script Task
Monday, January 11, 2010
45. Analysis Services Tasks
The tasks that create, modify, delete, and process Analysis
Services objects.
– Analysis Services Processing Task
– Analysis Services Execute DDL Task
– Data Mining Query Task
Monday, January 11, 2010
46. Maintenance Tasks
The tasks that perform administrative functions such as backing
up and shrinking SQL Server databases, rebuilding and
reorganizing indexes, and running SQL Server Agent jobs.
– Back Up Database Task
– Check Database Integrity Task
– Execute SQL Server Agent Job Task
– Execute T-SQL Statement Task
– History Cleanup Task
– Notify Operator Task
– Rebuild Index Task
– Reorganize Index Task
– Shrink Database Task
– Update Statistics Task
Monday, January 11, 2010
47. Custom Tasks
You can write custom tasks using a programming language that
supports COM, such as Visual Basic, or a .NET programming
language, such as C#.
Third Party Custom Controls
Monday, January 11, 2010
48. Integration Services Connections
SSIS packages use connections to perform different tasks and to
implement Integration Services features.
– Connecting to source and destination data stores such as
text, XML, Excel workbooks, and relational databases to
extract and load data.
– Connecting to relational databases that contain reference
data to perform exact or fuzzy lookups.
– Connecting to relational databases to run SQL statements
such as SELECT, DELETE, and INSERT commands and
also stored procedures.
– Connecting to SQL Server to perform maintenance and
transfer tasks such as backing up databases and transferring
logins.
Monday, January 11, 2010
49. Integration Services Connections
– Writing log entries in text and XML files and SQL Server 2005
tables and package configurations to SQL Server 2005
tables.
– Connecting to SQL Server to create temporary work tables
that some transformations require to do their work.
– Connecting to Analysis Services projects and databases to
access data mining models, process cubes and dimensions,
and run DDL code.
– Specifying existing or creating new files and folders to use
with Foreach Loop enumerators and tasks.
– Connecting to message queues and to Windows
Management Instrumentation (WMI), SQL Server
Management Objects (SMO), Web, and mail servers.
Monday, January 11, 2010
50. Connection Managers
A connection manager is a logical representation of a connection
The following table lists the connection manager types.
– ADO
– ADO.NET
– EXCEL
– FILE
– FLATFILE
– FTP
– MSOLAP90
– OLEDB
– ODBC
– SMTP
– Many more…..
Monday, January 11, 2010
52. Integration Services Variables
Variables store values that SSIS package and its containers,
tasks, and event handlers can use at run time.
The scripts in the Script task and the Script component can also
use variables
You can use variables in Integration Services packages for the
following purposes:
Monday, January 11, 2010
53. Example of SSIS Variable & Script Task
DEMO
Monday, January 11, 2010
54. Package Configuration
SQL Server 2005 Integration Services (SSIS) provides package
configurations that you can use to update the values of
properties at run time.
Package configurations provide the following benefits:
– Configurations make it easier to move packages from a
development environment to a production environment.
– Configurations are useful when you deploy packages to
many different servers.
– Configurations make packages more flexible.
Monday, January 11, 2010
55. Package Configuration Types
XML Configuration File
An XML file contains the configurations. The XML file can include
multiple configurations.
Environment Variable
An environment variable contains the configuration.
Registry Entry
A registry entry contains the configuration.
Parent Package Variable
A variable in the package contains the configuration. This
configuration type is typically used to update properties in child
packages.
SQL Server Table
A table in a SQL Server database contains the configuration.
The table can include multiple configurations.
Monday, January 11, 2010
56. Deployment of Packages
There are two steps in the package deployment process:
– The first step is to build the Integration Services project to
create a package deployment utility.
– The second step is to copy the deployment folder that was
created when you built the Integration Services project to the
target computer, and then run the Package Installation
Wizard to install the packages
Monday, January 11, 2010
57. SQL Server 2005 Integration Services
Questions…?
Monday, January 11, 2010
59. Why OLAP and Data Mining Matter
Powerful business information modeling
Cross platform data integration
Integrated Relational & OLAP views
The best of MOLAP to ROLAP
Data enrichment and advanced analytics
Key Performance Indicators and Perspectives
Real-time, high performance
– Real-time data in OLAP Cubes
– Very fast and flexible analytics
XML standards for Data Access and Web Services integration
Cost and time savings for customers integrating with other
systems
Monday, January 11, 2010
60. What Is Analysis Services?
Spreadsheets
SQL Analysis
Server Datamart Services
XML/A or ODBO
BI Front Ends
Teradata
DW UDM
Ad Hoc Reports
Rich Reports
Oracle Cache
DB2 LOB
Dashboards
Monday, January 11, 2010
61. What Is Analysis Services? - Notes
Spreadsheets
SQL Analysis
Server Datamart Services
XML/A or ODBO
BI Front Ends
Teradata
DW UDM
Ad Hoc Reports
Rich Reports
Oracle Cache
DB2 LOB
Dashboards
Monday, January 11, 2010
62. Analysis Services - High-level Architecture
Analysis
SQL Services
Server Data mart
UDM
Teradata
XML/A or ODBO
DW
Oracle
DB2 LOB
Cache
Monday, January 11, 2010
63. One Version of the Truth - Notes
• Multiple enterprise data sources
• Single business view of the data
• Common business terminology
• Unified data navigation experience
• One version of business analytics
OLAP browser, Reporting Services, BI apps
Monday, January 11, 2010
64. New Analytics Platform
Unified Dimensional Model
Powerful business information modeling
Cross platform data integration
Integrated Relational & OLAP views
KPIs & Perspectives
Proactive caching
Real-time data in OLAP Cubes
Very fast and flexible analytics
Business Intelligence Enhancements
Auto generation of time and other dimensions based on type
KPIs, MDX scripts, translations, currency…
Monday, January 11, 2010
65. Analysis Services Objects
Analysis Services (SSAS) instance contains database objects
and assemblies for use with online analytical processing (OLAP)
and data mining.
– Databases contain OLAP and data mining objects
Data Sources
Data Source Views
Cubes
Measures
Measure Groups
Dimensions
Attributes
Hierarchies
Mining Structures
Mining Models
Roles.
Monday, January 11, 2010
66. Analysis Services Objects
Assemblies contain user-defined functions that extend the
functionality of the intrinsic functions provided with the
– Multidimensional Expressions (MDX) Language
– Data Mining Extensions (DMX) Language
Monday, January 11, 2010
67. Data Sources
Represents a connection to a data source and contains the
connection string that defines how Analysis Services connects to
a physical data store using a managed Microsoft .NET
Framework or native OLE DB provider.
The connection string contains server name, database, security,
timeout, and other connection-related information
Monday, January 11, 2010
69. Data Source Views
A data source view contains the logical model of the schema
used by Analysis Services database objects—namely cubes,
dimensions, and mining structures.
A data source view is the metadata definition, stored in an XML
format, of these schema elements used by the Unified
Dimensional Model (UDM) and by the mining structures
Monday, January 11, 2010
70. Data Source Views
Contains the metadata that represents selected objects from one
or more underlying data sources, or the metadata that will be
used to generate an underlying relational data store. For more
information, see Working with Relational Schemas, and Working
with Data Sources (Analysis Services).
Can be built over one or more data sources, letting you define
OLAP and data mining objects that integrate data from multiple
sources.
Can contain relationships, primary keys, object names,
calculated columns, and queries that are not present in an
underlying data source and which exist separate from the
underlying data sources.
Is not visible to or available to be queried by client applications.
Monday, January 11, 2010
72. Dimensions
Dimensions are a fundamental component of cubes.
Dimensions organize data with relation to an area of interest,
such as customers, stores, or employees, to users.
Dimensions in Analysis Services contain attributes that
correspond to columns in dimension tables.
These attributes appear as attribute hierarchies and can be
organized into user-defined hierarchies, or can be defined as
parent-child hierarchies based on columns in the underlying
dimension table.
Monday, January 11, 2010
73. Dimensions
Dimensions exist independent of a cube, can be used in multiple
cubes, can be used multiple times in a single cube, and can be
linked between Analysis Services.instances.
A dimension that exists independent of a cube is called a
database dimension and an instance of a database dimension
within a cube is called a cube dimension.
Monday, January 11, 2010
74. Dimension based on a Star Schema Design
The structure of a dimension is largely driven by the structure of
the underlying dimension table or tables.
The simplest structure is called a star schema, where each
dimension is based on a single dimension table that is directly
linked to the fact table by a primary key - foreign key relationship.
Monday, January 11, 2010
75. Dimension based on a Snowflake Schema Design
Frequently, a more complex structure is required because
information from multiple tables is required to define the
dimension.
In this structure, called a snowflake schema, each dimension is
based on attributes from columns in multiple tables linked to
each other and ultimately to the fact table by primary key -
foreign key relationships
Monday, January 11, 2010
77. User-Defined Hierarchies
User-defined hierarchies are user-defined hierarchies of
attributes that are used in Microsoft SQL Server 2005 Analysis
Services to organize the members of a dimension into
hierarchical structures and provide navigation paths in a cube.
For example, the following table defines a dimension table for a
time dimension.
– The dimension table supports three attributes
Year
Quarter
Month.
Monday, January 11, 2010
78. Dimension Translations
Dimension translation is a language-specific representation of
the name of a dimension, the name of an Analysis Services
object or one of its members, such as a caption, member, or
hierarchy level.
Translations provide server support for client applications that
can support multiple languages.
Frequently, users from different countries view a cube and its
dimensions. It is useful to be able to translate various elements
of a cube and its dimensions into a different language so that
these users can view and understand the cube
Monday, January 11, 2010
79. Processing a Dimension
After you create a dimension, you must process the dimension
before you can view the members of the attributes and
hierarchies in the dimension.
After the structure of a dimension is changed or the information
in its underlying tables is updated, you have to process the
dimension again before you can view the changes. When you
process a dimension after structural changes, you must also
process any cubes that include the dimension - or the cube will
not be viewable.
Monday, January 11, 2010
81. Cubes
A cube is a set of related measures and dimensions that is used
to analyze data.
A measure is a fact, which is a transactional value or
measurement that a user may want to aggregate. Measures are
sourced from columns in one or more source tables, and are
grouped into measure groups.
A dimension is a group of attributes that represent an area of
interest related to the measures in the cube, and which are used
to analyze the measures in the cube.
Attributes are sourced from columns in one or more source
tables. The attributes within each dimension can be organized
into hierarchies to provide paths for analysis.
Monday, January 11, 2010
82. Introduction to Cubes
A cube is defined by its measures and dimensions.
The measures and dimensions in a cube are derived from the
tables and views in the data source view on which the cube is
based, or which is generated from the measure and dimension
definitions.
Monday, January 11, 2010
83. Measures and Measure Groups
A measure represents a column that contains quantifiable data,
usually numeric, that can be aggregated.
A measure is generally mapped to a column in a fact table.
You can also define a measure as a calculated member by using
a Multidimensional Expressions (MDX) to provide a calculated
value for a measure based on other measures in the cube.
Calculated members add flexibility and analysis capability to a
cube in Analysis Services
Monday, January 11, 2010
84. Measures and Measure Groups
In a cube, measures are grouped by their underlying fact tables
into measure groups.
Measure groups are used to associate dimensions with
measures.
Measure groups are also used for measures that have distinct
count as their aggregation behavior.
Placing each distinct count measure into its own measure group
optimizes aggregation processing
Monday, January 11, 2010
85. Attribute Columns
The fact table contains two basic types of columns: attribute
columns and measure columns.
Attribute columns are used to create foreign key relationships to
dimension tables, so that the quantifiable data in the measure
columns can be organized by the data contained in the
dimension tables.
Attribute columns are also used to define the granularity of a fact
table and its measure group.
Measure columns define the measures contained by a measure
group
Monday, January 11, 2010
89. Questions Needing Answers
What is Reporting Services?
Why Reporting Services?
Comparisons to Other Reporting Tools
How is RS licensed? What does RS cost?
How does RS work with Other Database?
Hardware and Software Requirements and Configurations
How to Create and Deploy reports?
How it embed Reporting Services into other application?
Monday, January 11, 2010
90. What is Reporting Services?
SQL Server 2005 Reporting Services is a server-based reporting
platform that you can use to create and manage tabular, matrix,
graphical, and free-form reports that contain data from relational and
multidimensional data sources. The reports that you create can be
viewed and managed over a World Wide Web-based connection.
Reporting Services includes the following core components:
– A complete set of tools that you can use to create, manage,
and view reports.
– A Report Server component that hosts and processes reports
in a variety of formats. Output formats include HTML, PDF,
TIFF, Excel, CSV, and more.
– An API that allows developers to integrate or extend data and
report processing in custom applications, or create custom
tools to build and manage reports.
Monday, January 11, 2010
91. Why Reporting Services?
Supports a wide range of common data sources, such as OLE
DB and Open Database Connectivity (ODBC),
Multiple output formats such as familiar Web browsers and
Microsoft Office System applications.
Implements a flexible, role-based security model to protect
reports and reporting resources with Active Directory.
Provides Web Service interface to interact/embed with other
applications
Using Microsoft Visual Studio .NET and the Microsoft .NET
Framework, developers can leverage the capabilities of their
existing information systems and connect to custom data
sources, produce additional output formats, and deliver to a
variety of devices.
Monday, January 11, 2010
92. With Active Directory – Report Execution
Active Directory
OLE DB/ODBC (Account +
Authorization)
Reporting Services
Users
Monday, January 11, 2010
94. Reporting Life Cycle
Reporting platforms can be evaluated by their support for the
following areas—authoring, management, and delivery.
Monday, January 11, 2010
95. Reporting Life Cycle - Authoring
The authoring phase is concerned with the actual development.
Authoring generally includes the following features:
– Connecting to a data source
– Writing database queries
– Creating report layout
– Creating report parameters
– Setting report properties such as height and width
These capabilities are important for the initial development of the
report. They must be flexible enough to handle diverse reporting
needs and structured enough to be easy to use.
Monday, January 11, 2010
96. Reporting Life Cycle - Management
After developing the report, you move into the management
phase, which is concerned with setting properties of reports
specific to the production environment. These properties include:
– Data source connection information
– Default parameter values
– Security permissions
– Report caching
– Report execution schedules
– Report delivery schedules
Management phase is generally performed by the administrators.
Most of the user access to reports is defined in this phase.
Monday, January 11, 2010
97. Reporting Life Cycle - Delivery
The delivery phase looks at how reports get to the end users.
Delivery includes:
– Providing an end user interface for browsing reports
– Publishing reports on a specific schedule
– Delivering reports to end users
A common concept in reporting platforms is push/pull delivery.
Push delivery constitutes the reports that are sent to the user.
Pull delivery constitutes reports that can be accessed on-
demand by the user . Users are required to take the effort to get
the report information. The report could be emailed to the
requestor of the report, or published to a specified file share.
Monday, January 11, 2010
98. Reporting Needs
Enterprise Reporting
Using Reporting Services, corporate IT staff can design a
variety of reports and deploy them to individuals throughout
the enterprise.
Ad-hoc Reporting
New ad-hoc reporting tool that enables business users to
create their own reports and explore corporate data without
deep technical understanding of the underlying data sources.
Embedded Reporting
Access predefined or ad-hoc reports from third-party
applications that use Reporting Services and use these
reports as-is, customize them, or create new ones for specific
business needs.
Web-based Reporting
Web-based reports to deliver information to customers or
partners over intra-net or the Internet.
Monday, January 11, 2010
99. Comparisons to Other Reporting Tools
We will take at simple comparison with Crystal Reports
Feature Crystal Reports XI Reporting Services
Version 11.0 1.0
File Format Binary (.RPT) XML (.RDL)
Uses SDKs to access objects Editable with Notepad
Designer Interface Banded Object based
License Cost Need to purchase CR Server Free with SQL Server 2005
Data Connectivity Single point of entry Shared data sources
Table Object Not Supported Supported
Formatting Precise HTML focused
Formula Library 50+ financial functions 13 financial functions
4 dozen date functions Half dozen date functions
Sub-reports One level deep 20 levels deep
Object based reporting improves on sub-
reports
Monday, January 11, 2010
100. SQL Server License
SQL Server License includes all following features
RDBMS;
OLAP/Data warehouse;
Management Tools;
Integrated Security;
Reporting Services;
Notification Services;
More…
These features are not priced separately
Monday, January 11, 2010
101. Hardware and Software Requirements
The hardware system requirements for Reporting Services are
very similar to those for SQL Server.
Hardware Requirements
– Processor
Pentium III-compatible processor or higher
Minimum: 600 MHz Recommended: 1 GHz or higher
– RAM
Minimum: 512 MB
Recommended: 1 GB or more
Maximum: Operating system maximum
– Disk Space requirement for Reporting Services and Report
Manager is 120 MB
Monday, January 11, 2010
102. Hardware and Software Requirements Cont.....
Software Requirements
– Microsoft Windows 2000, 2003 & XP
– SQL Server 2005
(Reporting Services components installed)
– Internet Information Server (IIS) 5.0 +
– Microsoft Framework 2.0
Monday, January 11, 2010
103. Reporting Services Configuration
Default Configuration will place the Report Manager, Reporting
Services, and the Report Server database on the same physical
server, but this configuration is not a requirement. These
components may be installed on three separate servers.
The Report Server and the Report Manager servers must be
running Internet Information Services (IIS) 5.0 or higher with
ASP.NET, and the .NET Framework 2.0 or higher. The Report
Server Database requires any edition of SQL Server 2005.
Monday, January 11, 2010
105. Reporting Services Configuration Cont.....
To configure a Reporting Services, you must have the
following:
– Local system administrator permissions on the computer that
hosts the report server you want to configure. If you are
configuring a remote computer, you must have local system
administrator permissions on that computer as well.
– You must have permission to create databases on the SQL
Server Database Engine used to host the report server
database.
Monday, January 11, 2010
106. Reporting Services Configuration Cont.....
Server Status
– This verify the status of the Report Server Windows Service
Create and Configure Virtual Directories
– The Report Server and Report Manager are ASP.NET applications
accessed through URLs. The Report Server URL provides access
to the Simple Object Access Protocol (SOAP) endpoints of the
report server.
– The Report Manager URL is used to launch Report Manager.
Each URL includes a virtual directory that you specify in the
Reporting Services Configuration tool. You can choose the default
Web site or another Web site for the virtual directories.
Configure Service Accounts
– Reporting Services requires service accounts to run the Report
Server Web service and Microsoft Windows service.
– Web Service cannot be configured on XP & 2000 Servers.
Monday, January 11, 2010
107. Reporting Services Configuration Cont.....
Create and Configure the Report Server Database
– The report server is a stateless server that requires a SQL Server
database for internal storage.
– We can use the Reporting Services Configuration tool to create and
configure a connection to the report server database.
Manage Encryption Keys and Initialization
– Reporting Services uses a symmetric key to encrypt and decrypt
sensitive data such as stored credentials and database connection
information.
Configure E-Mail Delivery
– Reporting Services includes a report server e-mail delivery
extension that allows report subscribers to get reports delivered to
an electronic mailbox.
Monday, January 11, 2010
109. Report Features
Relational, multidimensional, and XML data sources
Create reports that use relational and multidimensional data from
SQL Server and Analysis Services. .NET Framework data providers
to get data from Oracle and other databases. ODBC and OLE DB
providers are also supported. XML data processing extension to
retrieve data from any XML data source. Custom data extensions is
also new feature
Tabular, matrix, chart, and free-form report layouts
Build tabular reports for column-based data, matrix reports for
summarized data, chart reports for graphical data, and free-form
reports for everything else. Free-form report layout is based on data
regions, which enclose controls and fields in a container that can
move, nest, or arrange in a side-by-side layout. Combine tabular,
matrix, and charted information in a single report.
Monday, January 11, 2010
110. Report Features Cont…
Ad hoc reports
You can create and save reports directly to a report server using a
ClickOnce application called Report Builder. Ad hoc reporting is
supported through a thin client that is downloaded from the report
server.
Drill-through reports and interactivity
You can add interactive features by providing links to related reports
and reports that provide supporting details. You can add scripted
expressions in Microsoft Visual Basic.
Parameterized reports
You can add parameters to refine a query or filter a dataset.
Dynamic parameters get values at run time based on user
selections (the selection of one parameter builds the value list for a
second parameter)
Monday, January 11, 2010
111. Report Features Cont…
Presentation formats
Choose a presentation format when you open the report, or after
you open the report. You can choose Web-oriented, page-oriented,
and desktop application formats. Formats include HTML, MHTML,
PDF, XML, CSV, TIFF, and Excel.
Custom controls or report items
You can embed custom controls or report items that you create or
purchase from a third-party vendor. A custom control requires a
custom report processing extension.
Navigation
You can add bookmarks and document maps to provide navigation
options within a large report.
Monday, January 11, 2010
112. Report Features Cont…
Aggregations
You can aggregate and summarize data using controls and
expressions. Aggregates include sum, average, min, max, count,
and running totals.
Graphical elements
You can embed or reference images and other resources that
contain external content.
Monday, January 11, 2010
113. Report and Model Design
Report Designer
Use Report Designer to work with data, define a layout, preview a
report, and publish a report to a test or production server. Report
Designer includes query builders, an expression editor, and wizards
so that you can follow step-by-step instructions to create a report.
Report Designer also supports advanced reporting features for
professional report designers who understand query languages and
expression languages.
Model Designer
Create models that support ad hoc reporting in Reporting Services.
You can generate models automatically based on an existing
schema or view, refine the model, and then publish it to a report
server.
Report Builder
Create ad hoc reports using templates and pre-organized data and
save them directly to a report server. Reports that you create in
Report Builder can be accessed, distributed, and managed just as
you would any other report.
Monday, January 11, 2010
114. Designing & Creating Reports
Ways to Create Reports
Report Designer
Report Builder
Reports are published to a report server as report definition
(.rdl) files. Because a report definition is an XML document.
Monday, January 11, 2010
115. Working with Data in Reporting Services
Data Sources
A Reporting Services data source definition contains
information about a connection to a data source. Following
are two types:
• Report-specific
• Shared
Datasets
A Reporting Services dataset contains a data source
definition, a query of the data source and a resulting fields
list, and possibly parameters, calculated fields, and collation
and other character sensitivity information to be used by a
report.
Fields
Each dataset in a report contains a collection of fields.
Monday, January 11, 2010
116. Report Layout and Rendering
Rendering
When you run a report, the report server combines the layout
from the report definition with the data from the data source,
and renders the report in a specified format.
Pagination
Pagination in a report is determined by the page size of the
report and any page breaks placed on report items.
Rendering extensions that support page size, such as image
and PDF, format the data in the report to fit within each page
Monday, January 11, 2010
117. Working with Report Items
Text Box
Image
Line
Rectangle
Sub Report
A sub report is an item in a report that points to another report on
the report server
Item Properties
All items in a report, including groups, table and matrix columns and
rows, and the report itself, have associated properties. These
properties govern the appearance and behavior of the item.
Monday, January 11, 2010
118. Data Regions
Table
A table is a data region that presents data row by row. Table
columns are static. Table rows expand downwards to accommodate
the data.
Matrix
A matrix is also known as a crosstab. A matrix data region contains
both columns and rows that expand to accommodate the data. A
matrix can have dynamic columns and rows and static columns and
rows.
List
A list is a data region that presents data arranged in a freeform
fashion. You can arrange report items to create a form with text
boxes, images, and other data regions placed anywhere within the
list.
Chart
A chart presents data graphically.
Nested Data Regions
You can nest data regions within other data regions.
Monday, January 11, 2010
119. User Interaction in Reports
Parameters
Use report parameters to obtain values from the user. These values
can be passed to a parameter in a query, passed to a filter, or used
in expressions within the report.
Filters
Filters to filter report data after it has been retrieved from the data
source. You can place filters on datasets and data regions.
Links
Add links to a report. When you add a link to a text box, image, or
chart element, you can specify one of three types of links:
• A drillthrough report link provides a link to another report on the
report server, and can pass parameter values to the report.
• A link to a URL provides a link to a Web page, typically outside
the report server.
• A bookmark link provides a link to a bookmark, or anchor, within
the current report.
Monday, January 11, 2010
120. User Interaction in Reports Cont…
Hiding Items
Each item in a report has a set of properties that determine
whether the item is visible or hidden.
Document Map
Another way a user can interact with a report is through a
document map. In HTML Viewer, a document map appears
as a table of contents next to the report.
Monday, January 11, 2010
122. Report Deployment
MS Visual Studio
Reports are authored and deployed With MS Visual Studio
Monday, January 11, 2010
123. Report Deployment Cont…
If you don’t have rights to deploy reports from Visual Studio
then Administrator can deploy reports to Report Server with
Report Manager using Upload File functionality.
Monday, January 11, 2010
124. Report Manager
Report Manager is the main management tool for Reporting Services. It
provides the following functionality:
Report Management
Uploading RDL files
Managing folder hierarchies
Setting data source credentials
Managing default parameter values
Creating linked reports
Creating execution snapshots
Setting caching options
Security
Setting server-level and item-level security
Defining Reporting Services Roles
Assigning Windows Users and Groups to roles
Report delivery
Viewing reports
Exporting reports to different rendering formats
Defining report subscriptions
Monday, January 11, 2010
125. Reporting Services – Web Service
Open Standards
One of the most widely adopted standards for sending information is
Hypertext Transfer Protocol (HTTP) which is the default standard for
web communication. It has the ability to send information back and
forth between remote machines and has a huge implementation
base. All major platforms today support sending information via this
protocol.
Visual Studio .NET Integration
Although Visual Studio .NET makes it easy to work with web
services, it is not the only development option. Because web
services are built on open standards, any development tool
supporting these standards can be used to work with them.
Monday, January 11, 2010
126. Reporting Services – Web Service Cont…
Here is a list of just a few things available through the Reporting Service
Web Service.
Rendering reports through various rendering extensions
Publishing reports programmatically
Creating snapshot reports
Adding snapshot reports to history
Creating subscriptions
Modifying data sources
Monday, January 11, 2010
127. Reporting Services – Web Service Cont…
There are two web services available to interact with Report Server
ReportExecution2005
The Reporting Services Execution web service allows developers to
programmatically process and render reports from a Report Server.
ReportService2005
The RSManagementService2005 web service allows developers to
programmatically manage objects in a Report Server.
Monday, January 11, 2010
128. Report Execution
By following ways we can execute deployed reports on report
server.
– URL
– Report Viewer
– SOAP API Call
Sample URL
http://<ReportServerName>/Reports/Pages/Report.aspx?ItemPath=%2f
AdventureWorks+Sample+Reports%2fProduct+Catalog
Monday, January 11, 2010
129. Report Execution
Report Execution Demo
Monday, January 11, 2010
131. Reporting Service Ad-hoc Components
Model Designer—Business users need not be familiar with the technical
aspects of the database schema to generate an ad-hoc report; instead,
developers design and implement one or more ad-hoc models that
abstract the underlying data source schema. To design the ad-hoc
model, you use the Model Designer, which is one of several RS
designers provided by the new Business Intelligence Development
Studio. When the model is ready, you publish it to the report catalog to
make it available to end users.
Report Manager—You manage published ad-hoc models just like any
other RS resource. For example, the report administrator can define
Windows-based or Forms-based authentication security policies to
enforce secured access to the model. To facilitate report and model
management, RS provides a separate Web-based application called
Report Manager, or administrators can use the new SQL Server
Management Studio, which centralizes management of SQL Server,
Reporting Services, Analysis Services, and Integration Services
installations.
Monday, January 11, 2010
132. Reporting Service Ad-hoc Components Cont…
Report Builder—End users use Report Builder to create reports
against the ad-hoc model. The Report Builder is implemented as
a .NET Windows Form application. The Report Server machine
hosts the Report Builder assembly, distributing it to end users via
the "click-once" technology forthcoming with .NET 2.0. As part of
the deployment process, the Report Builder detects and
optionally installs the .NET 2.0 framework if it is not already
present on the target machine.
Monday, January 11, 2010
134. Components of the Ad-Hoc Model
Data Source
The data source layer represents the connection to the underlying
data source.
Data Source View (DSV)
A DSV is a metadata logical layer that isolates the ad-hoc model
from the data source schema. A DSV lets you use an existing data
source schema but augment it to meet your ad-hoc reporting needs.
Semantic Model
The RS semantic model is very similar to the Object Role Modeling
(ORM) methodology. The main focus of the ORM methodology is to
model the database schema in a way that business users can
understand and verify against their requirements.
Monday, January 11, 2010
135. Semantic Model Definition Language
The RS semantic model uses an XML-based grammar called Semantic
Model Definition Language (SMDL). The semantic model defines the
following main objects:
– Entities
An entity object consists of fields which could be either attributes or
roles, described in more detail below. Each entity object has the
following properties:
IdentifyingAttributes—Specifies the attribute(s) that identify uniquely the
instance of the entity.
SortAttributes—Specifies the attribute(s) by which this entity will be sorted.
DefaultDetailAttributes—Specifies which attribute(s) which will be displayed
by default when the entity is dragged and dropped to the Report Builder
report canvas.
DefaultAggregateAttributes—Specifies which attribute(s) the entity should
aggregate upon.
– Attributes
An attribute corresponds to a DSV column or a named calculation.
Monday, January 11, 2010
136. Reporting Service - Ad-hoc Reports
Ad- hoc Report Demo
Monday, January 11, 2010
137. MS SQL Reporting Services 2005
Questions..??
Monday, January 11, 2010
138. MS SQL Reporting Services 2005
Thank You
Monday, January 11, 2010