You are on page 1of 90

Cubing Services Development

29 April 2010

Cubing Services

Business Analytics
© 2010 IBM Corporation
Business Analytics

Disclaimer
The information on any new products in this presentation is
intended to outline our general product direction and it should
not be relied on in making a purchasing decision. The
information on new products is for informational purposes only
and may not be incorporated into any contract. The
information on new products is not a commitment, promise, or
legal obligation to deliver any material, code or functionality.
The development, release, and timing of any features or
functionality described for our products remains at our sole
discretion.

2 Footer Field © 2010 IBM Corporation


Business Analytics

Agenda

 IBM OLAP portfolio – how Cubing Services fits in


 Cubing Services architecture and clients
 Lifecycle
 Best Practices
 New features in 9.7 – dimensional security, virtual cubes
 Performance and scalability proof points

3 © 2010 IBM Corporation


Business Analytics

OLAP portfolio from IBM – complete coverage

IBM Cognos
USER

BI / FPM

Complete, Consistent View of Information


MODELING

Specialized OLAP Modeling Tools


 Large read only user communities  Read/write user communities  Large user communities
Transformer
 Moderate ‘focused area’ data sets Turbo
 64 bit in-memory Integrator
fast performance Design Studio
 Large data sets
 Pre-aggregated static fast results  Larger highly dynamic data sets  Planned performance/optimization facilities
--------------------------------------------
IBM Cognos PowerCube --------------------------------------------
IBM Cognos TM1 --------------------------------------------
IBM Infosphere Warehouse
OLAP

 Off-line portable/ partitioned storage  Dynamic changing dimensions and hierarchy,  Optimized ROLAP
what-if scenarios, data contribution Cubing Services
 Rapid startup for advanced business  Zero Latency
user self service modeling  Common dimensions shared across multi-  High volume concurrency
Optimized forseries
Automatic time broad, general
analysis & Optimized
cube modelsfor write back and high Optimized for very large datasets
 Largest Data Volumes
purpose
trending BI usage volatility
Budgetingapplications
with very large dimensions
and planning
Centralized IT management of information
 Point in time data  Personal and corporate data sources
 Personal and corporate data sources

4 © 2010 IBM Corporation


Business Analytics

InfoSphere W arehouse Cubing Services

IBM tools Excel & 3rd Cognos 8 Primary OLAP Use:


party tools
Large enterprise IT deployments

Analytics & reporting for


banking, retail & insurance

Ideal for:
• Very large data sets with very
large dimensions – SKU level
data
• Enterprise rollouts requiring near
real time data
Cubing Services
Because of its unique ability to:
Warehouse Modeling • Accelerate OLAP queries
optimized on InfoSphere
Warehouse
• Integrated IT tooling
InfoSphere
Warehouse Primary owner - IT departments

5 © 2010 IBM Corporation


Business Analytics

Key capabilities - InfoSphere W arehouse Cubing Services

High performance Unlimited Integrated IT


ROLAP solution scalability tooling
Near real time data Support many users with Lower cost of ownership
access with high speed accelerated OLAP bringing design, query and
performance queries performance together

High performance, Supporting a large number Integrated design tooling


scalable cubing engine of deep dimensions with with Design Studio &
SKU level data Rational Data Architect
64-bit high performance
caches for very large data Integrated administration
volumes and queries Increase performance & for warehouse and cubes
scalability using
SQL access optimized for optimization features of The Optimization Advisor
InfoSphere Warehouse InfoSphere Warehouse accelerates all SQL-
based queries in the
warehouse
Cognos 8 front end clients and Microsoft Excel via Pivot table services
Industry standard ODBO & XMLA APIs enable 3 rd party applications

6 © 2010 IBM Corporation


Business Analytics

InfoSphere Cubing Services architecture

Excel
64-bit in-memory caching

ODBO Native API


No data duplication
InfoSphere
Warehouse
MQT’s, MDC’s Alphablox
SQL MDX
Cubing
Services
Cognos

XMLA
OLAP Metadata MDX Optimization
Eclipse Design Studio Calculation Advisor
Builder

Server Cube Security BI Tools


Web Administration Console Cube
Management Manager
Manager

7 © 2010 IBM Corporation


Business Analytics

Excel 2003, 2007

