After attending many marketing sessions on In-Memory database like HP Vertica, Oracle Exalytics, Kognitio, SAP HANA, and SQL*Server 2014 with in-memory capabilities, finally I got an opportunity to look under the hood. I attended the SAP HANA training, and had the firsthand experience in playing with the In-Memory database. Gartner says, at least 35% of the midsize and large organizations will adopt the In Memory Computing (IMC), in some form.
In-Memory database has been in the market for a while but looking at it for a serious use, needs more in-depth understanding. Here is my first impressions of what I saw besides the marketing brochures and power points.
First let me just give you a quick definition, though not complete, to get you started. If you can imagine a database (all the DBA activities like creating the table, physical model) with standard DBA tasks plus analytics related tweaks like Aggregate functions, to create the summary tables and creating even a columnar table etc. that is in-memory database.
SAP pitches HANA primarily for their SAP ECC customers, especially to move the BW (Business Warehouse) to HANA for speed, though HANA can be used with other non-SAP environments. The biggest benefit is the data access speed. The demos and the sales presentations of other in-memory database vendors like HP-Vertica also pitched mainly the analytics speed. In that regard HANA is right up there as well. One caveat is that SUSE Linux is the only supported OS for HANA, though multiple HW vendors offer this solution.
The question is, if this database is faster, can it replace the traditional database? In general I don’t see that happening for many reasons, for starters the traditional data modeling tools don’t work with this database. It is far from fully evolved database solution, rather it depends on the underlying relational database. Having said that, theoretically, you can replace the traditional database with HANA for a given application. I did not see many vendors pushing that use case.
Finally, should companies include in-memory database in their EIM strategy? I think the time is ripe for using the in-memory database for specific analytical solutions, especially if the speed is critical. It does increase the investment in support and management of these technologies, as it involves hardware and software. Based on the industry trends and volume of data being analyzed, it makes sense to explore and invest in these technologies.