I've been speculating, along with others, that Oracle was working on some appliance (and of course had to call it 'Exa-something', sigh) that did in-memory computing. Whether this was a response to SAP's HANA in-memory computing solution, or SAP just beat them to the punch can be argued, but that is not the point. The point is that both are here and it's interesting to see how they stack up. Quite frankly, I was expecting TimesTen to be integrated with Exadata to make it more general purpose, but integrating EssBase, BI Suite and creating a separate front-end analytics machine is very welcome and possibly a better solution.
Until recently, via several colleagues attending SAP's annual TechEd conference, I was not able to track down details on HANA. I've managed to learn the certified configurations and more as to what it is meant to accomplish, what is missing (and planned for future), as well as some other helpful information. Even still details are lacking, with SAP preferring you contact a sales agent for full details and an engagement. I much prefer Oracle's policy of providing as much public domain information as possible for all it's products and solutions, as soon as possible. Still several months after introduction, HANA public domain information is limited, while already Oracle has a solution brief available here.
Exalytics leverages commodity, off the shelf Oracle/Sun hardware components (model appears to be Sun Fire X4470-M2). The pertinent details are below:
- CPU: 4 x 10-core Intel E7-4800 (40 processing cores)
- RAM: 1 TB
- HDD: direct attached storage (DAS) with 3.6 TB raw capacity (RAID layout)
- Network: 2 x 40 Gb/s (QDR) Infiniband (IB) ports (for Exadata connection); 2 x 10 GbE ports (for client access); 4 x 1 GbE ports
It comes in single units of 3RU rack-mountable servers which can be clustered for expanded memory and availability. NAS storage is supported for storing shared configuration data and metadata. Based on my understanding, this is meant to connect to Exadata machines (not sure if exclusively) which is where the IB connections come into play. In a multi-Exadata setup, my guess would be that the IB connections are made to a single IB spine switch, similar to how connections to the ZFS appliance are made. This has always been a point of concern as we've suffered an entire environment outage due to a bug in the IB switch taking down the entire IB network, and hence all the Exadata machines. You can read about it here.
Unlike the hardware, the software is not all available outside the Exalytics environment. It consists of:
- Oracle BI Foundation - provides relational and multi-dimensional OLAP analysis, scorecards, predictive analysis, visualizations, alerts and notifications, search and mobile access.
- Oracle Essbase - provides multi-dimensional OLAP cubes with parallel processing enhancements (including others)
- Oracle TimesTen - provides in-memory caching and SQL access, enhanced for in-memory analytics. Also provides columnar compression support which effectively can turn the 1 TB RAM into 5 TB using Oracle's 5x compression ratio estimate.
The Oracle BI Foundation and Oracle TimesTen have apparently been enhanced to work together and provide features exclusive to the Exalytics platform. Essbase has also been memory optimized. The columnar compression support is interesting from the standpoint of fully supporting Exadata, and turning 1 TB into 5 TB effectively. Clustering is available with multiple units, to not only provide high availability but also to pool the memory resources and accommodate larger data sets. Automated management was mentioned in Larry Ellison's keynote address and is also highlighted in the solution brief document. I've heard this all before, as I'm sure most have, I will reserve judgement until I get a chance to see it in action, but am skeptical when I hear terms such as "intelligent" and "automated". The combination of enhanced versions of TimesTen and EssBase provide:
- In-memory data replication (TimesTen) for data sets which can fit at least 2x entirely in memory.
- In-memory adaptive data mart by EssBase using TimesTen's caching of recent or 'hot' data to update data marts.
- In-memory intelligent result cache (TimesTen), which I'm pretty sure the intelligent part is a bit of marketing from past experiences.
- In-memory cubes (EssBase) which are writable.
Similar to Exadata this is an intergrated, pre-built system which touches several areas of IT, i.e. networking, server, applications (EssBase and BI), and database (TimesTen). Of course, Oracle will prefer, and highly recommend, that companies choose their managed services offering to setup and administer the system. However, this is simply not going to happen in every case and for those who choose to do setup and administration in-house, the same questions will be asked for Exalytics as has been for Exadata and Exalogic. That is, who or what teams will be responsible for the maintenance? Arup Nanda has put forward the idea of an Exadata DBA, but I think this should be taken a bit further. I believe with the introduction of these various appliances (not just Oracle), there needs to be a new job description for "Appliance Administrators" with the specific appliance called out. So there would be an Exalytic Administrator with the necessary skills overlapping each section. If needs be the administrator can always fall back on resources with skill sets for a specific area (such as the networking component).
I think the Oracle Exalytic BI Machine is a good salvo by Oracle and I look forward to testing it out (hopefully soon) and making public my findings. Let the analytic appliance wars now begin in full force.