Recently, I was asked by Packit Publishing to review a new book on Essbase by Joe Gomez and Sarma Anantapantula titled Oracle Essbase 9 Implementation Guide. I jumped at the chance. There are so few resources available out there for someone new to Essbase, it’s a shame. I understand it’s a small audience, but since the Oracle acquisition it is growing. I would like to thank the authors for spending their time, energy, sweat and tears to create the book. I know it is a difficult task, for I have a hard enough time just updating my blog from time to time. So my hat is off to them for their undertaking.
Before my review, I feel it only proper that I give a couple of disclaimers before I review the book.
1. I am not the intended audience for it as they say it is for the IT professional who wants to start working with Essbase. I’ve been doing the way too long, about 14 years now (I think)
2. The company I work for puts out a competing book. Look smarter than you are with Essbase.(I am not the author nor an editor or reviewer of it).
3. I realize this is the first printing of the book and a tried to overlook errors like typos, obvious misstatements and wrong graphics for the text. I tried to concentrate on the subject matter.
With that said, I came into the assignment with an unbiased and open mind. I attempted to read the book from a new IT professional’s point of view while using my knowledge to insure the material was accurate.
I was excited when I got the book last week and using time I don’t have, began to go through it. I have to say, I really wanted to like the book as another source of information would be invaluable to the Essbase community. I am sorry to say I feel this book falls very short of being a good guide or reference. There were some good points, but the problems out weighted those few glimmers of insight. There are a numbers of troubles I had with the book.
First the good. As bright notes, the book talks about Cube Preview in EAS. It is a useful tool for administrators that no one ever talks about. In addition, they spend time talking about report scripts and even go through some of the syntax. Everyone seems to ignore this topic thinking report scripts are dead. I thank the authors for reminding us that they can still be useful. Even though the classic add-in is dying, they spend a bit of time on Query designer. This feature can be very useful and they mention some of the high points of it. I also enjoyed the introduction to data warehousing. It was interesting, although there was not really applicable to the subject of the book.
What did I not like about the book, I’m afraid more than I liked. I won’t go through everything, but give you a number or items I had difficulty with.
First, the book was hard to follow. While in the middle of a subject, the authors would veer off to talk about something related, but minor. In other cases it appeared pages might be missing or thought processes were incomplete. I would get into a subject and it would just end.. As an example of being hard to follow, when talking about dimension building, they went into a detailed discussion of MaxL. With Data loads, they did it again and then for Calc scripts veered off to Esscmd, this while having a whole chapter on automation and not really adding value to the topic. Another item that made it hard to follow was extreme detail would be presented on what buttons and options meant of various screens, but important functionality would be glossed over. For example, they described the load screen extremely well, but gloss over, the two different types of joins, selection and rejection criteria, adding text, etc, giving no examples at all. Finally, the examples were not cohesive. I never really got the overall understanding of what the database they were building looked like. It would morph into different dimensionality without explanation.
Second, there was not a cohesive flow to the examples. It would have been nice to have examples that built on each other. There was talk about the dimensions of the outline, and one example of how to build it, but I would have liked to build on prior steps. Perhaps first create the dimensions manually and build the dimension members manually, then exercises to add the members of other dimensions through load rules. Once flaw here (and with the Look Smarter book line) is there should be a source for sample files used to do dimension builds, data loads, and results from calc scripts that would allow the reader to easily follow the examples.
Third, unknown or inaccurate terminology was used. For instance, I’ve never heard of a parent dimension. Does this imply that there are child dimensions? Throughout the book the terminology was inconsistent. Dimensions were called all sorts of things. I know this next one is trifling, but in the Calculations section, they call the set commands functions. They are not functions but commands. There is a difference and if you are writing you need to be accurate with your information.
Fourth, this is a book that is supposed to be based on System 9. In the install section you get the most basic of installs, Essbase, EAS and the Excel Add-in. No mention of Provider servers, external authentication, FR etc. They talk about Esscmd (a lot). As a dying interface, why spend the time on it. I have to admit the authors do warn you in the automation chapter that Esscmd is being phased out. Get new users using MaxL, since it is the direction of the future. Yes you can mention that Esscmd exists, but don’t waste the readers time teaching it. I have the same comment about the classic Excel Add-in. While I love the add-in, new readers should be learning Smartview. I guess that would have required the author to discuss how to install and configure APS which would have made that section longer and more difficult.
Finally, I could live with all of the above and still be relatively happy, but there are too many inaccuracies in the book that would either confuse or mislead readers. In some cases the book would give completely wrong information. Here are a very few of the many examples I found.
Did you know that Smartview costs extra? I didn’t but according to the authors it does.
When talking about attribute dimensions, they use color as an example and put it on their product dimension. Their product dimension level zero members are Car models (like Sedan). This makes the reader believe you could have different colors (attribute dimension members) for the same model. No where do they tell you that a base member can only have one Attribute from an attribute dimension associated with it. Attributes on dense dimensions? I don’t know they never tell you if you can, but allude that it’s possible.
A second example is their discussion of Two Pass. It is stated that Two pass is only allowed on the Accounts dimension and only on Dynamic calc or Dynamic calc and store members. While only on the accounts dimension was applicable on version 3 of the software, it has not been the case ever since Dynamic calc came into effect. “Only on Dynamic calc (and store)”, If this were the case, what is there a command called Calc TwoPass. Further in the section on Two Pass, they give an example and lead the reader to believe that if you perform aggregations on the database in different orders of dimensions, your results will be different. The example shows data that is added up to parents. The last time I checked addition and subtraction were commutative. I surely hope that adding up my database in different orders will not affect the results. Had they used the typical example of a ratio supplying different results if you add the sums or sum the adds, I could understand, but this example makes me scratch my head.
A third example of misinformation is in the section on Calc scripts. They give you the following calc script in an example
Fix(@IDescendants(“Calendar Periods”))
“Gross Sales” = “Sales” – “Discounts”;
Endifix
While this calculation is not incorrect, It is no different than just running the calculation on the entire database. In the discussion on Fix, it is stated that items left out of a fix statement exclude them, in truth, dimensions left out of a fix statement are all included at all levels. Like the above, a lot of examples are not well thought out. For Sumrange, the use @Descendants(Products) Based on the outline example they give, you would be summing together multiple levels, parents and children. I doubt that would give the answer one would want. I thought it interesting that they showed examples of calculations, but never showed the starting point or the result. The book claims that after reading the chapter on calculations, you would not need to take a calculation course. I believe the opposite is the truth. After reading their explanations I would need a course more than ever. If I knew nothing about calc scripts, I would have come out of that chapter more confused than when I went in it.
I don’t remember a section on security and I was not impressed with the section on optimization. As you can tell by now, I was rather disappointed with the book. As I said earlier, I applaud the authors’ intentions but I think this book falls much too short to be useful.
ODI in the hybrid database world – Amazon Redshift – AWS CLI
-
Written on June 5, 2023 by Rodrigo Radtke de Souza Hi all, probably this is
the last post of this series on how to load data from on-premises databases
to ...
1 year ago