Introduction to MDDBs

Similar documents
Using MDP Extensions. What Is the Multidimensional Data Provider? CHAPTER 3

Chapter 3 Managing Results in Projects. Chapter Table of Contents

Chapter 6 Creating Reports. Chapter Table of Contents

Permission Program. Support for Version 6 Only. Allowing SAS/SHARE Client Access to SAS Libraries or Files CHAPTER 40

Building and Updating MDDBs

SAS File Management. Improving Performance CHAPTER 37

APPENDIX 2 Customizing SAS/ASSIST Software

Chapter 25 PROC PARETO Statement. Chapter Table of Contents. OVERVIEW SYNTAX SummaryofOptions DictionaryofOptions...

SAS Catalogs. Definition. Catalog Names. Parts of a Catalog Name CHAPTER 32

SAS I/O Engines. Definition. Specifying a Different Engine. How Engines Work with SAS Files CHAPTER 36

Creating and Executing Stored Compiled DATA Step Programs

Using Cross-Environment Data Access (CEDA)

Data Set Options. Specify a data set option in parentheses after a SAS data set name. To specify several data set options, separate them with spaces.

External Files. Definition CHAPTER 38

SAS Support for TELNET on Windows

Using Data Transfer Services

Introduction. LOCK Statement. CHAPTER 11 The LOCK Statement and the LOCK Command

Data Representation. Variable Precision and Storage Information. Numeric Variables in the Alpha Environment CHAPTER 9

Chapter 15 Mixed Models. Chapter Table of Contents. Introduction Split Plot Experiment Clustered Data References...

Chapter 28 Saving and Printing Tables. Chapter Table of Contents SAVING AND PRINTING TABLES AS OUTPUT OBJECTS OUTPUT OBJECTS...

SAS Web Report Studio 3.1

Graphics. Chapter Overview CHAPTER 4

Chapter 23 Introduction to the OPTEX Procedure

Optimizing System Performance

OS/390 Platform Examples

Chapter 14 Introduction to the FACTEX Procedure

SAS Data Libraries. Definition CHAPTER 26

UNIX Platform Error Messages

Chapter 13 Multivariate Techniques. Chapter Table of Contents

Chapter 2 User Interface Features. networks Window. Drawing Panel

Formats. Formats Under UNIX. HEXw. format. $HEXw. format. Details CHAPTER 11

Chapter 9 Selected Examples. Queues with Reneging

Storing and Reusing Macros

SAS Data Integration Studio 3.3. User s Guide

Windows: SPX Access Method

Enterprise Miner Software: Changes and Enhancements, Release 4.1

APPENDIX 4 Migrating from QMF to SAS/ ASSIST Software. Each of these steps can be executed independently.

SCL Arrays. Introduction. Declaring Arrays CHAPTER 4

Using the SQL Editor. Overview CHAPTER 11

Overview. CHAPTER 2 Using the SAS System and SAS/ ASSIST Software

OS/2: SPX Access Method

OLAP Introduction and Overview

SAS BI Dashboard 3.1. User s Guide Second Edition

UNIX Spawner Program. Starting the UNIX Spawner Program CHAPTER 36

Administrator for Enterprise Clients: User s Guide. Second Edition

SAS Model Manager 2.2. Tutorials

Tasks Menu Reference. Introduction. Data Management APPENDIX 1

SAS. Information Map Studio 3.1: Creating Your First Information Map

CHAPTER 5 Macintosh: TCP/IP Access Method

Chapter 28 Command Reference. Chapter Table of Contents TSVIEW COMMAND FORECAST COMMAND

SAS/ASSIST Software Setup

SAS Web Infrastructure Kit 1.0. Overview

Examples That Use Remote Objecting

CHAPTER 13 Importing and Exporting External Data

Locking SAS Data Objects

Chapter 23 Animating Graphs. Chapter Table of Contents ANIMATING SELECTION OF OBSERVATIONS ANIMATING SELECTED GRAPHS...347

