Thursday, November 7, 2013

Hyperion Planning Data Form Design Considerations


Hyperion Planning Data Form Design Considerations


Recommended Design:

  • Keep Dense dimensions in rows and columns.
  • Place Sparse dimensions in Page and Point of View (POV).
  • Place Static dimensions in POV and hide these dimensions where not relevant to the form.
  • Plance Scenario, Version and Year Dimensions in the Page wherever possible.
  • Use dynamic user vairables and substitution variable as much as possible.
  • Use Run on Save and Run on Load for business rules on data forms only where business rules can completed execution within short timeframe (say less than 30 sec.). All other business rules should be set to launch manually.
  • For Planning relase 9.3.0 and later, set long - running business rules to run in the background.
  • Limit composite data forms to two data forms where possibble.
  • Use the Suppress Missing Data option to skip #MISSING values from resultant data forms.
  • Split single larger data forms into multiple smaller data forms with fewer rows and columns.
  • Minimize using account annotation on data forms.
  • Enable the Mass Allocate feature on data forms only where absolutely necessary. this feature runs calcualtion scripts that can impact data values at intersection to which the end user may not have access.

Optimal Design Ex:

Account - Rows
Time Period - Columns
Entity and other dimensions - Page / POV

Sub-optimal Design Ex:

Entity - Rows
Year - Columns
Account, Time Period, and other Dimensions - Page/POV

Performance Considerations:
  • The Run on Save and Run on Load calcualtion options place an additional demand on resources within the Essbase server for each save or load operation performed by end users. If it is necessary to use Run on Save or Run on Load, runtime prompts should be used to restrict the scope of the calcualtion and minimize the impact on users of the Essbase server.
  • Review the Hyperion Planning Adminstrator's Guide for steps that detail the execution of large calculations in batch mode. For example, you can set Planning properties to have business rules switch to background processing after a threshold that you configure. In addition , you can run business rules in batch mode using the options under Tools > Business Rules.
  • When users access data form members that are dynamically calculated or have member formulas, an additional load is placed on the Essbase server. The impact is more acute during heavier user load.
  • The biggest impact on data form performance is the grid size. Grid size consists of the number of rows, multiployby the number of columns. The grid size doubles if an application uses multiple currencies.
  • Adjeust the number of cells retrieved to the memory on end user's client machines. To determine the number of cells, multiply the number of rowas by the number of columns.
  • The Suppress Missing Blocks option for rows allows placing large sparse dimensions in rows, while providing good response time if the density of the query is low. Only blocks with data are retrieved. For example, when using this option, you can place an employee dimension consisting of thousands of members in the rows, and place the entity in the page or POV. Then, only employees of the selected entity are retrieved.
  • Using Suppress Missing Data can improve performance. Before using this feature however it is recommended that you test the impact on performance.
  • Using Account annotation impacts performance. Use this option only if account annotations are required.
  • If the Supporting Detail Detection Cache reaches 75% or higher, the cache size shoub be increased.
  • Enabling shared member security impacts performance. Use this option only if you want the base member's security to be based on its own security and that of all of its shared members. If this option is not enabled, users with access to the base member still have access to all of its shared members.
  • The administrator should define data forms using dynamic user variables, to narrow the data form display to the dimensionality required by users. End users can set the value for the user variable in preferences.
  • For areas with low bandwidth, it is recommended that users access planning data forms using Smart View for Office for faster response time.
  • When Planning is first loaded, the first few requests to Planning can take longer because caches might not be loaded. It is recommended that an administrator or power user preload the most commonly used data forms before the general community uses the Planning server after each reboot to the Planning server.
  • It is highly recommended that adminstrators conduct performance test on data forms to ensure that they meet user expectations. Data forms should be tested in both single and multi-user environments before they are deployed to production.
  • Data form definitions are cached when users log on to a Planning application. Because one cache is created for data form definitions, memory usage is not affected by the number of users viewing data forms. Howerver, memory usage goes up if multiple users enter data in the data forms at the same time.

Data Form Size Estimation:

To get a rough estimate of data form size, open the data form and select File > Save As from the browser. The size of the .HTML file si the portion of the data form that changes based on grid size. the .JS files reamin the same size and can be cached, depending on browser settings. Information such as data form definitions, pages, and .gif files are not compressed when data froms are opend and sent to the Web browser.


About Suppression:

Planning foolows this basic sequesnce to suppress information in data forms, depending on suppresssion setting for Suppress Missing Blocks and Suppresss Missing Data.
  1. First, Planning evaluates the data form definition and creates a grid to send to Essbase.
  2. If Suppress Missing Blocks is selectecd for form rows:
    1. Planning queries Essbase to determine which members in the data form definition have data blocks. This query tipically takes only a few milliseconds. (This setting is most effective for sparse dimensions, and should no be used for dense dimensions.)
    2. Planning then determines which members have data blocks available in Essbase, and filters out members for which the user does not have access permissions.
  3. Next, Planning constructs a grid, and sends information to Essbase to fill in the data. (The constructed grid is generally very small, so the result is returned quickly from Essbase.)
  4. If Suppress Missing Data is selected, Planning suppresses data for any #MISSING data element. (This operation generally occurs quickly. However, if a large volume of data is set to #MISSING, or blocks are created but have no data, this can take some time.)
  5. Planning then queries the relational database, and marks every cell to show whether it has supporting details and cell text.
  6. The web data form is then presented to the user.

No comments:

Post a Comment