• Pervasive BI tool
• Real-time, live connection to
warehouse data via Excel
• Can save point-in-time data, and
refresh at any time
• Full use of pivot table services for
analysis

8 © 2010 IBM Corporation


Business Analytics

Cognos 8.4 SP2 and later

9 © 2010 IBM Corporation


Business Analytics

Cubing Service Lifecycle

10 © 2010 IBM Corporation


Business Analytics

Cubing Services Lifecycle – Stages 1 through 5


Design Studio

Design

Cubing Services
Cube Server Analyze Advisor
Run
DB2 Design Advisor

Optimize

Deploy

Administration Console

11 © 2010 IBM Corporation


Business Analytics

Lifecycle Stage 1 – Design Design

Creating a Cube

• Goal: Define multidimensional metadata that describes the


information that is stored in relational tables

Cube Model and Cube Star Schema


 Measures • fact table
 Dimensions • dimension tables
 Hierarchies • outboard tables
 Levels
 Members

12 © 2010 IBM Corporation


Business Analytics

Lifecycle Stage 1 - Design


Design Studio
BI
Designer Create
Edit
Drop
Analyze

Deploy for runtime

Reverse engineer
schema Export Import
DB2 LUW

OLAP Metadata
DB2

Metadata files

13 © 2010 IBM Corporation


Business Analytics

14 © 2010 IBM Corporation


Business Analytics

Lifecycle Stage 2 – Optimize


Optimize

MDX Result set


 Cube server can generate one or more SQL queries to calculate
result set for each MDX query
Cube Server
 Queries that aggregate large volumes of data can be time
consuming

SQL Data  MQT = Materialized Query Table; calculate aggregations up front

 DB2 Optimizer can access MQT instead of performing the


aggregations over detail data when the query is processed
DB2  MQTs are defined like views, physical like tables and transparent
to applications like indexes

MQT

15 © 2010 IBM Corporation


Business Analytics

Lifecycle Stage 2 – Optimize


Cube Optimization: Overview

Model-driven MQT generation

Optimization Advisor
BI Designer DBA

Design Studio Advise Advise Admin Console

DB2

OLAP Metadata

MQTs

16 © 2010 IBM Corporation


Business Analytics

Lifecycle Stage 2 – Optimize


Cube Optimization: Overview (2)
 Model driven advisor recommends MQTs for cubes in a cube model

 Recommendation is based on metadata, database statistics and data sampling.


 Time and resource constraints can be applied to recommendations.
 Advisor recommends MQTs that are optimized for Cubing Services.
 The advisor produces SQL scripts that create and refresh MQTs

 Integrate refresh script in SQW process flows that update the data warehouse
tables.

17 © 2010 IBM Corporation


Business Analytics

Lifecycle Stage 3 - Deployment


Admin Console
Admin Console
Deploy

DBA

Cube Server

Admin Console

Import

OLAP Metadata
DB2
Metadata files
MQTs
OLAP metadata

18 © 2010 IBM Corporation


Business Analytics

Lifecycle Stage 3 - Deployment

 A cube is accessible by OLAP clients if it is running on a cube server. Use the Cubing Services
administration features in Administration Console to:

– Import OLAP metadata (that was previously exported via Design Studio) into the
metadata database for test/production deployments
– Map metadata to relational data source
– Create and configure cube server
– Deploy cubes to cube server
– Configure cube runtime tuning parameters
– Define cube security
– Control cube server and cube runtime states (start, stop, …)

19 © 2010 IBM Corporation


Business Analytics

20 © 2010 IBM Corporation


Business Analytics

Lifecycle Stage 4 - Runtime Run

Other
Alphablox Excel BI tools

MDX
Cube server and
Cube Server
Admin Console cube administration

DB2
OLAP Metadata

MQTs Optimization Advisor

21 © 2010 IBM Corporation


Business Analytics

Lifecycle Stage 4 - Runtime


Starting a cube
Cube Server
Dim Member
Cache

Data cache

SQL (seed query) SQL

DB2

22 © 2010 IBM Corporation


Business Analytics

Lifecycle Stage 4 - Runtime


Query Processing
Cube Server

Dim Member
Result set MDX calculation engine Cache

MDX query
Data cache

SQL
• Simple, multi-pass SQL
DB2

23 © 2010 IBM Corporation


Business Analytics

Performance Factors

 Cubing Services is fundamentally a ROLAP-style solution


