oracle essbase new features and roadmap update
DESCRIPTION
Find out what is planned for Oracle Essbase in upcoming releases. Oracle Essbase is a key foundation product for Oracle Hyperion enterprise performance management applications and Oracle Business Intelligence. Given the many new and exciting features that were introduced in the last year, you shouldn’t miss this opportunity to learn what’s new and what’s coming in Oracle Essbase. This session covers new features for standalone custom Oracle Essbase applications, enterprise performance management, Oracle Business Intelligence integration, and Oracle Exalytics.TRANSCRIPT
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Safe Harbor Statement
The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.
2
Oracle Essbase New Features and Roadmap Update
John BakerDirector, Analytics
Gabby RubinSr. Director, Essbase Product Management
Steve LiebermenschDirector, Essbase Product Management
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Essbase RoadmapAn Introduction to Essbase
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Oracle Business AnalyticsEnhanced by Essbase
OLTP & ODSSystems
Data WarehousesData Marts
PackagedApplications
(Oracle, SAP, Others)
ExcelXML/Office
BusinessProcesses
OLAPSources
Exadata Unstructured & Semi-Structured
ERP Analytics
StrategyManagement
Financial Close & Reporting
Planning &Forecasting
Profitability Management
CRM AnalyticsIndustry Analytics
BI Server
Common Enterprise Information Model
Essbase Dimension Management Predictive Analytics
Interactive Dashboards
Reports & PublishingQuery & Analysis Detect & AlertOffice Search Embedded Mobile Scorecards
BI/
EPM
Pla
tfo
rmB
I / E
PM
Ap
ps
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
What’s New?
6
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Extend Parallel Scripting OptionsFIXPARALLEL
• Execute any FIX blocks in parallel, overcomes restrictions of CALCPARALLEL
• Give power of parallelism to the users when CALC Parallel cannot parallelize the scripts
• Enables parallelism for DATAEXPORT, DATACOPY, scripts with variables and more
7
Script Performance Improvement
FIX 22.19 Sec
FIXPARALLEL 4 5.94 Sec 3.7 X
BEFORE
FIX ( @RELATIVE(“Version”, 0))
DATACOPY “100-10” TO “300-10”;
…
ENDFIX
AFTER
FIXPARALLEL (4, @RELATIVE(“Version”, 0))
DATACOPY “100-10” TO “300-10”;
…
ENDFIXPARALLEL
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
FixParallel Key Points
• CALC PARALLEL should be your first choice, use FIX PARALLEL when you hit CALC PARALLEL limitations
• FIXPARALLEL can often improve calculation times in key use cases:
– CALCPARALLEL is forced to run in serial (shown in app log)• Usage of variables
• DATACOPY, CLEARDATA, and DATAEXPORT only a slice of the database
• Complex member/formula dependencies
8
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Parallel Processing Performance with ExalyticsBased on Essbase 11.1.2.3.500 - Results in seconds
Oracle Confidential – Highly Restricted 10
CustomerBaseline
11.1.2.3.500“Commodity”11.1.2.3.500
Exalytics11.1.2.3.500
“Commodity”Gain
Exalytics Gain
Customer 1 4,035 2,322 987 42% 76%
Customer 2 28 28 26 0% 7%
Customer 3 93 93 92 0% 1%
Customer 4 132 107 78 19% 41%
Customer 5 5,275 2,185 1,159 59% 78%
Commodity = Exalytics server with HardwareAccelerationFlag turned off
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 11
HWA False = ~ Commodity HWA True = Exalytics
CP Best FP Best Mixed CP Best FP Best Mixed
Customer 1 script1 6 6 6 6 6 6
Script2 358 387 358 310 208 208
Script3 100 142 100 96 144 96
Script4 1,364 1,390 1,364 431 521 431
Script5 11 42 11 12 42 12
Script6 1,839 370 370 1,831 164 164
Script7 5 7 5 5 5 5
Script8 352 108 108 355 67 67
Total 4,035 2,452 2,322 3,046 1,155 987
Customer 2 calc 28 50 28 28 26 26
Customer 3 calc 93 163 93 92 96 92
Customer 4 Script1 24 32 24 23 25 23
Script2 108 83 83 57 55 55
Total 132 116 107 81 80 78
Customer 5 Script1 3,658 1,089 1,089 3,572 635 635
Script2 332 80 80 342 20 20
Script3 727 458 458 741 206 206
Script4 558 1,826 558 297 297 297
Total 5,275 3,453 2,185 4,951 1,159 1,159
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
MDX Improvements
• Optimized AGGREGATE Function–Significant performance improvements for totals at
multi-level hierarchies
– Improvement is based on the query and dimension depth
• MDX Sub Select (not yet via OBI)–Significant performance improvement for queries against
large databases
–The bigger the model, the (relatively) better it gets
• MDX Optimization for Attributes
12
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
MDX Sub Select
• Old MDX Query Format:– [<with_section>]
SELECT [<axis_specification> [, <axis_specification>...]] [FROM [<cube_specification>]][WHERE [<slicer_specification>]]
• New MDX Query Format:– [<with_section>]
SELECT [<axis_specification> [, <axis_specification>...]] [FROM [<cube_specification> | SELECT [<axis_specification> [, <axis_specification>…]] ] ] [WHERE [<slicer_specification>]]
13
SELECT Sales ON COLUMNSFROM(SELECT {[Colas],[Root Beer],[Cream Soda]}
ON ROWSFROM Sample.Basic)
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Essbase and Planning on ExalyticsEssbase BSO Performance
• Focus on mix load activity for Planning use cases
– Multi user scalability for concurrent query and calcoperations
• Continue to increase the value of Exalytics for Essbase and Planning customers
– Better scalability with full utilization of Exalytics cores and memory
– Achieved strong differentiation from commodity hardware
– Patentable lockless algorithms
• Up to 3.5X improvement from Exalytics v1
– Not for a single query or calc – focus on higher scalability for realistic multi-user workload
14.4 16.8 26 4122.7 29.5 44.5 48.5
8.3 8.77.3
5.7
17.7
21.7
27.3
29.5
0
10
20
30
40
50
60
0
5
10
15
20
25
30
35
Default 20 32 40
Exalytics BSO Mix Load Essbase 11.1.2.3 vs. Essbase 11.1.2.3.500
Essbase 000 CPU Essbase 500 CPU
Essbase 000 TPS Essbase 500 TPS
14
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Reduce BSO Fragmentation
• In-place block write
• Slows the fragmentation
– Reduce, potentially eliminate, the need for restructure
– Shorten maintenance window
• “Exalytics first” optimization
15
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
BSO/ASO Hybrid Aggregation Mode v1
• Combine the complexity of BSO models with ASO dynamic performance
• 100% backward compatible with the 100’s of thousands BSO databases out there – Zero Learning curve
• Will change the way Essbase applications are built and used
• Initial release will handle only simple dynamic aggregation
– This will continue to be a major area of investment for us
16
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
What’s Next?
17
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Hybrid Aggregation ModeSubject To Change, ETA EPM PS4
• Continue to increase coverage for additional functions
• Time Balance, Dynamic Time Series
• Complex calculation semantics
– Cross references
– Dim references
• Longer term: Hybrid Mode in Calc Scripts
18
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Hybrid Aggregation Mode Test
19
Block Size (bytes) 44,304 44,304
# Blocks (Total) 99,221,775 540,334
Total Expanded Block Size (.pag in memory) -- GB 4,094 22
Index Cache 4GB 4GB
Data Cache 20GB 20GB
.ind 3.6GB 15.6MB
.pag 82.1GB 285.5MB
.tct 66b 68b
ASO App Cache 32MB 200MB
CP_pt1 2.85 2.79
FP_pt2 40.82 40.8
CP_pt3 1.56 1.51
CP_pt4 1.26 1.47
FP_pt5 1180.11 n/a
Total 1226.6 46.57
Query #Everything
StoredEverything Dynamic
1 0.05 1.9
2 0.01 1.89
3 0.01 1.94
4 0.07 1.94
5 0.01 0.86
6 0.06 1.95
7 0.05 1.94
8 0.05 1.93
9 0.01 0.81
10 0.01 0.83
11 0.01 0.85
12 0.01 0.85
13 0.01 0.85
14 0.09 0.89
15 0.08 0.85
16 0.02 0.85
17 0.44 6.2
18 0.52 6.23
19 0.56 6.29
20 0.6 6.33
21 1.38 6.77
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Calc Language EnhancementsSubject To Change, ETA EPM PS4
• @XRANGE Within Functions
– Expend the support of XRANGE as input for various calculation functions
– Allows us to apply functions to a slice of data as opposed to a single vector or dimension
• @RELXRANGE– Cross–dimension list based on the relative position of a cell– @RELXRANGE (startOffset, endOffset, XrangeList)
• startOffset - Defines the first tuple in the cross-dimension list to be returned
• endOffset -Defines the last tuple in the cross-dimension list to be returned
• XrangeList - A comma-delimited list of member names, cross-dimension members, cross-dimension expressions, or a member set function, @XRANGE, or range function
20
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Calc Language: FOR LOOPSubject To Change, ETA EPM PS4
• Introduce two new variable types
–MEMBER
– NUMBER
• FOR LOOP syntax– FOR (mbr, mbrList)
statement;
ENDFOR
21
Sales (MEMBER _Month, _MonthList = ("Jan":"Dec");MEMBER _State, _StateList;
_StateList = @LIST("New York", "Massachusetts", "Florida");FOR (_Month, _MonthList)
FOR (_State, _StateList)IF (_Month->_State > 10000)
CONTINUE; /* skip further calculation */ENDIF;_Month->_State = _Month->_State + 1;
ENDFOR;
IF (_Month-> "New York" > 116)BREAK; /* quit FOR(_Month, _MonthList) loop */
ENDIF;
ENDFOR;);
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Renegade MembersSubject To Change, ETA EPM PS4
• A selected member which will collect the data from rejected records of the dimension
22
Prod (G3,L0)
P1
P2
Geog (G3,L0)
G1
G2
Prod Geog Measure
P1 G1 1
P2 G1 3
P1 G2 5
P2 G3 7
P2 G4 2
P3 G4 1
P3 G2 2
Query RDBMS Essbase Essbase with RM
Select Prod, SUM(Data)From Fact, ProdDimWhere Fact.Prod = ProdDim.ProdGroup by Prod
P1, 6P2, 12
P1, 6P2, 3
P1, 6P2, 12
Select Geog, SUM(Data)From Fact, GeogDimWhere Fact.Geog = GeogDim.GeogGroup by Geog
G1, 4G2, 7
G1, 4G2, 5
G1, 4G2, 7
Geog/Prod P1 P2 _ProdRenegade
G1 1 3 #Missing
G2 5 #Missing 2
_GeogRenegade #Missing 9 1
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Infrastructure EnhancementsSubject To Change, ETA EPM PS4
• Batch Outline Editing
– New Set of API that allows mass operations on Essbase Outline
– Huge performance improvement for programmable use cases of Essbase
• Improved Resource management and CPU utilization– Thread management and thread based memory allocation and management
– Fundamental improvement to Essbase infrastructure, will impact resource consumption, stability and performance.
24
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Essbase RSubject To Change, ETA EPM PS4
• Provide a library to read and write Essbase data from R
– connect
–mdx2Array
–writeBack
• Future direction
– Allow Essbase users to trigger R from Essbase
– Embedded R in Calc Scripts
– Generic capability to allow the extendibility of Essbase with 3rd party scripting languages
25
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
EAL Financial Intelligence Moving into EssbaseSubject to Change
• Bringing EAL capabilities into Essbase
– Enhance Essbase at its core strength, financial applications
• Replicate EAL aggregation logic into Essbase
– Financial Accounts dimension, member types and behaviors
– Understand Balance vs. Flow
– Cross dimensional interaction using properties• e.g. Switch Sign, Switch Type
• View/Frequency dimension
• Future: EAL data synchronization agent
26
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Post Load ProcessingSubject to Change
• Post load script for data manipulation before it is stored in the cube
• Sample use cases
– Submit in any frequency, store in one
– Load data directly into Dynamic Calc member and route it to be stored
27
Sales, Feb14, Milk, YTD, 500Sales, May14, Milk, QTD, 300
Sales, Jun14, Milk, Periodic, 150
Load into“Essbase” Activates script:
Translate to Periodic
Sales, Feb14, Milk, Periodic, 90Sales, May14, Milk, Periodic, 110Sales, Jun14, Milk, Periodic, 150
Move intothe Cube
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Dimension Member PropertiesSubject to Change
• Dimension Member Properties can be
– Text
– Numeric
– Date
– Enum
• Assigned with a dimension member
• Dynamic association
• Optimized for queries
28
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Cell statusSubject to Change
• Cell status will track when and how a particular cell in the cube was populated
–Will track how the value in a cell was arrived at – Load, Calc, Manual Entry, Dynamic
– Transaction ID for the latest transaction that modified the cell
• Cell statuses will be accessible via CALC Scripts, API and MAXL
29
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Cell Status – System Managed StatusesSubject to Change
• UNKNOWN(0) - reported when the status is not known
• LOADED(1) – loaded from an external source
• INPUT(2) - data was entered into the cell by using a spreadsheet lock-and-send or grid update
• DYNAMIC(3) - Dynamic Calc in POV
• DERIVED(4) – data was derived automatically by the system
• CALCULATED(5) - data which was calculated by a user process
30
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Essbase and Exalytics
• Essbase will become a “Pure” in-memory engine as calculation will no longer wait for I/O (background write)
• In-Memory Aggregate Views for ASO
• Improved Resource management and CPU utilization
– Thread management and thread based memory allocation
– Fundamental improvement to Essbase infrastructure, will impact resource consumption, stability and performance.
Oracle Confidential – Highly Restricted 31
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Q&A
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 33