Planning with ASO - US-Analytics

57
Jake Turrell Turrell Consulting, LLC An Implementation Roadmap Planning with ASO

Transcript of Planning with ASO - US-Analytics

Jake Turrell

Turrell Consulting, LLC

An Implementation Roadmap

Planning with ASO

Introduction

Difficult Choices in Purgatory

Planning with BSO (Live Demo)

Planning with ASO (Live Demo)

Planning with Hybrid (Live Demo)

Which option should you deploy?

Agenda

17+ Years Hyperion Implementation Experience

Certified in both Planning and Essbase

Prior Practice Lead at Hyperion Partner Firm

Co-Editor of the Book “Developing Essbase

Applications: Advanced Techniques for Finance

and IT Professionals”

Find me on LinkedIn:

http://www.linkedin.com/in/jaketurrell/

Background

Developing Essbase Applications

● Over 50 years of expert experience between

the covers.

● Advanced content written so that developers at

all levels will gain assistance and insight.

● Chock full of experience proven best practices.

● Collaboratively written by a team of respected

and sought after Essbase developers.

● Source code at

www.developingessbasebook.com

● Includes all download access to all source

code & scripts.

● Purchase your copy today and energize your

Essbase career!

Read it now, because . . .

THE

ARE

CHANGING!

OPTIONS

Plan Type Basics

BSO ASO

BSO was the only option prior to Essbase 7.

ASO was introduced in Essbase version 7, but was not

supported by Hyperion Planning until Planning 11.1.2.3.

Hybrid was introduced with Essbase version

11.1.2.3.500. Hybrid Aggregation Mode is actually an

option within BSO cubes.

Block Storage Option Aggregate Storage Option Hybrid Aggregation Mode

Hybrid BSO

ASO

There used to be only one option, BSO. Now there

are up to three options, depending on version!

Relatively few clients have deployed ASO plan types

in Hyperion Planning in production environments.

The release of Hybrid Aggregation Mode for BSO

cubes in version 11.1.2.3.500 represented a “partial”

release of functionality with significant limitations.

Published Essbase roadmaps indicate a second

release with significant new functionality for Hybrid

Aggregation Mode is on the way.

Difficult Choices in Purgatory

BSO is an established choice, however it suffers from

performance issues with large dimensions.

ASO Plan Types can address the limitations

associated with large dimensions, however this option

is new and has an entirely different set of limitations.

Hybrid Aggregation Mode will eventually represent the

best of both worlds, however this option is brand

spanking new and we know significant updates are on

the way.

ASO Plan Types may eventually become irrelevant.

Difficult Choices in Purgatory

Difficult Choices in Purgatory

This is new and

unproven technology.

Be conservative!

I can make

it work!

Making a choice requires a detailed understanding of

current limitations and reasonable guesses about

future functionality.

What do you do now if you need to deploy a Hyperion

Planning application with very large dimensions?

Let’s explore the options and limitations . . .

Difficult Choices in Purgatory

Starts with Workforce Planning 11.1.2.3 (BSO).

Introduces ASO Plan Types.

Introduces Hybrid Aggregation Mode for BSO.

All demos feature specific Workforce Planning calcs.

Leverages public City of Chicago employee data.

32,439 Employees

1099 Unique Jobs

35 Departments

The Demo

PLANNING WITH BSO

Pro’s

● Highly Developed, Mature & Stable Technology

● Fully supported with EPMA, Calc Manager, Etc.

● Rich calculation features & functionality.

Con’s

● Poor performance with very large dimensions.

Planning with BSO

DEMO

BSO PLAN TYPE

Demo – BSO Plan Type

Workforce Planning (Out of the Box)

Loaded City of Chicago Public Sector Employee Data

Added Assumptions for: ● Salary Basis

● Hours per Week

● Working Days

● Employee Type

● Grade

● Pay Type

● Start Month

● Merit Month

● Tax Region

● Health Plan

● Performance

Demo – BSO Plan Type

Example Calculation: Bonus ● Depends on Adjusted Salary (Salary, Merit & Overtime)