CHAPTER 7 Examples of Combining Compute Services and Data Transfer Services

The SERVER Procedure. Introduction. Syntax CHAPTER 8

SAS Publishing SAS. Forecast Studio 1.4. User s Guide

SAS. Installation Guide Fifth Edition Intelligence Platform

What Is a Communications Access Method? CHAPTER 1 Using Communications Access Methods

from the source host, use the FTP put command to copy a file from the source host to the target host.

Alternative ODS HTML Statements for Running Examples in Different Operating Environments

SAS 9.2 OLAP Server. User s Guide

Informats. Informats Under UNIX. HEXw. informat. $HEXw. informat. Details CHAPTER 13

DBLOAD Procedure Reference

Choosing the Right Procedure

Using the SAS/MDDB and User Written Methods to Enhance SAS/EIS Objects

SAS Infrastructure for Risk Management 3.4: User s Guide

Chapter 27 Saving and Printing Graphics

The EXPLODE Procedure

Chapter 25 Editing Windows. Chapter Table of Contents

Macro Facility. About the Macro Facility. Automatic Macro Variables CHAPTER 14

SAS/IntrNet 9.3. Overview. SAS Documentation

Installation Instructions for SAS/ACCESS Interface to SAP BW

OpenVMS Operating Environment

SAS. IT Service Level Management 2.1: Migration Documentation

The GTESTIT Procedure

SAS IT Resource Management 3.8: Reporting Guide

SAS Workflow Manager 2.2: Administrator s Guide

CHAPTER 7 Using Other SAS Software Products

QUEST Procedure Reference

Chapter 28 INSET Statement. Chapter Table of Contents

SAS Forecast Server 3.1. Administrator s Guide to Installation and Configuration

SAS Web Infrastructure Kit 1.0. Administrator s Guide

SAS Web Infrastructure Kit 1.0. Overview, Second Edition

The G4GRID Procedure. Introduction APPENDIX 1

Loading Data. Introduction. Understanding the Volume Grid CHAPTER 2

Changes and Enhancements

SAS/ACCESS Interface to R/3

Introduction. CHAPTER 3 Working in the SAS Windowing Environment

The GSLIDE Procedure. Overview. About Text Slides CHAPTER 27

Changes and Enhancements

SAS/STAT 13.1 User s Guide. The Power and Sample Size Application

Using Dynamic Data Exchange

The TIMEPLOT Procedure

SAS IT Resource Management Forecasting. Setup Specification Document. A SAS White Paper

Licensing SAS DataFlux Products

SAS/Warehouse Administrator Usage and Enhancements Terry Lewis, SAS Institute Inc., Cary, NC

SAS Factory Miner 14.2: User s Guide

Transcription:

3 CHAPTER 2 Introduction to MDDBs What Is OLAP? 3 What Is SAS/MDDB Server Software? 4 What Is an MDDB? 4 Understanding the MDDB Structure 5 How Can I Use MDDBs? 7 Why Should I Use MDDBs? 8 What Is OLAP? Online Analytical Processing (OLAP) is a technology used in creating decision support software that allows application users to quickly analyze information that has been summarized into multidimensional views and hierarchies By summarizing predicted queries into multidimensional views prior to run time, OLAP tools can provide the benefit of increased performance over traditional database access tools: a great deal of the complex calculation that is required to summarize the data is done long before a query is submitted In order to fully understand the benefits of OLAP and the details of its effective implementation, it helps to examine the technology from two perspectives: (1) from that of the users and (2) from that of the information technology (IT) administrators who are responsible for OLAP implementation The users, typically business managers and analysts, see OLAP as a way to gain rapid access to business data They expect that the data will be organized according to categories that reflect the way in which they think about the enterprise For IT administrators, OLAP can present a long list of technical issues, including concerns about 3 storage requirements and associated costs 3 client/server capabilities 3 maintenance activities such as update and backup 3 performance considerations such as the amount of time required to build a multidimensional model 3 the ability of the OLAP solution to integrate with current or planned data warehouse strategies and architectures The challenge for IT administrators charged with implementing OLAP is to find a solution that will both supply the functionality that users expect and address these technical considerations SAS/MDDB Server software provides all the functionality expected by those who will use the system, while meeting all the technical requirements of IT For users, SAS/MDDB Server provides fast access to large amounts of shared data through a wealth of OLAP client capabilities IT administrators can use SAS/MDDB Server to implement an OLAP solution that allows them to seamlessly integrate MDDBs with transactional systems, existing warehouse data, and powerful client applications

