Essbase Tools & Toys Free and open source programs to help develop, automate, test, and validate Hyperion systems

Prepared by: Jason Jones, Applied OLAP Inc. @jwj

Session ID: 10645 Essbase Toys and Tools

• Drillbridge • Cubedata • Camshaft • Vess • Thriller • Hyperpipe • Jessub • Outline Export Parser • Rejected Record Summary

April 2-6, 2017 in Las Vegas, NV USA #C17LV Drillbridge

• Drop-in, turnkey drill-through solution for Smart View/Essbase, Hyperion Planning, PBCS, and FR • Maps drilled cell to custom SQL query • No redevelopment to cube, changes to automation • Results shown in web browser

April 2-6, 2017 in Las Vegas, NV USA #C17LV Architecture

April 2-6, 2017 in Las Vegas, NV USA #C17LV Drill-through Results

April 2-6, 2017 in Las Vegas, NV USA #C17LV Additional Drillbridge Features

• Available as a free download (there is a licensed version available too) • Upper-level drill-through (and support > 1,000 items!) • Drill to any JDBC-supported • Drill to custom URL, MDX query • Smart formatting, clickable links • Download to Excel • Administered via web interface • Original demo: download/deploy in 10 minutes J

April 2-6, 2017 in Las Vegas, NV USA #C17LV Cubedata

• Generate data that can be easily imported to a cube • Created to help realistic performance/calc testing • Define: • Dimensions/Members • Load factor (density) • # of files to generate • Java • Free (download from Jason’s website)

April 2-6, 2017 in Las Vegas, NV USA #C17LV Cubedata Example

• Text files with one member per line • java -jar cubedata.jar --files measures.txt periods.txt regions.txt - -maxRecords 10000 • Generates: • Sales,Jan,Washington • Sales,Feb,California • COGS,Mar,Oregon • Etc. • Can use Outline Extractor to generate files • Java, Free

April 2-6, 2017 in Las Vegas, NV USA #C17LV Camshaft

• Execute an MDX query against a cube • Get useable output to load to another cube • Created as alternative to running MDX via MaxL • Numerous output options • #Missing/#NoAccess • Tuple Consolidation • Headers/Spacing • Java, Free • Uses Essbase Java API

April 2-6, 2017 in Las Vegas, NV USA #C17LV Camshaft Example

April 2-6, 2017 in Las Vegas, NV USA #C17LV Camshaft Output

April 2-6, 2017 in Las Vegas, NV USA #C17LV Vess

• “Virtual Essbase” JDBC Driver • Provides a façade over an Essbase server • Tables modeled on Essbase server elements • Outline data • Cube data • Substitution variables • Sessions • Load data • Java • Uses Essbase Java API • Rationale • Drop into ODI, JDBC tool • Enhance automation (MaxL) • Flexible data extracts • Eliminate some reasons to write custom Java/other program • Experimental!

April 2-6, 2017 in Las Vegas, NV USA #C17LV Vess in SQL/JDBC tool

April 2-6, 2017 in Las Vegas, NV USA #C17LV Thriller

• Thriller = Camshaft + Vess • A JDBC driver that executes MDX queries and maps the results back to a JDBC ResultSet • Use cases • Traditional ETL with MDX querie • Drop in to FDMEE • Run MDX queries in generic JDBC tool

April 2-6, 2017 in Las Vegas, NV USA #C17LV Thriller Query

April 2-6, 2017 in Las Vegas, NV USA #C17LV Thriller Results

April 2-6, 2017 in Las Vegas, NV USA #C17LV Hyperpipe

• Executes a query against a relational database (JDBC) and loads directly into a cube without using a load rule • Originally created to simplify certain data load situations (remove load rule, intermediate text file) • Java, Open Source (ASL 2.0) • Uses Essbase Java API

April 2-6, 2017 in Las Vegas, NV USA #C17LV Hyperpipe Sample Command

April 2-6, 2017 in Las Vegas, NV USA #C17LV Jessub

• Create/update substitution variables using advanced expression language • Variable generation is often “kludgey” and weak point in automation – or manual • Jessub lowers cost of many variable automation scenarios • Doesn’t use Java API (load variables with MaxL) • Java, Open Source (ASL 2.0)

April 2-6, 2017 in Las Vegas, NV USA #C17LV Outline Export Parser

• Library • Parses an XML file generated by the MaxL outline export command • Useful starting point for writing your own custom program that needs to parse the outline and do something with it (generate custom output file, etc.) • MaxL exports are fast! • Java, Open Source (ASL 2.0)

April 2-6, 2017 in Las Vegas, NV USA #C17LV Export Parser Input

April 2-6, 2017 in Las Vegas, NV USA #C17LV Sample Parser Output

April 2-6, 2017 in Las Vegas, NV USA #C17LV Rejected Record Summary

• Parsed the rejected record file to provide summary statistics on what records were rejected and why • Useful as part of automation sequence that sends email upon error/completion (ODI, automation tool, etc.) • Java, Open Source (ASL 2.0)

April 2-6, 2017 in Las Vegas, NV USA #C17LV Sample

April 2-6, 2017 in Las Vegas, NV USA #C17LV Availability/Downloads

• https://www.jasonwjones.com/ à Projects page has links to most tools • https://github.com/jasonwjones/ • http://www.appliedolap.com

April 2-6, 2017 in Las Vegas, NV USA #C17LV Please Complete Your Session Evaluation Evaluate this session in your COLLABORATE app. Pull up this session and tap "Session Evaluation" to complete the survey.

Session ID: 10645 Q&A