MS Business Intelligence with SQL Server 2005


Published on

Presentation on MS Business Intelligence with SQL Server 2005

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

MS Business Intelligence with SQL Server 2005

  1. 1. Business Intelligence with MS SQL Server 2005 By : Sandip Shinde Monday, January 11, 2010
  2. 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. 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. 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. 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
  6. 6. What is Business Intelligence? By : Sandip Shinde
  7. 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. 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. 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. 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. 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. 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. 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
  14. 14. Microsoft BI Platform Monday, January 11, 2010
  15. 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. 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. 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. 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. 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. 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
  21. 21. MS SQL Integration Services 2005 By : Sandip Shinde
  22. 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. 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. 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. 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. 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. 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
  28. 28. Integration Services Architecture Monday, January 11, 2010
  29. 29. Integration Services Architecture Monday, January 11, 2010
  30. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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
  40. 40. Data Flow Elements Monday, January 11, 2010
  41. 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. 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. 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. 44. Scripting Tasks  The tasks that extend package functionality by using scripts. – ActiveX Script Task – Script Task Monday, January 11, 2010
  45. 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. 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. 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. 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. 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. 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
  51. 51. Creating SSIS Package DEMO Monday, January 11, 2010
  52. 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. 53. Example of SSIS Variable & Script Task DEMO Monday, January 11, 2010
  54. 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. 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. 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. 57. SQL Server 2005 Integration Services Questions…? Monday, January 11, 2010
  58. 58. MS SQL Analysis Services 2005 By : Sandip Shinde
  59. 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. 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. 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. 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. 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. 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. 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. 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. 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
  68. 68. Data Sources Demo Monday, January 11, 2010
  69. 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. 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
  71. 71. Data Source Views Demo Monday, January 11, 2010
  72. 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. 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. 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. 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
  76. 76. Dimension based on a Snowflake Schema Design Monday, January 11, 2010
  77. 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. 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. 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
  80. 80. Dimension Demo Monday, January 11, 2010
  81. 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. 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. 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. 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. 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
  86. 86. Measures and Measure Groups Monday, January 11, 2010
  87. 87. Cube Demo Monday, January 11, 2010
  88. 88. MS SQL Reporting Services 2005 By : Sandip Shinde
  89. 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. 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. 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. 92. With Active Directory – Report Execution Active Directory OLE DB/ODBC (Account + Authorization) Reporting Services Users Monday, January 11, 2010
  93. 93. An Integrated Architecture Monday, January 11, 2010
  94. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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
  104. 104. Reporting Services Configuration Cont..... Report Server Configuration Options Monday, January 11, 2010
  105. 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. 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. 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
  108. 108. Reporting Services Configuration Reporting Services Configuration Demo Monday, January 11, 2010
  109. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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
  121. 121. Designing & Creating Reports Designing & Creating Reports Demo Monday, January 11, 2010
  122. 122. Report Deployment MS Visual Studio Reports are authored and deployed With MS Visual Studio Monday, January 11, 2010
  123. 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. 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. 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. 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. 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. 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. 129. Report Execution Report Execution Demo Monday, January 11, 2010
  130. 130. Reporting Service Ad-hoc Architecture Monday, January 11, 2010
  131. 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. 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
  133. 133. Ad- Hoc Model Monday, January 11, 2010
  134. 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. 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. 136. Reporting Service - Ad-hoc Reports Ad- hoc Report Demo Monday, January 11, 2010
  137. 137. MS SQL Reporting Services 2005 Questions..?? Monday, January 11, 2010
  138. 138. MS SQL Reporting Services 2005 Thank You Monday, January 11, 2010