4 What Is SAS/MDDB Server Software? 4 Chapter 2 This document details the capabilities and functionality of the SAS/MDDB Server and explains how you can implement MDDBs as part of your organization s OLAP solution What Is SAS/MDDB Server Software? SAS/MDDB Server software enables users to create and manage MDDBs to provide fast and easy data access by tools such as multidimensional data viewers Used as a data summarization, storage, and retrieval mechanism for an organization s OLAP solution, MDDBs enable better decision making by giving business users quick, unlimited views of multiple relationships in large quantities of summarized data at any cross section of business dimensions A business dimension can be any vision of the data that is useful in making business decisions for example, time, geography, or product Taking advantage of a graphical user interface or a programming interface, you can use SAS/MDDB Server software to quickly and easily build, maintain, and optimize multidimensional data For example, you can 3 use warehouse data to design multidimensional data models based on the least amount of summarization, the most amount of summarization, or projections of the summarizations most likely to be requested by users 3 build multidimensional data structures for interactive or batch submission 3 change the way that multidimensional data is structured 3 control which statistics are stored with which multidimensional data structures 3 control the balance between storage and performance 3 perform incremental updates What Is an MDDB? A multidimensional database, or MDDB, is a specialized storage facility that allows data to be pulled from a data warehouse or other data sources for storage in a matrix-like format The process of building an MDDB summarizes the raw data; the data stored in the MDDB is thus said to be presummarized The MDDB enables users to quickly retrieve multiple levels of presummarized data through a multidimensional view An MDDB is not a SAS data file; instead of the traditional structure used for SAS tables, an MDDB stores its data as an NWAY cube and zero or more subcubes An NWAY cube is a multidimensional data model that specifies all the classification variables that can be used to define crossings A crossing is a definition of one or more classification variables that exist in the data from which the MDDB is created Each crossing represents a grouping on which summary statistics could be calculated While an MDDB can consist of an NWAY cube only, it is usually created with one or more subcubes Subcubes are created using simple statements of hierarchy that define one or more additional specific crossings derived from the NWAY cube Subcubes are built to enhance reporting speed and are projections of the most likely aggregates that business managers and other users will expect to see If a subcube does not exist for a particular aggregate query, that is, if no subcube defines the exact crossings required to answer the query, the aggregate data will be derived from the smallest subcube that can provide the data If no subcube can provide the data, it is derived from the NWAY cube By default, a minimum number of statistics are stored in the MDDB During creation of the MDDB, you can specify up to 8 statistics for each analysis variable Depending on which of the 8 statistics are stored, up to 13 additional statistics can be calculated by SAS/MDDB Server software at run time, allowing for up to 21 available statistics For more information, see Stored and Derived Statistics on page 15

