Monday, May 19, 2008
"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."
As I have said before, the fact that you hear it from me certainly doesn't change the above disclaimer as I can't/don't speak for Oracle (sorry I had to start this post with the same disclaimer again, but it is just something I think I have to do to prevent angering the Oracle legal gods).
This new feature coming in Essbase will enable you to do new things that you really couldn't do before in Essbase. Under the covers, the data will still be stored numerically but numbers, or ranges of numbers, appear to be mapped to text or date labels on the client side. Here is a screenshot from the presentation:
The 'Satisfaction' and 'Transaction date' columns in this screenshot both come from Essbase but have associated labels. This functionality will also work on summaries and averages:
I haven't seen how they plan to provide this functionality 'under-the-covers' at the API level; to warn you, it gets a little geeky past this point. In the current version of the Essbase Java API, the data is provided in a multiple 2-dimensional arrays. The member names and data is in one array of strings, and returned as an int, the cell types are returned in an array of bytes and the attributes, which hold the information such as dimension numbers, read/write status and LRO information that make Excel add-in 'Styles' work (and is used in our datapoint mapping work in our Dodeca product) are returned in an array of int types.
I doubt they add another layer for for date/text measures to work as it seems like a whole bunch of overhead; the date/text labels could possibly be repeated many, many times in the array. I guess it would be easier to work with from the programming side if it is in a array. The other option they may implement would be to provide a mapping of the values to the strings at retrieve time. If this were the case, the network traffic would be reduced at the cost of programmers ease of use. I guess I will find out soon enough; when I get a build of 11.1.1 to play with, I will need to look at how they implemented this new feature to make sure we support it properly in our Dodeca product.
Thursday, May 8, 2008
"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."
The fact that you hear it from me certainly doesn't change the above disclaimer as I can't/don't speak for Oracle.
That being said, here is a list of the things presented with a brief description of benefits of these features:
- Varying Attributes (aka Slowly Changing Attributes) - Slowly changing attributes let you change how members rollup based on time. A common usage scenario would be in a corporate reorg where 'Dept 100' rolls up to 'Mgr A' until July 2007, then it rolls up to 'Mgr B'. Without slowly changing attributes, a 'reorg' in the Essbase outline moves all history to roll up to 'Mgr B'.
- Time Intelligence enhancements in block storage. These were introduced in 9.3 but were ASO only; now some of that same functionality will be available throughout Essbase.
- Date and Text Measures - Allows you to display text instead of a value as the result of an Essbase query. To me, it looks like an enhanced 'Missing Text String' type of functionality except the 'text' values are controlled by the database designer.
- Improvements to backup and logging. The thing that stands out for me on this is the ability to audit logging capabilities. It appears Essbase will now track all write operations to the database including outline changes, data load, calculations and lock and send. Further, there will be new 'replay' feature that lets you 'replay' these 'writes' to your database; it looks very useful in the case where you have to restore from a backup.
- ASO Improvements including the ability to do a 'Partial Clear' of the database and ability for ASO databases to be the target of a partition.
- Essbase can be a physical database source in the OBIEE BI Server. For those of you that have always wanted to use SQL to go against Essbase, essentially the BI Server layer will allow you to do that; I would guess they are putting a virtual star-schema layer on top of Essbase in the BI Server layer.
- XOLAP or 'eXtending OLAP on a relational database'. Essentially, XOLAP is dynamically sourcing the cube from a relational datasource. I think this could be a very exciting development that could allow us to write some very cool applications in the future that were difficult before. For example, payroll planning applications where the user wanted to add, on the fly, new employees to plan for may be much easier in XOLAP. I can't wait to get my hands on it so I can see how far we can push it.
The presentation also talked about Essbase Studio and some future Essbase things as well. I plan to post a bit more on this topic and include some screenshots as time allows.
If you want to learn more about Essbase 11.1.1, I would urge you to attend the ODTUG Kaleidoscope conference in New Orleans. The Essbase Symposium on Sunday, June 15 is dedicated exclusively to 11.1.1 and future versions of Essbase; speakers for the day are all from the Essbase development organization and it will give you the unique opportunity to get your questions answered directly from the developers. Information on Kaleidoscope is located at http://www.odtugkaleidoscope.com/hyperion.html.