One of the major announcements Oracle made during the Open World was the launch of Oracle In Memory Database Option. The In-Memory option to Oracle Database 12c is 100 percent compatible with existing applications and leverages all existing Oracle Database functionality. At first look, some key benefits jump out:
- Though this is a paid option, it promises a high ROI
- It takes just one change in parameter to turn it on
- From published information, it increases query performance on identical hardware by up to 100x (though it does require a lot of memory)
- It also provisions for a 2x to 4x increase in insert and update performance (after removing unnecessary indexes)
- It is backward-compatible to all existing applications and does not require any changes to applications
Beyond the speed and performance increases, the game-changing advantage I see is that the in-memory database stores data both in row orientation (as oracle always has) and in column orientation—similar to column-oriented databases like Vertica. Why is this important?
This can be a game changer because as we all know, some of the most significant tasks in architecting and maintaining databases involve indexes. Database architects and administrators spend quite a bit of effort in determining what indexes are necessary and what type they should be (considering there are numerous types). And once they plan this out, just the creation of the indexes is a huge task, after which there is also ongoing maintenance. And in many cases, we all are constantly created new indexes that were not foreseen in the design requirements earlier.
With the in-memory option, the only indexes that are necessary are those that enforce referential integrity—those involved in primary and foreign key relationships. Additionally, systems that have a large number of indexes now may see a significant reduction of disk requirements as the need for those indexes is eliminated.
Other vendor’s offerings, such as SAP HANA, are taking a similar approach, implementing in-memory storage and processing, and columnar oriented data management. However, Oracle’s offering is special because nothing, including hardware and applications, has to change in order to take advantage of this new technology and the significant performance benefits that it yields. This could help change the landscape completely—especially for organizations that deal with massive, distributed data warehouses on a global scale.
Have you tried out the in-memory option on Oracle 12c? What has been your experience? We’d be delighted to share your experience with our readers.