Paper

In-Memory Computing is
Going Mainstream
In-Memory Databases from
Leading Vendors
Dozens of software companies are
delivering or developing in-memory
database solutions. Approaches differ
somewhat, but they tend to include
many of the same core capabilities.
For example, traditional databases store
data in row-based tables, because that’s
the most efficient format for the frequent
updates required by transactional applica-
tions. However, column-based tables are
more efficient for analytics, which depend
more on fast access to high-volume data.
Current in-memory databases address this
need in different ways. Some keep primary
data in row-based tables and automatically
generate specialized structures for analyt-
ics. Others keep primary data in columns
and generate specialized structures for
transactions. A few keep parallel sets of
column-based and row-based tables.
Although memory prices have decreased,
it is still important to use available memory
as efficiently as possible, so most in-memory
solutions provide some level of data com-
pression. Compression ratios for column-
based data can be as high as 10-to-1, and
in some cases even higher, which greatly
increases the amount of data that can be
held in memory.
Many additional software optimizations
are required to optimize the value of
in-memory computing. Large volumes
of data are available from a simple fetch
opera tion, which eliminates the need to
read and then write data from one loca-
tion to another. This changes many key
processes in the database engine. Instead
of trying to optimize the use of limited
memory resources, developers try to opti-
mize the use of limited cache resources.
They also work to parallelize queries to
take advantage of the parallel execution
resources in today’s multicore processors.
All of the leading database vendors,
including SAP, IBM, Oracle and Microsoft,
are offer ing or will soon offer
in-memory databases.
SAP HANA*
SAP HANA was the first in-memory
computing platform to be available from
a major software vendor. SAP has built a
real-time business platform on top of its
high-speed in-memory database. SAP HANA
can be used to support both SAP Business
Suite* applications and the SAP BW Data
Warehouse* application. SAP HANA also
provides a computation engine within the
database, so data-intensive application logic
can be executed closer to high-volume data
stores. This further reduces the need for
large-scale data movement and can help
to reduce both application latencies and
infrastructure requirements. SAP HANA
can be integrated non-disruptively into
existing SAP landscapes and SAP
recommends it for all new SAP
software deployments.
IBM DB2 with BLU Acceleration*
IBM’s in-memory database option is
avail able today to accelerate transactions
and especially analytics. IBM DB2 with
BLU Accelera tion includes columnar data
compression, parallel vector processing
for improved parallel throughput, and a
data-skipping capability that provides
faster access to columnar data. In recent
tests, Intel engineers found that running
IBM DB2 with BLU Acceleration on the
latest Intel Xeon processor E7 v2 family
increased query performance by up to
148 times versus running the same work-
load on IBM DB2 10.1 and a prior-generation
server proces sor.
8
The new in-memory
solution also improved data compression
by 4.5 times, holding a 10 TB data set in
just 2,127 GB of memory.
Oracle Database* In-Memory Option
The Oracle Database In-memory option
for Oracle 12c is currently scheduled for
release later this year. This in-memory
solution uses a “dual-format” approach to
deliver high performance for both trans-
actional and analytical applications, while
maintain ing consistency across workloads.
Persis tent data is stored on disk in conven-
tional row-based format to preserve
traditional, disk-optimized operational
characteristics. According to Oracle, exist-
ing applications are accelerated without
requiring any changes and all of Oracle’s
availability, security, and management
features continue to work without change.
9
Support for columnar data compression is
expected in a second, minor release, which
is also slated for this year.
Microsoft SQL Server*
Microsoft’s in-memory solution has been
developed under the code name Hekaton,
and Microsoft says it will be included in
the next major release of SQL Server. This
in-memory solution is optimized for online
transaction processing (OLTP) workloads,
and complements the in-memory column-
store index, which is supported in Microsoft
SQL Server 2012. Microsoft is implementing
a new “latch-free” approach that maintains
database consistency without locking data
during transactions. This should help to
avoid data contention and further improve
performance in complex transactional and
analytical environments.
10
Cost-Effective Platforms for
In-Memory Computing
Like a number of other vendors, Intel
foresaw the emergence of in-memory
computing many years ago. The Inte
Xeon® processor 7500 series, and the
follow-on Intel Xeon processor E7 family,
were designed with in-memory comput-
ing in mind and were based, in part, on the
expertise Intel engineers developed while
working with SAP to develop SAP HANA.
The result is a processor family and server
platform with the memory capacity, parallel
execution resources, system bandwidth,
and advanced reliability features needed
to address the heavy demands of large,
mission-critical, in-memory databases.
Optimized Server Platforms
The Intel Xeon processor E7 v2 family
represents another leap forward in
this platform evolution (Figure 3). Intel
internal performance tests indicate these
new servers cut query processing times
roughly in half for both SAP HANA
11
and
for IBM DB2 with BLU Acceleration
12
in
comparison with previous-generation
systems based on the Intel Xeon processor
E7 family. These gains not only speed time
to insight, but also enable businesses to
process twice as many queries in a given
time frame.
Even more importantly for some busi-
nesses, the Intel Xeon processor E7 v2
family supports major increases in memory
capacity, up to three times as much as the
previous generation.
13
A four-socket server
can be configured with up to six terabytes
(TB) of memory and an eight-socket server
with up to 12 TB, enough to hold many
of today’s largest databases within the
memory of a single server.
5
Changing the Way Businesses Compute…and Compete