Introduction to MDDBs 4 Understanding the MDDB Structure 5 Other characteristics common to all SAS MDDBs include the following: 3 MDDBs can be created interactively or in batch 3 There is no practical limitation on the number of subcubes/crossings 3 There is no practical limitation on the number of analysis variables 3 MDDBs can be updated incrementally Understanding the MDDB Structure The structure of an MDDB, including the NWAY cube and its subcubes, is best illustrated through an example The SAS table from which an MDDB is created is called the base table For this example, assume that our base table contains the following fields: 3 classification variables: YEAR, MONTH, PRODUCT 3 analysis variables: SALES, RETURNS The base table might look like this: Table 21 Example Base Table YEAR MONTH PRODUCT SALES RETURNS 1999 Jan Bib $10396 $1281 1999 Jan Blanket $11241 $1145 1999 Feb Bib $9823 $789 1999 Feb Blanket $14605 $1358 1998 Jan Bib $9846 $673 1998 Jan Blanket $10263 $1183 1998 Feb Bib $10793 $978 When you define your NWAY cube, you will include all the classification variables, thus defining a crossing for each combination of classification variable values for which input data is available A multidimensional report based on this MDDB could allow users to research the total sales of a product in a given year, and then drill down to total sales of the product in a given month Because these summary statistics are already stored in the NWAY cube, little processing at run time is required Conceptually, your NWAY cube would look like this:

6 Understanding the MDDB Structure 4 Chapter 2 Figure 21 NWAY Cube ACTUAL SALES=$120,500 (YEAR=1998, PRODUCT=Bib) Basin ACTUAL SALES=$9,856 (YEAR=1998, MONTH=Jan, PRODUCT=Bib) Bib Blanket PRODUCT Pacifier Bib) 1997 1998 1999 YEAR 1998 Jan MONTH (Jan-Dec) All months Dec If you know of common queries that can be answered using a smaller set of crossings, you could create a subcube that specifies the exact crossing required For example, assume that you know that the most commonly requested multidimensional report will be one that allows the user to research total sales in a given year for a given product You could define a subcube that contains only the YEAR and PRODUCT variables

Introduction to MDDBs 4 How Can I Use MDDBs? 7 Figure 22 NWAY Cube and Subcube PRODUCT PRODUCT YEAR ACTUAL SALES=$120,500 (YEAR=1998, PRODUCT=Bib) MONTH YEAR Of course, the crossing required to answer this query can be summarized from the NWAY cube, but because you know that the MONTH variable will not be needed, you would define the subcube to improve reporting performance Achieving optimal performance from your MDDB depends in part on the subcubes you choose to define Chapter 3, Building and Updating MDDBs, on page 11 explains this and other performance considerations in detail Note: The preceding example is highly simplified The real power of MDDBs lies in their ability to handle data in many dimensions, not just two or three This example was used because it is easy to illustrate; it is difficult to imagine or draw an object with more than three dimensions So, although an object with a YEAR dimension and a PRODUCT dimension does not really make a cube as in the previous diagram, the important thing to remember is that you can define a subcube on your MDDB with whatever dimensions that you want 4 How Can I Use MDDBs? Once you have created the MDDBs that are required to meet the needs of your organization s users, you can create applications that access the MDDBs by using SAS/EIS software or SAS/AF software Alternatively, you can give users access to MDDBs via your organization s intranet by deploying the MDDB Report Viewer application SAS/EIS software provides a host of MDDB-enabled objects for use in creating multidimensional reports These reporting objects, which provide a choice of styles for dynamic display and interactive analysis, include a variety of charts, maps, and tables

