Hybrid Essbase: Why to Consider It & How to Get Started
May 7, 2018 - By: SC&H Group
Next to “moving to the cloud,” Hybrid Essbase has been getting much of the publicity in the world of Hyperion Planning and Essbase. With the increased need for on-demand data and zero-tolerance for poor performance, strategic implementation partners and administrators are always looking for a way to satisfy the latest business requirements. Unfortunately, even the best designed applications can experience performance issues over time due to the need to store more data and execute more robust calculations. Not to worry though – with one quick update to enable Hybrid Essbase, your standard BSO cube will receive an immediate boost!
Hybrid Essbase Overview
Large databases with several aggregating sparse dimensions are prime candidates for Hybrid Essbase. When compared to a traditional BSO cube, a hybrid database’s calculations complete significantly faster because hybrid mode removes the need to run aggregations in calculations. This improved calculation performance will significantly improve your business’ reporting, especially for multinational corporations that collect planning data in several different currencies. Additionally, you will reduce the overall database footprint by only ‘storing’ base blocks, and calculating upper members ‘dynamically’ when needed (just like ASO cubes).
So what is Hybrid Essbase? If you are familiar with the concepts of BSO and ASO cubes, you know that BSO cubes are great for traditional planning, as physically storing upper level sparse members allows us to create complex calculations (i.e. ones that use the upper level stored blocks to calculate other members in the database). In contrast, ASO cubes are primarily used for just storing large amounts of data, and they are not intended for calculations. Hybrid Essbase achieves the best of both worlds by combining the BSO ability for complex calculations and the ASO ability for dynamic data storage through the calculation of parent sparse members on the fly. It accomplishes this impressive feat by using the ASO calculation engine when possible and intelligently switching to the BSO calculation engine only when needed.
This cool feature became available with Hyperion 126.96.36.199.500 in a limited capacity, but is fully supported with 188.8.131.52. You may notice some performance impact when working with hybrid in the 184.108.40.206.500 world, but it is fully operational and extremely powerful. At this time, hybrid is only available in the on-premise world (sorry PBCS fans).
The major limitation of hybrid on 220.127.116.11 is the inability to calculate Time-balance tagged members and Dynamic Time Series members. However, those limitations are addressed in 18.104.22.168 and really only translate to potentially slower queries in 22.214.171.124.500. As with all major changes and with these specific limitations in mind, you should thoroughly test and vet Hybrid Essbase in your Development or Sandbox environment before enabling this in Production.
How to Enable Hybrid
You are probably thinking, “there is no way that I could easily convert my database to hybrid, especially with all of the current priorities my organization has.” Well, that’s where you are wrong, because converting to hybrid is actually pretty simple.
A prerequisite to converting your database, just like with any other update, is taking a level 0 backup. When converting to hybrid, it’s especially important to take this level 0 back up because sparse parent blocks will be removed from the system. After exporting the level 0 data, you can also go ahead and clear out the data from the database in order to start with a clean slate (make sure your level 0 back up completed successfully, as we will use this to reload data once the hybrid conversion is complete).
After you have your level 0 backup, you can go ahead and convert your database. The first step is to update your Essbase configuration file to include the new hybrid setting. The setting you will be adding is ASODYNAMICAGGINBSO APP LEVEL.
ASODYNAMICAGGINBSO is the configuration setting that tells Essbase to use hybrid mode, App is the name of your application (yes, hybrid is application-specific in case you have multiple applications on your Essbase server), and the level will be ‘Full’. You could set your level to be ‘Partial’, but there is little to no reason to use the partial hybrid setting. These updates to the Essbase configuration file can be made manually or through EAS (as we do in our example above).
Step 2 when converting to hybrid is often missed, so don’t overlook this part of the process. In order for the configuration change we just made to take effect…restart your Essbase Service!
Once restarted, we can proceed with the final Step in the hybrid conversion process, which is to update the storage setting for all of our sparse members. In Hybrid Essbase cubes, you must set your sparse parents to dynamic calc (instead of store) for the dimensions that you no longer wish to aggregate.
In traditional BSO world, all sparse parents are set to Store, but in Hybrid Essbase, we need these parents to be set to Dynamic Calc. Depending on your application, you can make this change to Essbase metadata directly using EAS or this update could be made to your dimensions in Workspace or EPMA. If you update the metadata in Workspace or EPMA, you will need to deploy and refresh your Essbase cube, as you would with any other metadata update. Once these metadata updates are complete, you can load your level 0 data from the backup, and you will instantly see data at your parent members without running any aggregations!
If, for some reason, you question whether you correctly converted your database, you can review your Essbase log files for confirmation. Oracle is extremely candid in the application log file when displaying that Hybrid mode is on and working.
What makes this so flexible is the ability to partially convert your database, which is especially convenient, as most databases contain several aggregating sparse dimensions. You can decide the level to which you convert your aggregating dimensions to hybrid by switching all of your upper level sparse members to Dynamic Calc or just some of them. Sometimes, calculations may need to reference upper level sparse members, so you may need to actually store those blocks. In that case, you can leave those dimensions as Store and just continue to aggregate as you do in a typical BSO cube. Even under these circumstances, you will still notice a huge positive impact on performance even if you only convert one of your aggregating dimensions.
Benefits after Converting to Hybrid
In our history with hybrid, we have seen tremendous benefit for those that are able to make the conversion. At one particular client, with a database that contained 11 dimensions, 5 of which were aggregating sparse, we determined a limited hybrid approach would be very beneficial. After we converted the client’s BSO cube to hybrid and changed only 1 of the aggregating sparse dimensions to dynamic calc, the database went from 160 GB to 55 GB and their calculations saw a 200% increase in speed.
Ideal databases for hybrid simply accept user input and contain minimal calculations, such as aggregations and currency conversions. Databases with intensive calculations that focus on upper level sparse members are not ideal for hybrid mode, but it is also not impossible to convert to Hybrid Essbase in those situations. When referencing the upper level parents in calculations, you will just need to get creative with your calculations and use functions, such as @SUM and @SUMRANGE, to sum up to the total amount instead of explicitly referencing sparse parent members. Additionally, you must ensure that you remove the upper level sparse members from any FIX statement, as you will receive an error since Essbase can no longer grab the previously stored block.
Time to Flip the Switch!
Hybrid Essbase is getting a lot of buzz – as we have seen firsthand – and can tremendously improve application performance and enhance business processes. Your organization will be able to schedule tasks, such as currency conversions, to run more frequently and the waiting period between submission and review will be virtually eliminated.
So the question is, are you ready to receive the Hybrid boost?