BACKGROUND IMAGE: iSTOCK/GETTY IMAGES
This is one part of a faceoff between two in-memory database appliances, Oracle Exalytics and SAP HANA. In a separate column, an SAP consultant argues that SAP HANA is the better product.
So what's so good about Oracle Exalytics In-Memory Machine, compared to other vendors' in-memory analytic solutions? As an Oracle Partner and author of a book on the product that's due out shortly, of course I'm probably biased, but from my work with the product I think it's got a few key advantages over competitor products such as SAP HANA.
At this point I'll assume that most readers are familiar with the functionality provided by Oracle Exalytics, such as in-memory analytics provided by Oracle TimesTen for Exalytics and Oracle Essbase, and dashboards and analyses provided by Oracle Business Intelligence. Exalytics is an appliance that combines software with a Sun server containing 1 TB of RAM and 40 CPU cores and with hardware and software sold together in what Oracle terms an "engineered system." If you're new to the platform and want to read a few background details, check the Rittman Mead section on Exalytics for articles and blog posts on its features and product history.
In this article, though, I'm going to talk about what makes Exalytics special and why I think Oracle's in-memory solution is better than the competition's. Note that these are my views. They are not endorsed by Oracle; they're based on my experiences since obtaining an Exalytics server at the start of 2012.
Backwards compatibility and support
Those of you with long memories may remember Oracle OLAP, the company's long-term replacement for the venerable Oracle Express multidimensional OLAP server. Oracle took a Java-centric approach with Oracle OLAP and thereby broke API compatibility with applications that worked with Oracle Express. It then took many years to come up with suitable Java-based analysis tool for Oracle OLAP. Over the intervening years, most Oracle Express customers ended up moving to competitor products such as Microsoft Analysis Services and IBM Cognos PowerPlay. They just couldn't wait for Oracle to come up with a fully-functional OLAP client that matched the functionality of their old Express-based tools.
The lesson learned for Oracle was to ensure that its new in-memory platform was compatible with all of the BI, EPM and data warehousing tools customers currently use, rather than gamble on them waiting around while it put together a completely new set of tools. Customers who adopt Exalytics can move their existing Oracle Business Intelligence and Oracle Essbase applications straight onto the Exalytics platform, including the pre-packaged Oracle BI Applications, with only a simple metadata upgrade typically being required.
A further benefit of this support for existing tools is that the full range of Oracle's BI, EPM and data discovery tools can be used on the platform, with their extensive support for Oracle and non-Oracle data sources. With BI, one size doesn't fit all, and Exalytics' support for the full range of Oracle's BI tools ensures you'll be able to use the right tool for the job, rather than the limited range supported by competitors' products. The most recent v1.1 patchset even extends Exalytics support to Oracle's new Endeca Information Discovery tool, allowing you to run analysis of unstructured data in the type of high-end analysis environment that suits it best.
Handling the in-memory scalability problem
More on Oracle Exalytics:
Read about the initial Oracle Exalytics announcement
Will in-memory database technology become a commodity?
Exalytics hardware pricing: Starts in six figures
Clearly, analyzing BI data sets in-memory is a superior approach compared to retrieving data from disk, but sooner or later you're going to hit memory limits on your workstation or server. Different vendors deal with this problem in different ways, with some requiring you to hold the entire data set for analysis in-memory, effectively limiting you to analyzing just subsets of your overall data.
Exalytics addresses this problem by storing just commonly used data in-memory, referring back to the wider data set typically held in an Oracle Exadata-based data warehouse using a low-latency InfiniBand connection. Oracle calls this in-memory data set its "in-memory adaptive data mart," with a feature called the Summary Advisor analyzing the query workload and automatically copying hotspots of data into this in-memory cache. This ages out data no longer used by queries. Taking this approach, users can query data sets much larger than the available memory on their server with a fully automated solution that requires little administration effort once it's up and running.
A true 'appliance' solution from a single vendor
Organizations that want to reduce the total cost of ownership for their IT systems are increasingly looking for "Apple iPod-style" solutions that combine hardware and software into a single, easy-to-administer package.
Oracle Exalytics is an integrated package of Sun hardware and Oracle software that's installed, patched and configured as a single system. It reduces the cost of installing and maintaining your BI platform and ensures that all of your components are guaranteed to work together even through upgrades. Exalytics even "phones home" if any part of the hardware requires servicing or replacement, and an Oracle service engineer arrives shortly afterwards who's aware of the software that's running on your server as well as the hardware. And the engineer doesn't then just leave you with a repaired server whose new hardware components aren't supported by the software that's running on it.
The other advantage to a single vendor such as Oracle providing the complete product stack from hardware through operating system and application server all the way to BI tooling is the opportunity this provides to optimize the software for a particular hardware configuration. For example, initial releases of the Oracle Business Intelligence part of the Exalytics software stack come with performance optimizations predicated on having 1 TB of RAM and 40 CPU cores. Over time, you can expect Oracle to add more "Exalytics-exclusive" features to its BI tools designed to take advantage of the high-end hardware available for Exalytics systems.
In-memory analysis is an exciting development for business intelligence users, but it's tricky to get right. Often, compromises must be made in terms of handling large data sets, reusing existing tools or creating entirely new ones. Plus, you have open platforms versus standardizing on a known hardware configuration and you have to optimize for that.
In my opinion, Oracle has taken the best approach to providing in-memory analytics for its customers by simplifying deployment and standardizing on a single, appliance-type solution. In addition, it combines in-memory with disk-based analysis to support very large data sets, and it maintains backwards compatibility with its existing BI tools so that customers can quickly gain value with this new platform.
ABOUT THE AUTHOR
Mark Rittman is co-founder of Rittman Mead, an Oracle Gold Partner based in the U.K. with offices in the U.S., India and Australia. Mark is an Oracle ACE director and author of the forthcoming Oracle Press books, Oracle Business Intelligence Developers Guide and Oracle Exalytics Revealed.