8 Why Should I Use MDDBs? 4 Chapter 2 The objects have multiple levels with built-in drill-down capabilities for fast navigation through data With these customizable viewers, users can 3 navigate through the data 3 perform analyses by adding calculations at run time 3 dynamically reach through to detail data anywhere on the network For details on using an MDDB with SAS/EIS objects, refer to Using an MDDB with SAS/EIS Software on page 27, or Getting Started with SAS/EIS Software It is also possible to use an MDDB in a SAS/AF application However, if you want to access MDDBs with a SAS/AF application, it is usually best to subclass one of the MDDB-enabled objects from SAS/EIS software For more details on using an MDDB with SAS/AF software, refer to Using an MDDB with SAS/AF Software on page 28 Finally, if you want to access MDDBs without creating and deploying your own application, you can use the MDDB Report Viewer application, which is available as a component of SAS/IntrNet Application Dispatcher software The MDDB Report Viewer enables users to generate and view reports and graphs of data that are stored in MDDBs from a remote client For more information on using an MDDB with the MDDB Report Viewer, refer to Using an MDDB with the MDDB Report Viewer on page 30 Why Should I Use MDDBs? There are several advantages to creating and using MDDBs, including the following: Reach-through Using MDDBs with SAS/EIS software allows users to retrieve the underlying detail data that make up a multidimensional view Integration The OLAP functionality achieved with the SAS/MDDB Server extends the decision support environment by providing multidimensional views of business data within a data warehouse architecture This means superior integration with warehouse managed data, analytic capabilities, and presentation capabilities Optimized Storage and Performance SAS/MDDB Server software minimizes the amount of space needed to store multidimensional data This reduction is due largely to the aggregation of relational warehouse data into dimensions in the MDDB, but other factors include 3 Controlling the storage of statistics The size of an MDDB can be affected significantly by whether statistics are stored or derived at run time By default, a minimum number of statistics are stored in MDDBs Keeping the size of the MDDBs to a minimum by storing only simple statistics means that MDDBs require short build times and can be easily and quickly maintained by data warehouse administrators 3 Preventing data expansion through efficient handling of sparse data The best measurement of the efficiency of a multidimensional data model is in the number of values that it can store within a given amount of space MDDBs do not store data in the NWAY cube or in subcubes for crossings that are not populated in the input data Therefore, the actual input cells are smaller than the number of potential cells proportional to the sparsity of the data By storing only the cells where data actually exists, the SAS/MDDB Server software keeps the size of the MDDBs to a minimum 3 Preventing data explosion through user-defined subtables Data explosion is related to the way in which multidimensional data operations can cause

Introduction to MDDBs 4 Why Should I Use MDDBs? 9 extensive increases in data volume SAS/MDDB Server software controls data explosion by allowing users to control which aggregations are stored as subtables 3 Storing dimensional labels separately from summaries By storing labels separately, SAS/MDDB Server saves storage space for each record Security Security is a key issue in the implementation of an OLAP solution SAS/MDDB Server software provides applications-level security by enabling password protection Also, when using SAS/EIS software to access your multidimensional data, you can use the SAS/EIS Access Control facility to implement cell-level security For details on the SAS/EIS Access Control Facility, see the SAS/EIS Software: Administrator s Guide You should consider each of these factors when deciding how and when to use MDDBs and the SAS/MDDB Server in your application development environment

10 Why Should I Use MDDBs? 4 Chapter 2

The correct bibliographic citation for this manual is as follows: SAS Institute Inc, SAS/MDDB Server Administrator s Guide, Version 8,Cary,NC: SAS Institute Inc, 1999 SAS/MDDB Server Administrator s Guide, Version 8 Copyright 1999 SAS Institute Inc, Cary, NC, USA ISBN 1 58025 504 3 All rights reserved Printed in the United States of America No part of this publication may be reproduced, stored in a retrieval system, or transmitted, by any form or by any means, electronic, mechanical, photocopying, or otherwise, without the prior written permission of the publisher, SAS Institute, Inc US Government Restricted Rights Notice Use, duplication, or disclosure of the software by the government is subject to restrictions as set forth in FAR 52227 19 Commercial Computer Software-Restricted Rights (June 1987) SAS Institute Inc, SAS Campus Drive, Cary, North Carolina 27513 1st printing, October 1999 SAS and all other SAS Institute Inc product or service names are registered trademarks or trademarks of SAS Institute Inc in the USA and other countries indicates USA registration IBM, ACF/VTAM, AIX, APPN, MVS/ESA, OS/2, OS/390, VM/ESA, and VTAM are registered trademarks or trademarks of International Business Machines Corporation Other brand and product names are registered trademarks or trademarks of their respective companies The Institute is a private company devoted to the support and further development of its software and related services