Thoughts from Oracle OpenWorld 2011

Writing this as I sit in Steve Shaw's session on Oracle performance optimization on Intel Xeon.  Steve really understands the low-level interaction of the Oracle database and the Intel Xeon server platform.  I suggest you review his material to better understand how to take advantage of Xeon features like hyperthreading and Turbo Boost to enhance Oracle DBMS performance.  Some of his suggestions aren't obvious, and some are even counter-intuitive, but all are important if you want to get the best possible performance out of an Oracle database running on the Xeon processor platform.

Speaking of Oracle on Xeon, last night brought some interesting news, with Larry's announcement of the new Oracle Exalytics in-memory database appliance.

The appliance is based on a 4-socket Xeon E7 server, equipped with 1TB of main memory and the new Exalytics software stack.  That stack is built from new versions of two long-standing Oracle software products - the TimesTen in-memory database and the ESSBase MOLAP engine.

I haven't worked with this appliance in a production environment yet, or talked to anyone who has, so please consider these comments preliminary.

I've spoken elsewhere on the importance of in-memory techniques generally, and the Exalytics appliance is consistent with those comments.  Instead of spending much of its processing time waiting on storage I/O operations to complete and poking around inside of disk-oriented data management structures, Exalytics can simply treat memory as the primary data repository, which allows everything in the database to be addressed directly in software.  In essence, the entire contents of the database becomes a gigantic multi-dimensional array structure on which software can act directly.

The result, as Mr. Ellison so exuberantly put it last night, is "insight at the speed of thought".  (Which sounds good, but neurons are actually quite slow in comparison to transistors, so if I was being humorous about it, I'd be tempted to say "provides answers before you can think of the question"!)

Which is actually not far from the truth, since it turns out that the new UI that Oracle has built for Exalytics attempts to predict what question you're asking as you enter the query, and displays results based on those guesses as you type.  I could imagine that being somewhat disconcerting, but I could also see it being stimulating to new ideas and insights.

With all of the excitement surrounding SAP's in-memory analytics efforts and HANA, it was inevitable that Oracle would come up with something in response.  Now we know what it is, and it looks pretty intriguing, to say the least.  Since both HANA and the Exalytics Appliance are based on the E7 Xeon processor, customers can be confident that regardless of the choice they make, they're running on the best processor for in-memory analytics on the planet.

Customers who have deployed SAP on Oracle will now have two distinct choices for taking advantage of in-memory techniques to accelerate analytics of their SAP data.  Oracle will likely try to make a case for customers to migrate to Oracle on Exadata, accompanied by Exalytics, since Exalytics can take direct advantage of Exadata's hybrid columnar compression and 40Gbit InfiniBand architecture fabric to accelerate in-memory data loading.

SAP, on the other hand, is likely to suggest that customers are better served by adding a HANA appliance to their existing environment specifically to accelerate analytics without having to change or upgrade their Oracle environment at all.  And in the future, as HANA gains support for core OLTP functionality, SAP will likely suggest that customers ought to consolidate everything on HANA.

I can see advantages and disadvantages to either approach.  But I know it's good for customers to have Oracle and SAP contending for their business, and I know it's comforting to customers to know that no matter which approach they choose, it will run best on the Xeon E7 server plaform.