– Depends on underlying database performance for some aspects of its performance
characteristics
– Leverages MQTs, MDC, and other relational database optimizations
– Includes additional caching layers for performance

24 © 2010 IBM Corporation


Business Analytics

Lifecycle Stage 5 - Analyze/Optimize Analyze

DB2W Admin Console

Tune configuration
Cube Server

Log files
DBA

DB2
Design
Advisor Create MQTs, MDC,
DB2
Indexes

25 © 2010 IBM Corporation


Business Analytics

Best Practices

26 © 2010 IBM Corporation


Business Analytics

Cube Design: Best Practices for Facts Design

 Star schema design


– Good performance starts with good relational modeling
– Define referential integrity (even if they are only informational
constraints)
 Schemas with multiple fact tables
– Create a view joining the fact tables and include the view as the
facts object in the cube
 Express measure calculations in SQL in the measure definition in a
cube
– This allows Cubing Services to push down measure calculations to
DB2 and exploit all of the optimizations provided by DB2

27 © 2010 IBM Corporation


Design
Business Analytics

Cube Design: Best Practices for Dimensions

Avoid large, flat dimensions


– Explore the creation of artificial levels in the hierarchy if it is too ‘flat’ (for
example if dimension members have thousands of children)
When specifying level keys:
– Use single column level keys (or as few columns as necessary)
– Use integer values for level keys

28 © 2010 IBM Corporation


Business Analytics

Cube Design: Best Practices for Dimensions

 Number of dimensions to define in a cube


– No explicit limit, but a large number of dimensions (more than 12) can have the following
negative performance impacts:
• Increased memory usage - Memory storage cost of tuples increases proportionately
since a tuple consists of a member from each dimension
• SQL query processing time - SQL generated by Cube Server will be longer and more
complex and have a lower probability that DB2 will use an MQT to respond to the SQL
query

29 © 2010 IBM Corporation


Design
Business Analytics

Cube Design: Best Practices for Dimensions

 Number of members you can have in a dimension or cube


– Theoretical limit is the maximum integer value supported by the JVM
– In reality, there is a trade off between two approaches:
• Single large cube
• - Reduced memory footprint
• --- All queries share a single instance of the cube members
• - Cache management
• --- Caching a single large instance may not be practicable
• Multiple smaller cubes (preferable)
• - Caching and manageability is easier
• - Does require an increase in memory footprint
• --- Cube members are duplicated

30 © 2010 IBM Corporation


Business Analytics

Deployment: Best Practices

 Cube Server configuration


Deploy
 Uses two consecutive ports (firewall)
 Limit number of cubes based on query load, cube size
 Cube configuration

 Adjust cache strategy and size as necessary


 Enable/disable automatic member cache refresh
 Security configuration

 Role based; enabled by default


 Configurable for each cube; restricts query access
 Authentication performed by DB2
 Authorization determined by cube server

31 © 2010 IBM Corporation


Business Analytics

Runtime: Best Practices – Memory Usage


Run
 Factors that affect memory usage

– Number of running cubes and their cache configuration


• Member cache (static default, dynamic)
– Memory usage ~ 1.1KB per member
• Data cache
– Memory usage ~ 1KB per member
– Allocate 10 % of metadata cache size
– Query processing
• MDX query workload (e.g. tuple count)
• Number of concurrently processed queries
 Keep total cube server memory footprint below 10 GB to avoid memory management overhead of Java.
 Run very large cubes on separate cube servers for better scalability.
 Run cubes that are accessed by many users concurrently on multiple cube servers.

32 © 2010 IBM Corporation


Business Analytics

Runtime: Best Practices – Query Performance Run

 Factors that affect query performance

 MDX query type and complexity; ‘costly’ measure definitions

 Avoid ‘unnecessary’ measures that result in expensive database calculations (e.g.


count(distinct), sum(distinct))
 Non-Empty processing requires two-passes; use only with sparse data sets
 Result set size

 Intermediate result set


 Final result set
 Number of concurrent users

 Available system resources (e.g. heap memory)

 Data cache state (cold vs. warm)

 Cold cache performance depends on database performance – database

tuning (such as MQTs, indexes, partitioning) is crucial


 Define seed query to pre-populate cache upon cube startup

33 © 2010 IBM Corporation


Business Analytics

