X

An Oracle blog about Oracle Coherence

What's the Difference Between In-Memory Database and In-Memory Data Grids?

Guest Author

We've gotten a lot of questions recently about the differences between Oracle's announced in-memory database and in-memory data grid technologies like Coherence. Let's clear that up, with a dusted-off excerpt from our "State of the Union" blog a couple of months ago. Just in case you missed it.

The In-Memory Database
option has led to confusion in the In-Memory Data Grid market

Let us try to clarify some of the confusion.

Oracle Coherence is not embedded in the In-Memory Option for
the Oracle Database. Although we have
seen rumors of this to the contrary, this would make absolutely no sense. Coherence is a distributed key-value store; the in-memory option is a columnar store. The In-Memory option is purpose built and
optimized to work as one with the database with its primary access method being
SQL. (Of course, Coherence is part of
many other Oracle solutions, such as Oracle Service Bus which offers web
services results caching via a check box
,
or the Elastic Charging Engine, which is architected on top of Coherence’s
fault-tolerant distributed processing
.  As you can see, Coherence has become
strategic within Oracle.)

The In-Memory Option focuses on different use cases than
Coherence. In-Memory focuses on ad-hoc
full-table scans of unindexed data.  In the words of Maria Colgan
"The main use case for the In-Memory column store is fast analytics, which
has very different access patterns to OLTP. Typically analytic queries access a
few columns from a table but they examine all of the entries in those
columns. You need to scan the whole table or segment, not just a small part of
the table to answer these queries.” Storing these columns in-memory, in
columnar format, speeds full-table scans orders of magnitude.


By contrast, Coherence focuses on providing scale-out data
management and processing to middleware applications thereby reducing load on
shared services such as databases, mainframes, and web services.  By caching data in domain object format close
the application, Coherence also increases responsiveness and availability of
applications. 

Hopefully, this helps you understand some key differences and benefits. 

Be the first to comment

Comments ( 0 )
Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.Captcha