● Depends on Bonus Basis (Paid Annually, Bi-Annually, Quarterly)

● Depends on Bonus % (Depends on Target for Grade & Performance)

Complex calculation at Lev0 Job, Entity and Employee.

These dimensions are subsequently aggregated.

Not very fast on large Employee dimensions.

Demo – BSO Plan Type

Bonus Can Be Calculated Annually,

Bi-Annually or Quarterly

Demo – BSO Plan Type

Annual Bonus Calculated

in Last Month of Year

PLANNING WITH ASO

Creating an ASO Plan Type

Creating an ASO Plan Type

Creating an ASO Plan Type

Creating an ASO Plan Type

Creating an ASO Plan Type

ASO Plan Types REQUIRE

at least one BSO Plan Type.

Creating an ASO Plan Type

ASO Plan Types are created in a

separate Essbase application.

Creating an ASO Plan Type

Pro’s

● Supports HUGE dimensions.

● No sparse aggregations required.

Con’s

● Not supported with EPMA as of version 11.1.2.3.500.

● Few production implementations of ASO Plan Types.

● Users cannot deploy an ASO plan type without a

corresponding BSO Plan Type.

Planning with ASO

Planning with ASO – Minor Limitations

Historically, ASO has not had strong support for

calculations that occur at leaf nodes in the database

and then get aggregated to upper levels.

There are three options:

● Calculate and Aggregate in Memory (Can be very slow.)

● Export / Import Method (Requires Extra Members in Outline)

● Procedural Calculation or Allocation

Planning with ASO – Minor Limitations

Suppress Missing Blocks – This concept does not

exist for ASO cubes, as there are no blocks. This

means that forms that drill into two or more very large

dimensions sometimes will not render. BSO performs

well using this technique.

DEMO

ASO PLAN TYPE

Demo – ASO Plan Type

Demonstrates some Workforce Planning input forms and

calculations.

Focuses on Bonus calculation.

Bonus has some aspects that work well in an ASO

world, and others might not.

Demo – ASO Plan Type

Bonus Basis is the first step in the bonus calculation.

This member determines when the bonus is actually

paid and applies a factor to spread out the payment.

● Quarterly – ¼ paid in Mar, Jun, Sep & Dec

● Bi-Annually – ½ paid in Jun & Dec.

● Annually – All paid in Dec.

This calculation works well in an ASO Plan Type

because it is only calculated at Level 0, and does not

need to be aggregated up any dimensions.

Demo – ASO Plan Type

Demo – ASO Plan Type

Rec. Bonus % is the second step in the bonus

calculation. This member determines the Target

Bonus based upon Grade, and then applies a

multiplier based upon Performance.

This calculation also works well in an ASO Plan Type

because it is only calculated at Level 0, and does not

need to be aggregated up any dimensions.

Demo – ASO Plan Type

Bonus is the final step.

● [Adjusted Salary] * [Rec. Bonus %] * [Bonus Basis]

But what about retrieves at upper level Employees and

upper level Jobs?

Let’s review three options:

● Calculate and Aggregate in Memory (Can be very slow.)

● Export / Import Method (Requires Extra Members in Outline)

● Procedural Calculation or Allocation

Demo – ASO Plan Type

Option #1 – Calculate in Memory

Works well on small-ish dimensions.

Does not work well with 30,000+ Employees and

1000+ Jobs and 35 Entities.

Demo – ASO Plan Type

Hope you’re not in a hurry!!!

Option #2 – Export / Import Method

This is how procedural calculations were performed in

ASO before procedural calculations were introduced.

Demo – ASO Plan Type

Bonus_ (Formula Member) Bonus (Stored Member)

Report

Script Load

Rule

Hidden

From Users

Users

Report Here

Option #2 – Export / Import Method

Important downfalls:

● Requires batch processing to tie export and import together.

● No way to launch upon save of form.

● Can’t pass parameters to Report Scripts.

● Good method for Reporting cubes, but not Planning cubes.

Demo – ASO Plan Type

Option #3 – Procedural Calculation (or Allocation)