Analyze and Optimize: Best Practices Analyze

 Cube server creates six log files (activity, exception, trace, MDX, performance, SQL)

Enable MDX log, SQL log and performance log to analyze query performance

 MDX log captures processed queries


 SQL log captures generated queries
 Performance log captures cache hits and misses, the MDX query elapsed
time and the SQL query elapsed time
 Higher cache misses indicate too small cache size relative to the amount of data being fetched by the queries. Consider increasing the data
cache size and use of a seed query.

 High SQL elapsed times could indicate that appropriate indexes and/or MQTs have not been created or are not being used effectively by the DB2
optimizer.

Use SQL queries as an input workload to the DB2 Design Advisor. The tool will recommend additional MQTs,
indexes, MDC, and other optimization objects to further optimize DB2 for this Cubing Services workload.

34 © 2010 IBM Corporation


Business Analytics

New in Cubing Services 9.7


Faster performance, richer functionality, easier to use

 Faster performance

 Virtual cubes
– Enables fast performance in a low latency, real-time warehouse
– Facilitates better data management

 Dimensional security
– Fine grain access control down to the dimension members

 Remote server management

35 © 2010 IBM Corporation


Business Analytics

Faster cube load time than 9.5

• Cubes load on average nearly twice as fast in 9.7


• Uses less memory during cube load

36 Footer Field © 2010 IBM Corporation


Business Analytics

Query response times improve

Results:

• Cold cache response times on average


9.7.1 is 3.5 times faster than 9.5.2
• Warm cache shows similar improvement
• Disk backed data cache leaves more memory
for query execution.

Benefits:
• Faster cold cache response times makes real-
time OLAP easier since cache refreshes are
less impactful to user experience 9.5.1 9.5.2 9.7 9.7.1

37 Footer Field © 2010 IBM Corporation


Business Analytics

Virtual cubes overview


Combines cubes with
common Time dimension
Virtual cubes Inventory
combine two Sales
cubes
Virtual cube used as source
for another virtual cube

Sales
Inventory Combines cubes with nearly
identical dimensions

Store Sales
Web Sales

38 Footer Field © 2010 IBM Corporation


Business Analytics

Definition

• A virtual cube is a logical cube that is defined in terms of


exactly two existing cubes – “real” or “virtual”
• Cubes can be merged in pairs to any depth
• Virtual cubes combine two cubes that:
• Share a dimension which is the basis for merging them to
form a virtual cube
• Can belong to different cube models
• Reside in the same database
• Are assigned to the same cube server

39 Footer Field © 2010 IBM Corporation


Business Analytics

Primary usage scenarios

• Improve latency by creating historic and delta cubes

• Currency transformations by using currency lookup


cube

• Combine data with unlike dimensions or data split by


region

40 Footer Field © 2010 IBM Corporation


Business Analytics

Delta cubes improve performance and lower latency


All Sales cube
Original Cube

All • Small CurrentMonthSales


cube is updated daily,
Sales
hourly, or more frequently
• Large HistoricSales only
updated once a month
when roll in data from
CurrentMonthSales
Historic
Sales • Technical benefits:
• Faster MQT updates
Current
• Cache remains warm for
Month
Sales
HistoricSales

Time
Current Month
41 Footer Field © 2010 IBM Corporation
Business Analytics

Performance improvement example

100 times faster*


average query response
time against fact data
updated incrementally using
delta cube

* Results will vary based on ratio of data between the


small delta cube and the large historic cube.
42 Footer Field © 2010 IBM Corporation
Business Analytics

Currency conversion scenario


Transform sales data so user can
see in variety of currencies

Store Sales Web Sales


(multiple currencies) (multiple currencies)

Store Sales Currency Web Sales


Conversion

43 Footer Field © 2010 IBM Corporation


Business Analytics

Combine data with unlike dimensions or data split by region


Combines cubes with
common Time dimension
Inventory
Sales
Virtual cube used as source
for another virtual cube

Sales
Inventory
Combines cubes with nearly
identical dimensions

Store Sales
Web Sales

44 Footer Field © 2010 IBM Corporation


Business Analytics

Merging cubes - Dimension Merging

Sales Cube Inv Cube Virtual Cube

Product Product Product Merge dimensions with


identical names
Time Time Time
Unmatched dimensions
Inventory Inventory added to virtual cube

Store* User can hide


unwanted dimensions

