So What Do I Get With Exalytics That I Couldn't Build Myself?
One of the hottest topics at the recent Brighton and Atlanta BI Forum events was Oracle Exalytics, with attendees rightly sceptical about what Exalytics provided that you couldn't build yourself, or indeed whether there was an benefit beyond the highly-specced hardware that Exalytics sits on. So what does Oracle Exalytics provide in terms of software features that you can't get with regular OBIEE 11g, and where's the real benefit?
The headline feature with the Exalytics version of OBIEE is the Summary Advisor, which I covered as part of Exalytics week a short while ago, and was also the subject of one of my recent Oracle Magazine columns. What the Summary Advisor gives you is two main features:
- An enhanced version of Usage Tracking that captures more granular details about queries that are run by users, and a new summary statistics table that's used exclusively by the Summary Advisor feature. The new usage tracking features are actually available for all deployments using 11.1.1.6 or higher, whilst the summary statistics feature is used just by the Summary Advisor
- The Summary Advisor wizard within the BI Administration tool, that uses these records of past queries to recommend aggregates to put into the TimesTen in-memory database cache
The Summary Advisor is designed to be "fire and forget", in that it uses the past history of queries to generate, and over time amend, the set of aggregates required to make your dashboard run fast, and then maintains these aggregates both in the TimesTen database and the BI Repository without you having to do anything. In reality, at the moment you'll need to manually generate new sets of recommendations when your query patterns change, but there are command-line tools (not supported yet) that will automate this process for you, based on overall parameters you set and the store for later use. The Summary Advisor is designed to aggregate relational sources, is certified at this point only for loading TimesTen, but in-theory could also be used to place some of your aggregates in an Oracle database, for example.
So apart from the Summary Advisor, what else is unique about OBIEE once it's been enabled for Exalytics use? According to Oracle, the following software features become active once you've flicked the switch and configured OBIEE for Exalytics:
- The Oracle BI Server uses optimizations to match the hardware architecture to result in higher query throughput, lower latencies in query processing and enhanced memory usage for cache
- The Oracle BI Presentation Server similarly uses larger amounts of memory in order to speed up page rendering and the display of complex analyses, and makes more use of caching
- Essbase, apart from general improvements in the most recent release to permit whole databases to run in-memory, also permits greater concurrency to match capabilities in the hardware platform
What this basically means is that Oracle have been able to safely make some assumptions about OBIEE running on a particular high-end hardware spec, and therefore tweak the code to make more use of memory, more use of parallel and concurrent processing, and make other performance improvements predicated on running on a 40 core, 1TB RAM server. "Standard" OBIEE can't make these assumptions and therefore does more to disk, assumes lower CPU counts and speeds, wheras on the Exalytics platform they can code to take advantage of these guaranteed hardware features.
Of course these are all just claims by Oracle, and they may not actually lead to any measurable benefits, which is why we went out and bought an Exalytics server - to test out and quantify these features ourselves. So keep an eye on the blog over the next few weeks as we test out things like:
- Just how many concurrent user sessions can an Exalytics server comfortably handle, given it's got 40 cores available?
- Is there any measurable difference in enabling the Exalytics optimizations for the BI Server and Presentation Server, and if so what difference do they make?
- How much faster does Essbase run, for sales analysis and planning-type applications, when run in-memory on an Exalytics server?
- How practical is it to run the Summary Advisor, daily, on a reasonably complex system - say the BI Apps repository, or some other complex setup?
The other technical benefit (if it works out in practice) is that Exalytics will be patched as a single unit, with patchsets covering the Exalytics firmware, OBIEE, TimesTen and Essbase, and Fusion Middleware where appropriate. We haven't seen this in practice yet and based on comments from Exadata users, it's often not quite as simple as the marketing stuff makes out, but for customers looking to keep all software versions in-sync and also have an environment that's easily supportable, it's a not inconsiderable benefit.
Finally, the other thing to bear in mind is that this is no doubt just "version 1", and if Exadata is anything to go by, there'll be a bunch of improvements and new features over the next few years to address things like real-time analytics, replication of whole datamarts into memory, incorporation of products like Endeca Information Discovery onto the platform, and so on. The Exalytics server is just a small part of the overall cost of the Exalytics "solution", and I would fully expect to refresh this over the years whilst applying new releases of the Exalytics software as they're released. That said, I think we'll get a fair bit of use out of 40 cores and 1TB RAM over the next few years, especially as my usual test server is a few VMs running on a 16GB Apple iMac ;-)