Two Options:

● MaxL Script (Preferable for Batch)

● Calc Manager (Preferable for Anything Else – So Easy!)

Demo – ASO Plan Type

Step 1: Create Variables (Run Time Prompts)

Step 2: Create MDX Member Formulas (Optional)

Step 3: Create Calc Manager Rule

Step 4: Associate Rule with Save of Form (Optional)

Step 5: Test

Demo – Calc Manager Procedural Calc

PLANNING WITH HYBRID

Enabling Hybrid Aggregation Mode

Use ASODYNAMICAGGINBSO in Essbase Config File.

Parameter Usage

None Disables Hybrid Aggregation Mode

Partial Enables Hybrid Aggregation Mode, but only for simple unary operators

(+, - and ~). Any other calculations are performed in block storage

mode.

Full Enables Hybrid Aggregation Mode for simple unary operators and

member formulas . . . however there is a long list of formula limitations.

Enabling Hybrid Aggregation Mode

Make upper-level Sparse members Dynamic!

WHAT!!??

Pro’s

● Will eventually represent the best of both worlds

(BSO & ASO).

● Simple config file setting on a BSO cube.

● Works with EPMA.

Con’s

● Brand spanking new. (Danger Will Robinson!!!)

● Significant formula limitations (as of 11.1.2.3.500).

● Data extraction limitations.

Planning with Hybrid Aggregation Mode

Hybrid Limitation Details

Calculations always occur. However, they may be

forced into Block Storage Mode, and may be very slow.

There is a limited set of supported functions for member

formulas (as of 11.1.2.3.500):

● @CHILDREN

● @EXP

● @INT

● @ISMBR

● @MIN

● @MINSRANGE

● @MOD

● @MODE

● @NOTEQUAL

● @POWER

● @RANGE

● @REMAINDER

● @ROUND

● @VAR

● @VARIANCEP

● @VARPER

Hybrid Limitation Details

The following scenarios will force Essbase calculations

into Block Storage Mode (as of 11.1.2.3.500):

● Time Balance Tags

● Attribute Calcs

● Cross-Dims in Formulas

● Dynamic Calc Members with Formulas that are Target of Transparent Partitions

● Queries with Two-Pass and One Pass Calcs from Same Dimension

● XOLAP

Hybrid Limitation Details

The following scenarios will allow Hybrid Aggregation

Mode (as of 11.1.2.3.500):

● Sparse Member with Formula . . . Only References Sparse Members

● Dense Member with Formula . . . Only References Dense Members

● Sparse Member with Formula . . . References Mixed Members

(But Dense Members are Stored)

Hybrid Limitation Details

CONFUSED??? Limit use of member formulas.

Place complex calculation logic in business rules.

Ensure that member formulas do not violate the Hybrid

Aggregation Mode rules.

Do not use time balance settings.

Do not use attribute dimensions.

Test, Test, Test and Test Again!

DEMO

HYBRID PLAN TYPE

Demo – Enabling Hybrid Aggregation

Essbase Config File Settings

ASODYNAMICAGGINBSO BSO_WFP NONE

ASODYNAMICAGGINBSO HYB_WFP FULL

Demo – Hybrid Plan Type

Calculate Bonus at Lev0 Job, Entity and Employee

Clear All Upper Level Blocks

Retrieve Total Company Bonus

No Sparse Aggregation Required!!!

Monitor The Application Logs!

Good Message:

Hybrid Aggregation Mode enabled.

Bad Message:

Hybrid Aggregation Mode disabled for [Member Name X]

due to . . .

Demo – Avoid Disaster with Hybrid

QRYGOVEXECBLK [appname [dbname]] n

Sets max number of blocks query can retrieve before

being terminated.

QRYGOVEXECTIME [appname [dbname]] n

Sets max amount of time (seconds) a query can execute

before being terminated.

BSO

ASO

Hybrid

Which option should you deploy?

(Soon . . . but wait for 11.1.2.4 . . . )

Questions?

Find me on LinkedIn:

http://www.linkedin.com/in/jaketurrell/