Users can merge dimensions with different names by changing the names to match.
Details follow.

* The dimension is hidden for virtual cube


45 Footer Field © 2010 IBM Corporation
Business Analytics

Merging cubes - Level Merging


For common dimensions, levels are merged starting from top of hierarchy
Unmatched
Sales East Sales West All Sales names are
concatenated
Country Country Country
State Province State Province
City City City
Neighborhood Neighborhood

User can’t change level names Mismatched levels


produce meaningless
results

Sales East Sales West All Sales


Country Country Country
Region Province Region Province
State State
46 Footer Field © 2010 IBM Corporation
Business Analytics

Member Merging

All cube members will be in the virtual cube Virtual


Cube A and Cube B have Cube
shared dimension [Measures]

CubeA CubeB

Cube A Cube B Virtual Cube


Merge members
[Store Sales] [Store Sales] [Store Sales] with identical
names
[Unit Sales East] [Unit Sales East] Unmatched
members added to
[Unit Sales West] [Unit Sales West] virtual cube

47 Footer Field © 2010 IBM Corporation


Business Analytics

Merge operators

• Cubes are merged based on operator Virtual


Cube
• +, -, /, *, Max, Min

• Examples:
• Merge using add operation "+“ CubeA CubeB

• select from [Virtual Cube] =


• select from [CubeA] + select from [CubeB]

• Merge using MAX operator


• select from [Virtual Cube] =
• MAX(select from [CubeA], select from [CubeB])

48 Footer Field © 2010 IBM Corporation


Business Analytics

Dimensional security with virtual cubes

• Dimensional security for a virtual cube is inherited from its cubes


• There are no specific security settings for virtual cube
• Users will have to set security on the base cubes

Intersection of security
settings from CubeA
Virtual and CubeB
Cube

Set dimensional
security here Set dimensional
security here

CubeA CubeB

49 Footer Field © 2010 IBM Corporation


Business Analytics

Dimensional security
• Fine-grained access control to OLAP metadata
• Allows you to limit the members of a dimension that a role can
access
• By default, allows access to all members

Without dimensional security With dimensional security

USA USA

WA CA WA CA

Seattle San Jose Seattle San Jose

Store 2 Store 1 Store 2 Store 1

Store hierarchy Store hierarchy

50 Footer Field © 2010 IBM Corporation


Business Analytics

Security model concepts


• Resource
An OLAP object on which security is defined, e.g. cube, dimension/hierarchy
(including Measures dimension)
• Role
A group of users that share the same security privileges
• Policy
A privilege or rule for accessing a resource, e.g. read access allowed to cube,
read access denied to dimension/hierarchy members
• Authorization
An association among a resource, role, and policy

51 Footer Field © 2010 IBM Corporation


Business Analytics

Security model lifecycle


1. Create security model in
Design Studio
2. Export security model from
Design Studio to XML file
3. Import security model from
XML file to Admin Console
4. View security model in
Admin Console
5. Start cube server or refresh
security
6. Modify security model (if
needed)
7. Delete security model from
repository

52 Footer Field © 2010 IBM Corporation


Business Analytics

Security enforcement
Single role/single policy
A user in a single role that is assigned a single policy on a dimension is
allowed to access the set of allowed members except the set of denied
members
Example:
Allowed Members = {Ascendants([Store].[CA]), Descendants([Store].
[CA])}
Denied Members = [Store].[City].Members
USA

CA

San Jose

Store1

53 Footer Field © 2010 IBM Corporation


Business Analytics

Security enforcement
Multiple roles/multiple policies

A user in multiple roles or a single role with multiple policies is allowed to access union
(allowed members) except union(denied members)

AM = Allowed
DM Member
DM DM = Denied Member

AM DM

Union(allowed members) DM Union(denied members)

DM
DM

54 © 2010 IBM Corporation


Business Analytics

Security enforcement
Hierarchy navigation
Restricted members are skipped in operations like .parent
and .children.

Parent Member

Member Children

55 Footer Field © 2010 IBM Corporation


Business Analytics

Remote cube server management

Server 2
Server 1
Cube Server 2

WebSphere
Cube Server 1

Admin Console

Server 3

Cube Server 3

Repository
database

56 © 2010 IBM Corporation


Business Analytics

Proof points
Recent success stories

 Telecom customer

 Retail customer

 IBM integrated supply chain

