This action might not be possible to undo. Are you sure you want to continue?
ASO is Essbase's alternative to the sometimes cumbersome BSO method of storing data in an Essbase database. The differences between the two are as follows: BSO ASO Essbase creates a data block for each unique You manage the show with Tablespaces. You got combination of sparse standard dimension to accept/alter the allocation of default & temp members (providing that at least one data value storage areas & disk space, as per the exists for the sparse dimension member requirements. combination). The data block represents all the dense dimension members for its combination of sparse dimension members. Essbase creates an index entry for each data block. The index represents the combinations of sparse standard dimension members. It contains an entry for each unique combination of sparse standard dimension members for which at least one data value exists. All data is stored, except for dynamically calculated The ASO database efficiently stores not only zero members. All data consolidations and parent-child level data, but can also store aggregated relationships in the database outline are stored as hierarchical data with the understandings that stored hierarchies can only have the nowell. While the block storage method is quite efficient consolidation (~) or the addition (+) operator from a data to size ratio perspective, a BSO assigned to them and the no-consolidation (~) database can require large amounts of overhead to operator can only be used underneath Label Only deliver the retrieval performance demanded by the members. Outline member consolidations are performed on the fly using dynamic calculations business customer. and only at the time of the request for data. This is the main reason why ASO is a valuable option worth consideration when building an Essbase system for your customer. The database outline must be loaded into memory The database outlines are created and stored in as a single element what can be considered a page-able format. This means that instead of Essbase loading the entire database outline into memory, the pageable outline can be loaded into memory either one page or section at a time. This can free up resources and can help make data retrieval and data aggregations faster by reducing the amount of memory consumed by large database outlines. - Several databases stored in one application. - Aggregate storage applications have some - No reserved names for application and database limitations that do not apply to block storage names applications with regard to consolidations, - Account dimension supports all types of calculations, and overall robust functionality. calculations and attribute members. - Can store only one database per application. - Calculation scripts are supported. - Names reserved for table spaces cannot be used - Uncomplicated write back ability (before v 9) as application or database names. - Formulas are allowed in all dimensions with no - Accounts dimension does not support time restrictions. balance members and association of attribute
Formulas are allowed only on account dimension members and allowed with certain restrictions. (before version 9) . which can sometimes be difficult to get exactly right. the outline dimensions must be defined as Dense or Sparse.Outline changes do not automatically clear data values. incremental data loads are supported for all outlines. . . .Outline dimensions will not need to be designated as dense or sparse. even if a data source is used to both modify members and load values. read below: .Database calculation or aggregation of the database can be predefined by defining aggregate views. dimensions. Members tagged as dynamic hierarchies have no restrictions on the consolidation settings. . .Data values are cleared each time the outline is structurally changed. if aggregation exists. Stored hierarchy members can only be tagged as label only or (+) addition.No automatic update to values after data load.Sometimes requires large amounts of resources. As you can see. there are restrictions on label only members and dynamic time series members.Database calculation calculation script or outline consolidation.Necessary calculation scripts need to be specially executed. . To give you our idea of the ideal application of ASO and BSO. ..On non-account dimensions. . .Currency conversion is not supported without the use of special MDX queries. based on data density. .Outline is validated every time a database is started. . . . incremental data loads are only supported for outlines that do not change. reduced disk space. and up to 100 times faster.At the end of a data load.Database creation is accomplished by either migrating a BSO outline or defined as new after application creation. but is relevant for dynamic calculation formulas.Unrestricted write back ability which can be dangerous if care is not exercised. . .Limited write back ability . Therefore. the values in aggregation are recalculated and updated automatically.Only Level 0 cells whose values do not depend on formulas in the outline are loaded. massive data scalability.Currency conversion is supported. . . . .Aggregate storage database outlines are pageable.Calculation order is not relevant for database calculation. there are some substantial differences and some very good reasons to use one type of database over another.For better performance. . . . including any default calculations.Easy optimization.Non-account dimensions support only consolidation operator (+) addition. Therefore.Calculation order will need to be defined in the calc scripts and is predetermined in a default outline calculation.Calculation scripts are not supported. This method can have a negative effect on performance. This feature significantly reduces memory usage for very large database outlines.
rul 5) Why are Filters used? Filters are used for data level security. but where performance is not necessarily the number one priority. The typical BSO database is ideally suited for financial analysis applications. A parts dimension or product dimension comes to mind. The only reason you would use a filter is if you wanted to restrict access of the data for example. EssbaseExternalizationTask. to restrict access to a particular dimension member. The BSO database is ideal as the large parent database where users from many different departments can trigger jobs which will dynamically build ASO reporting cubes on an as needed basis.log all config logs 8. essbaseserver-install.log 11. The possibilities are endless! 2) What is Incremental Dimensional Build and one time Dimension Build? Incremental dimension building is deferred-restructure dimension build process. Of course.log 9. from which the dynamic ASO databases are built on the fly.csc and .essbaseclient_install. easserver.log in the lcm folder 7. and analysis. without restructuring the database we use incremental dimensional build. This type of database would also tend to have a rather large outline where at least one dimension has a significant amount of members.log 2. Essbase _service. error logs 4) What is the Extension of Cal Scripts and Rule File? . Heck. If we want to grant access to all dimensions then we wouldn't use a filter. The beauty of Essbase is that you can do most anything with it. BSO Database: The BSO database is ideal for virtually any size cube. 3) What are the different types of log files? 1.log 12. Configtool. Essbase restructures the index and. presentation. Particularly in situations where you want to build an outline from multiple data sources and save time by deferring restructure until after all files have been processed. When incremental restructuring is enabled. Just grant read access for the database to the user and/or group. eas_install.ASO Database: The ASO database is ideal for dynamically built Essbase cubes that are usually Read Only and used for reporting. you could easily have a large Oracle relational database as the backend data source for your ASO cubes. EssbasePlugin. If you make frequent changes to a database outline. Behind this ASO database would be a large BSO parent Essbase database. Shared_Services_Client. Accuracy and completeness of data would be the main consideration. if necessary. the affected block the next time the block is accessed.log 6.log 10. Essbase. 6) What are dense and sparse dimensions? Dense: A dimension which has the high probability that data exists for every combination of dimension members .log 5. consider enabling incremental restructuring. these are just one possibility or scenario. Incremental Dimensional Build: Builds and reads from different data sources for dimension builds and delay restructuring until all data sources have been processed. Separate log file for all applications 3. When we used to build one or more dimensions from a data file. Essbase defers restructuring so that a change to the database outline or to a dimension does not cause structural change.log for the Essbase server 4.
You can select and group members based on their associated attributes. date. 1. and flavor. Simple attributes: Essbase supports some attributes. you can change the assigned value in one place. someone still has to manually change the values in the IBM DB2 OLAP Server or Hyperion Essbase server. allowing you to define varying access levels different users can have to individual database values. use &CurrentMonth in your report script to reference the substitution variable CurrentMonth. and string. Eg: The database in Sample Basic which has product dimension has some attributes like size. Each variable has a value assigned to it and can be changed at any time by the database administrator. (as in Attribute Dimensions) 10) What is Substitution Variable? Substitution variables act as global placeholders for information that changes regularly. number. 11) How is Data Stored in Essbase? BSO Essbase creates a data block for each unique combination of sparse standard dimension members (providing that at least one data value exists for the sparse dimension member combination). many report scripts refer to reporting periods. place an ampersand (&) in front of the variable name. eliminating the need for manual changes to individual report scripts. For example. As an alternative in DB2 Alphablox applications.Sparse: A dimension which has low probability that data exists for every combination of dimension members 7) What are Filters? Data level security Method of controlling access to database cells in Essbase. such as current month or current quarter. 8) What are Attributes? Classification of a member in a dimension. The data block represents all the dense dimension members for its combination of ASO You manage the show with Tablespaces. as per the requirements. User-Defined attributes: The attributes that are defined by the user. While substitution variables help reduce maintenance in report scripts. When the query is executed. You got to accept/alter the allocation of default & temp storage areas & disk space. &CurrentMonth is substituted with the value defined in the IBM DB2 OLAP Server or Hyperion Essbase server. you could use Java methods in your JSP pages to automatically calculate a value for the current month or other reporting period. then substitute that value in your report scripts. By using substitution variables set such as CurrentMonth or CurrentQuarter. The use of substitution variables helps reduce maintenance of report scripts. To refer to a substitution variable in your report script. 9) What are different types of attributes? Essbase supports two different types of attributes. . We can add these attributes to the dimensions where we can retrieve the data like for example to retrieve coke with 8 Oz with bottles . package type. For example. You can also specify an attribute when you perform calculations and use calculation functions. A filter is the most detailed level of security. they are: Boolean. and the appropriate report scripts are dynamically updated when the report script is executed. 2. this is useful for generating reports.
overwriting the incorrect summation with the correct calculation. TB Last: in the Sample. the accounts member Ending Inventory is tagged as TB Last. which is defined on the member formulas or calc scripts.Basic database. . For example. The index represents the combinations of sparse standard dimension members. Opening Inventory consolidates the value of the first month in each quarter and uses that value for that month s parent. 15) What is TB First and TB Last? TB First: in the Sample. Essbase creates an index entry for each data block. It contains an entry for each unique combination of sparse standard dimension members for which at least one data value exists. For example. 12) What is an hour glass model? 13) Types of Build Methods? Generation Reference Level Reference Parent child Reference 14) What is Two Pass Calculation? Property set for members to correct incorrect aggregations. the accounts member Opening Inventory is tagged as TB First. the value for Qtr1 is the same as the value for Mar.Basic database. the value for Qtr1 is the same as the value for Jan. The members tagged as two pass calc are recalculated when the second pass is executed.sparse dimension members. 16) How do you calculate the Size of the data block? Essbase creates a data block for each unique combination of sparse standard dimension members (providing that at least one data value exists for the sparse dimension member combination). Ending Inventory consolidates the value for the last month in each quarter and uses that value for that month s parent.
The data block represents all the dense dimension members for its combination of sparse dimension members. . as per above information. Now.JAN COGS . Set ClearUpdateStatus Off.) This helps reduce calculation time by allowing the Essbase Calculator to skip the blocks flagged as clean . Hence.ACTUAL WEST .FEB as children of Time. Set UpdateCalc Off.BUDGET Say the following unique combinations has data EAST .ACTUAL WEST . Combinations of Standard Dense Dimensions is SALES . Measures & Time are Standard Dense Dimensions with SALES. Size of DATA BLOCK = 8 * (No. (It is important to notice that this is not done at the 'cell' level but instead it is done at the block level. Set ClearUpdateStatus After. 23) What is meant by Clean block and Dirty block? With Intelligent Calculation on when a calculation is run Essbase flags blocks as 'clean'. there will be 4 cells will be created for each BLOCK.ACTUAL Now. say Market & Scenario are Standard Sparse dimensions with EAST.ACTUAL EAST . WEST as children of Market and ACTUAL.FEB Total is 4 combinations. and which haven t been impacted (and don t need calculation). of Blocks) * (Block Size) (in bytes) = 2 * 64 = 128 17) How many data blocks are there in your cube? 18) What is meant by Descendents and can you give me the best example to describe it? 19) How do you do the Data Load? 20) Where is ISMember Command used? 22) What is intelligent Calculation? Intelligent Calculation allows Essbase to remember which data-blocks in the database need to be calculated based on new data coming in.FEB COGS . and when data is loaded or changed blocks are flagged as 'dirty'.JAN SALES .BUDGET WEST . 24) Commands of Intelligent calculation? Set UpdateCalc On. Combinations of Standard Sparse dimensions is EAST . SET UPDATECALC OFF command tells Essbase to ignore it during the calc script. COGS as children of Measures and JAN. there will be two Data blocks created. Set ClearUpdateStatus Only. of cells in that block) (in bytes) = 8 * 4 = 64 Size of Cube = (No. For example. Intelligent calculation is wonderful when you are running a default calc.BUDGET as children of Scenario.
If the purpose is for end user reporting. In many cases the two overlap and it just comes down to preference or what the is best suited for the design and maintenance of the database. So Attributes are more powerful than UDA's. application. mbrList]) LocationAlias: A location alias for the data source. 26) Difference between standard dimension and attribute dimension? Standard Dimensions represent the core components of a business plan and often relate to departmental functions. One powerful use is for cross tab reporting. you group and analyze members of your standard dimensions. I'll often lean towards UDA's. Attribute dimensions are more rigid. Syntax: @XREF (locationAlias [. but they take more work to set up and have more rigid rules around using them. It does not associate any data. CALC ALL EXCEPT MBR (mbrlist). UDA's are fairly flexible as you can assign them across different hierarchy levels. A location alias is a descriptor that identifies the data source. database. Attributes have to be consistent with the level they are applied to in the dim. The way I choose which one to use is based on the need. UDA's are easier to add on and more flexible. One other point to remember is that you cannot assign an attribute to a dense dimension. CALC ALL EXCEPT DIM(Product). 27) Difference between standard dimension and attribute dimension? A UDA is a user defined attribute. and password for the data source. username. it s basically a tag you can assign to a member that you can then reference in calcs. Attribute dimensions are a special type of dimension and are associated with standard dimensions. 29) Can you give the same name to different members in UDA? . but not as robust for reporting. Attribute dims are dynamically calculated and provide summary level and/or subtotals for the attribute members. 28) What is meant by XREF Function? XREF function enables a database calculation to incorporate values from a different database. The location alias must be set on the database on which the calculation script will be run. in other words you can't have the same attribute for a member at level 0 and another member at level 1. If the need is around identifying members for security or calculations.25) How do you calculate the subset of a cube? CALC DIM. security. but provide more reporting functionality. and reporting to recall those members that have been tagged. The location alias is set by the database administrator and specifies a server. I usually try to use an Attribute dim in most cases. Through attribute dimensions. Attributes are part of a physical dimension that users can render in a report as a replacement or augmentation to the base dimension they are associated with.
31) What is the Difference between the Data Cache and Data File Cache? 32) What is the Size of your cube? 33) What is shared members? Can shared members have children? The data associated with the member comes from another member with the same name. Dynamic Calc. You want to minimize disk writes. Dynamic Calc & Store. No. The amount of memory allocated for blocks is called the data cache. 34) What are the different storage properties in Essbase? Store Data. 42) What are the different steps so that you can optimize the performance your cube? Step 1: The Starting Line: Model Analysis . Shared members should always be level 0 members. as this takes up a lot of processing time. Shared Member 35) What is the difference between Dynamic calc and Dynamic Calc and Store? 36) How does Essbase consolidate Data? 37) Different types of Dimension Building? 38) What is Label only? Give the example of it? Although a label only member has no data associated with it. 39) Difference between calc all and Calc Dim? 40) Explain me about your project? And tell me any difficulties that you have faced and how did you resolve it? 41) What is Commit Block? Commit Block controls how often blocks in memory are written to disk while busy loading or calculating a cube. Typically. The label only tag groups members and eases navigation and reporting. Do not ask for everything in one model .30) What is Data Cache? Data blocks can reside on physical disk and in RAM. label only members are not calculated. it can still display a value. If the block is found in the data cache. the data cache is searched. Never Share.Minimize the number of dimensions. if your block size is relatively small (< 10KB) make this much higher. This setting alone can cause dramatic performance improvements specifically on Calc All operations and cube loads. 20000 to 50000. the index is searched for the appropriate block number. The block's index entry is then used to retrieve the block from the proper data file on disk. If the block is not found in the data cache. it is accessed immediately. Label Only. When a block is requested. so set this to be quite high. The default setting is 3000 blocks.
Step 2: Order The Outline: Hour-glass model .Attribute may impact the calculation performance which usually has a higher importance from a performance standpoint. In general. This varies per operating system.Smaller reports retrieve faster.Keep memory size higher .Minimize complexity of individual dimensions. Analytic Services runs optimally with smaller block sizes Step 4: System Tuning: System tuning is dependent on the type of hardware and operating . . make sure the data file is on the server. . keep track of the time taken to do a calculation and examine the hit ratio statistics in your database information.Higher Index cache settings may help performance since blocks are found quicker Step 8: Optimize Calculations .Smaller block sizes tend to give better retrieval performance.The actual cache settings recommended is strongly dependent on your specific situation..Examine the level of granularity in the dimensions. but in choosing the best Dense/sparse configuration keep in mind that blocks over 100k tend to yield poorer performance. . by sorting on sparse dimensions.To measure the effectiveness of the cache settings.Know your database configuration settings (which dimensions are dense and sparse). you may bottleneck on the network Step 7: Optimize Retrievals .Organize the data file so that it is sorted on sparse dimensions.Increase the Retrieval Buffer size. If it is on the client.Sparse dimensions from smallest to largest. If you are loading from a raw data file dump. . The most effective data load is one which makes the fewest passes on the database. . The effect of sparse dimension ordering is much greater than dense dimension ordering.Ensure there is no conflict for resources with other applications Step 5: Cache Settings . Logically. . Step 6: Optimize Data Loads . you are loading a block fully before moving to the next one.Optimize the block size.Increase the Retrieval Sort Buffer size if you are performing queries involving sorting or ranking. Small and large is measured simply by counting the number of Stored members in a dimension. Consider UDAs and Attribute Dimensions in order to reduce the size of some of the dimensions . This relates directly to how the calculator cache functions Step 3: Evaluate Dense/Sparse Settings .If you have a lot of dynamic calculations or attribute dimensions .Finding the optimal configuration for the Dense/sparse settings is the most important step in tuning a database.Load data locally on the server. . .Dense dimensions from largest to smallest. . . This helps if retrievals are affected due to dynamic calculations and attribute dimensions. Hence. this makes sense because it usually implies less I/O.
Incremental Loads . calculation performance may be optimized.Incremental calculations or calculations that pass through the data blocks multiple times leads to fragmentation.The longer you run your database without clearing and reloading the more likely it is that it has become fragmented. . Because this adds a significant layer of complexity to administration. Try to put everything in the outline and perform a Calc All when possible. In the case where the calculation is a CALC . However. As the data blocks are updated. Try to avoid multiple passes on the database. .This usually leads to lots of updates for blocks.You should FIX on sparse dimensions. Time . IF on dense dimensions.Use the Two Pass Calculation tag..Unary calculations are the fastest.Use Intelligent Calc in the case of simple calc scripts Step 9: Defragmentation Fragmentation occurs over time as data blocks are updated. FIX statements on sparse dimensions only brings into memory blocks with those sparse combinations which the calc has focused on. Many Calculations/Many Passes On The Database . this does not mean that has the least impact. this is the last of the optimization steps we list. Step 10: Partition By breaking up one large database into smaller pieces. If statements on dense dimensions operate on blocks as they are brought into memory. 43) What is Partition? 44) What are different types of Partition? Have you ever worked on partitioning? . This tends to leave small free space gaps in the page file. they grow (assuming you are using compression) and the updated blocks are appended to the page file.
This action might not be possible to undo. Are you sure you want to continue?
We've moved you to where you read on your other device.
Get the full title to continue reading from where you left off, or restart the preview.