57 © 2010 IBM Corporation


Business Analytics

Telecom customer overview

 Industry: Telecom
 InfoSphere Balanced Warehouse like system
– Database module - 42 data partitions
– Application module - Model 9133-55A, 4 PowerPC_POWER5 processors, 32GB memory
 Software
– DB2 9.5
– InfoSphere Warehouse 9.7.1
– Cognos 8.4
 Warehouse
– Four star schemas
– Largest fact table has 1.5 billion rows. Other fact tables have 50 million, 20 million and 8 million rows.
– 8-12 dimensions per fact table (most shared)
 Cubes
– Cube per star schema
– Virtual cube merges the four cubes
• 12 dimensions
• 25 measures – varying complexity
 Cognos reports took 5-7 seconds

58 © 2010 IBM Corporation


Business Analytics

Telecom Customer - Cubes


• Determine if subscriber additions • Assess whether monthly net additions
have increased from the same period are improving.
the previous year.
Performance
• Analyze the churn rate for cell • Calculate the average revenue per
Dashboard user (ARPU) to see if it matches industry
phone subscriptions over time to
determine whether the company is competitors. This is the total revenue
gaining or losing ground compared to divided by the total subscribers for a
competitors particular time period

Virtual Virtual
Cube 1 Cube 2

Toss
Activation Reactivation ARPU
Adjustment

59 © 2010 IBM Corporation


Business Analytics

Telecom Customer - Details

 Tuning
– New database with no optimization
– Defined primary keys on dimension tables
– Defined constraints (not enforced) on star schema joins
– Ran Cubing Services Advisor (no data sampling)
• Recommended indexes on fact table foreign keys and dimension level keys
• Recommended MQTs
– Built recommended indexes and MQTs
 Additional tuning that could be done
– Define MDC for fact table
– Run Cubing Services Advisor with data sampling to get better recommendations
– Run DB2 Design Advisor for additional index/MQT recommendations

60 © 2010 IBM Corporation


Business Analytics

Retail customer overview

 Industry: Retail
 IBM Smart Analytics System 7600 v9.7 (pSeries and AIX)
– Database module - 1 admin node + 2 data nodes (8+1 DPF partitions), Power6, 4-core, 32 GB
– Application module - 4-core, 32 GB (actually 8-core 64 GB but only used half)
 Software
– DB2 9.7.1
– InfoSphere Warehouse 9.7.1
– Cognos 8.4
 Warehouse
– One star schema
– Fact table has 2 billion rows
– Four dimensions
 Cubes
– One cube
• 4 dimensions
• 12 measures – simple aggregations
 Cognos reports took 5-7 seconds

61 © 2010 IBM Corporation


Business Analytics

Retail Customer - Model

Time Category Store Vendor

All All All All


Time Categories Locations Vendors

Year Organization Region Vendor

Month Department Area • Which stores generated the highest total sales

• How did sales compare for particular products


from the previous year
Week Category Store
• Which region was the most profitable

62 © 2010 IBM Corporation


Business Analytics

IBM integrated supply chain

 Software:
– DB2 9.5.2
– InfoSphere Warehouse 9.5.2
– Alphablox 9.5.2
– AIX 5.3
 Warehouse:
– 1 large table with dimensions embedded within fact table – over 70 million rows and growing
– Offline for maintenance only 1x week for 4 hours
– Refreshing cubes takes minutes in most case, up to 20 minutes for largest cube
 300 users worldwide
 Saved $6 million in first year, and expect to save more than double that in the second year

63 © 2010 IBM Corporation


Business Analytics

Technical resources
 Information Center for 9.7
http://publib.boulder.ibm.com/infocenter/db2luw/v9r7/index.jsp

 Cubing Services Tutorial


http://publib.boulder.ibm.com/infocenter/db2luw/v9r7/topic/
com.ibm.dwe.tut.cube.doc/tutcubetutorial.html

 Virtual cubes tutorial


http://publib.boulder.ibm.com/infocenter/db2luw/v9r7/topic/
com.ibm.dwe.tut.cube.doc/tutcubetutorial.html

 Dimensional security developerW orks article


http://www.ibm.com/developerworks/data/library/techarticle/
dm-0909securityinfospherecubing/

 Virtual cubes developerW orks article


http://www.ibm.com/developerworks/data/library/techarticle/
dm-0909infospherevirtualcubes/

64 © 2010 IBM Corporation


Business Analytics

Backup

65 © 2010 IBM Corporation


Business Analytics

IBM Cognos PowerCube™ – MOLAP

Primary OLAP Use:


Trending / Slice & Dice

Operational reporting
Sales trend & ad hoc analysis

Optimized for:
PowerCube • Highest consistent query
performance
Business modeling • Enterprise rollouts such as
internet delivery

Because of its ability to


provide:
• Pre-aggregated compressed
data that can be disconnected
• Automatic time series analysis,
trending, & point in time data
Access to Primary owner –
All Data
Relational Flat file s OLAP Cognos Reports Business Analyst or LOB IT

66 © 2010 IBM Corporation


Business Analytics

Key capabilities - Cognos Transformer & PowerCube™

Self service Flexible for High


business unique business performance
modeling needs portable storage

Enable the business Simple to complex Flexible, fit for purpose,


to model data for their modeling addressing pre-aggregated storage
business problems departmental needs for optimal performance
Time series analysis, Multiple drill paths, multiple Build, design, query in
point in time measures time dimensions disconnected situations*

With no SQL skills: Business rules, calculated Partition information by


Merge data from SAP, members or levels, time, level, or security
flat files, other OLAP custom time functions
dimensions, & Cognos 8 Incrementally add data
hourly, daily, etc

Series 7 PowerPlay or Cognos 8 front end clients

67 © 2010 IBM Corporation


Business Analytics

IBM Cognos TM1 – in memory MOLAP

TM1 clients Cognos 8 clients


Primary OLAP Use:
What-if scenario modeling

Operational Planning
Financial analytics &
reporting
TM1 Architect
Ideal for:
• write-back planning
applications in moderate sized
communities;
• complex models demanding
read/write interactivity

TM1 Servers Because of its unique:


• on demand aggregation and
calculations with 64 bit in-
memory processing
Access to
All Data Primary owner – LOB IT
Relational Flat files OLAP

68 © 2010 IBM Corporation


Business Analytics

Key capabilities - Cognos TM1

64 bit in-memory Enterprise level Business driven


processing collaboration analysis for real
time response
Compute hierarchical Create simulations easily Immediate answers to
aggregations & complex to interactively test complex questions on
calculations on demand business assumptions highly volatile data

Data import & scripting Enterprise data On the fly dimensional


engine in a multi-cube contributions and what-if hierarchy changes & self
architecture with shared scenario planning service ad-hoc analysis
dimensions

Quickly load & merge Easily create and access Advanced rules language
large data volumes (intra- reports or input templates for complex financial
day or nightly) from ODBC deployed via Excel or applications
/ ODBO & flat files web

Cognos TM1 or Cognos 8 front end clients

69 © 2010 IBM Corporation


Business Analytics

Client perspective

Query: select [Measures].[Store Sales] on columns, [Store].members on rows from [sales]

Results without dimensional security

Results with dimensional security

The value for Store


Sales is not the same for
All Store, USA, and CA,
i.e. no visual totals.

70 © 2010 IBM Corporation


Business Analytics

Working with Virtual Cubes

 Users will define virtual cubes using Design Studio.


 Administrative tasks for Virtual cubes are performed using the Cubing Services Administration Console

71 © 2010 IBM Corporation


Business Analytics

Create a virtual cube using


Design Studio

Cubes

Only renamed virtual Virtual Cube


dimension will
appear here, not all Virtual
virtual dimensions Calculated
measures

Virtual Measures

72 © 2010 IBM Corporation


Business Analytics

Create a virtual cube in Design Studio


 Add virtual cube

 Optionally rename dimensions to cause merging of desired ones


– Users can hide dimensions so they don’t exist on the virtual cube
– Optionally specify a default member for the dimension
– Optionally rename members to cause merging them
• Members can have their own merge operators
• Members can also be hidden on the virtual cube
– Optionally define calculated members
 Export the model

73 © 2010 IBM Corporation


Business Analytics

Use dimension browser in Design Studio to ease design

New Design Studio usability enhancement


– Display hierarchy members directly from the Design Studio
– Support all member types: MDX and SQL calculated
members
– Support all hierarchy types
– Support all real and virtual cubes

Use to shorten and simplify design time of real and virtual


cubes

74 © 2010 IBM Corporation


Business Analytics

Managing virtual cubes from Admin Console

 In Admin Console, virtual cubes belong to a cube model called VIRTUAL. This is where they
can be deleted.

75 © 2010 IBM Corporation


Business Analytics

Managing virtual cubes from Admin Console

Starting, deploying to a cube server, stopping, and undeploying virtual cubes operations are similar to real
cubes except for a few new dependencies:
– A virtual cube can be started/deployed only after both its direct cubes are started/deployed
– A cube or virtual cube can only be stopped/undeployed after all the virtual cubes that directly use it
are stopped/undeployed

Virtual Cube

76 © 2010 IBM Corporation


Business Analytics

Create security model in Design Studio - Cube security

77 © 2010 IBM Corporation


Business Analytics

Create security model in Design Studio


Dimension security (non-Measures dimension)

 Allowed Members and Denied Members must be MDX expressions that


evaluate to a set of members
 MDX is validated for syntax errors only

78 © 2010 IBM Corporation


Business Analytics

Create security model in Design Studio


Dimension security (non-Measures dimension) (cont’d)

79 © 2010 IBM Corporation


Business Analytics

Create security model in Design Studio


Dimension security (Measures dimension)

80 © 2010 IBM Corporation


Business Analytics

Create security model in Design Studio - Roles

81 © 2010 IBM Corporation


Business Analytics

Export security model from Design Studio to XML file

 Only security-enabled objects are exported


 Only policies and roles that are referenced by an authorization are exported
 XML file containing the security model is different from XML file containing the
cube model

82 © 2010 IBM Corporation


Business Analytics

Import security model from XML file to Administration Console

1. Select the database that contains the tables that are referenced by the cubes in
the XML file
2. Specify the XML file that contains the security metadata
3. Map roles
4. Select collision resolution option - Merge Replace, Merge Ignore, Replace

83 © 2010 IBM Corporation


Business Analytics

Import security model from XML file to Administration Console -


Collision resolution options

Collisions are detected and resolved at the resource level


Example: Merge Replace

Old security model Replaced Merged security model

Dimension: Store Dimension: Store

Policies: StorePolicy1 Policies: StorePolicy2, StorePolicy3

Authorizations: (Role1,StorePolicy1), (Role2,StorePolicy1) Authorizations: (Role1,StorePolicy2), (Role3,StorePolicy3)

Dimension: Product Kept Dimension: Product

Policies: ProductPolicy Policies: ProductPolicy


Authorizations: (Role3,ProductPolicy) Authorizations: (Role3,ProductPolicy)

New security model Dimension: Measures


Dimension: Store Accepted Policies: MeasuresPolicy
Policies: StorePolicy2, StorePolicy3 Authorizations: (Role3,MeasuresPolicy)
Authorizations: (Role1,StorePolicy2), (Role3,StorePolicy3)

Dimension: Measures

Policies: MeasuresPolicy Added


Authorizations: (Role3,MeasuresPolicy)

84 © 2010 IBM Corporation


Business Analytics

View security model in Administration Console


View the security metadata associated with a cube and its dimensions by
selecting Manage Cube Models  <cube model>  Edit  <cube>  View
Privileges

85 © 2010 IBM Corporation


Business Analytics

View security model in Administration Console (cont’d)


View the security metadata associated with a role by selecting Manage Roles 
<role>  View Privileges

86 © 2010 IBM Corporation


Business Analytics

Start cube server or refresh security

Hit “Reload
Security” button to
update the
security metadata
in a running cube
server

87 © 2010 IBM Corporation


Business Analytics

Delete security model


To remove the security metadata associated with a cube and its dimensions, select
Manage Cube Models  <cube model>  Edit  <cube>  Delete Cubes and Security

Delete Cubes and Security

88 © 2010 IBM Corporation


Business Analytics

Miscellaneous Design Studio wizards and explorers to manage and


view security model

 Import wizard
Imports security model from XML file to database in project or database explorer
 Deploy wizard
Exports security model from database in project explorer to database in database
explorer
 Create database from reverse engineering
Exports security model from database in database explorer to database in project
explorer
 Database explorer
Displays security in the repository database including default cube security

89 © 2010 IBM Corporation


Business Analytics

Thank you!

90 © 2010 IBM Corporation

You might also like