20
Preview of Oracle Database 12c In-Memory Option Thomas Kyte http://asktom.oracle.com/

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 1 Preview of Oracle Database 12 c In-Memory Option Thomas Kyte

Embed Size (px)

Citation preview

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.1

Preview of Oracle Database 12c In-Memory Option

Thomas Kytehttp://asktom.oracle.com/

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.2

The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.

2

3Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.3

Flip Flops

Core

ICs on board

DIMMS

SIMMs

SSD

Flash

Small Drives

Floppy

Big Drives

1993 ~$25/mb; $26,214,400/tb

2014 ~$0.007/mb; $7,645/tb

4Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.

Oracle Database In-Memory Option Goals

100X Faster Queries: Real-Time AnalyticsGet instantaneous query resultsQuerying OLTP database or data warehouse

Faster Transaction Processing

Trivial to Deploy for All Applications and Customers

4

5Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.

Until Now You Choose One Format and Suffer Tradeoffs

Optimizing Transaction and Query Performance Row Format Databases versus Column Format Databases

Row

Transactions run faster on row format– Fast for processing few rows, many columns– Example: Insert or query a sales order

Column

Analytics run faster on column format– Fast for processing few columns, many rows

– Example: Report on sales totals by state

ORDER

SALES

SALES

STATE

5

6Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.

BOTH row and column in-memory formats forsame table

Simultaneously active and transactionally consistent

Analytics & reporting use New Column format

OLTP uses row format

BOTH row and column in-memory formats forsame table

Simultaneously active and transactionally consistent

Analytics & reporting use New Column format

OLTP uses row format

Breakthrough: Dual Format In-Memory Database

Column Format

Memory

Row Format

Memory

AnalyticsOLTP Sales Sales

Sales

6

7Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.

Oracle In-Memory Columnar Technology

Memory

Pure Columnar

Pure in-memory format with no logging

Near zero overhead on changes Even for OLTP

Uses memory-optimized compression 2x to 10x memory reduction

Data loaded in-memory for active tables or partitions - on startup or first access

For in-memory tables, >90% of memory will be used for column format

Row format needs little memory

Pure in-memory format with no logging

Near zero overhead on changes Even for OLTP

Uses memory-optimized compression 2x to 10x memory reduction

Data loaded in-memory for active tables or partitions - on startup or first access

For in-memory tables, >90% of memory will be used for column format

Row format needs little memory

7

8Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.

Find Any Business Data in Sub-second

SIMD Compare all values in 1 cycle

Compare all values

in 1 instruction

Load multiple State

values Vec

tor

Reg

iste

r

In-Memory Column Store

State columnSales

Example: Find all sales in state of CA

“CA”

>100X Faster

• Each CPU scans local in-memory columns

Scans use super fast SIMD vector instructions

Billions of rows/sec scan rate per CPU core

• Each CPU scans local in-memory columns

Scans use super fast SIMD vector instructions

Billions of rows/sec scan rate per CPU core

CPU

8

9Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.

Scans and Combines Data from Multiple Tables

SalesStores

Type=outlet

Example: Find all sales in outlet stores

TYPE

Storeid in

15,38,64

STOREID

AMOUNT

Converts join processing into fast column scans

Joins up to 10x faster

Converts join processing into fast column scans

Joins up to 10x faster

Sum

9

10Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.

OLTP is Slowed Down by Analytic Indexes

Table1 to 3OLTP

Indexes

5 to 15 AnalyticsIndexes

Most Indexes in mixed-use OLTP (e.g. ERP) databases are only used for analytics

Indexes work well for known access patterns both in-memory and on-disk

But every change to the table requires changing all analytic indexes – Slow!

Most Indexes in mixed-use OLTP (e.g. ERP) databases are only used for analytics

Indexes work well for known access patterns both in-memory and on-disk

But every change to the table requires changing all analytic indexes – Slow!

10

11Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.

Column Store Replaces Analytic Indexes

Table1 to 3OLTP

Indexes

In-Memory Column Store replaces analytic indexes for tables that fit in memory

Removes analytic index overhead on changes

Both predefined and ad-hoc analytic queries run fast Less tuning & admin needed

OLTP & batch often run 2x or more faster

In-Memory Column Store replaces analytic indexes for tables that fit in memory

Removes analytic index overhead on changes

Both predefined and ad-hoc analytic queries run fast Less tuning & admin needed

OLTP & batch often run 2x or more faster

In-Memory Column Store

11

13Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.

Extreme Capacity and Cost Effectiveness

Size not limited by memory

Data transparently accessible across tiers

Each tier has specialized algorithms & compression

Capacity of Disk IOs of Flash Speed of DRAM

Size not limited by memory

Data transparently accessible across tiers

Each tier has specialized algorithms & compression

Capacity of Disk IOs of Flash Speed of DRAM DISK

PCI FLASH

DRAM

Cold Data

Hottest Data

Active Data

13

14Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.

Scale-Out In-Memory Database to Any Size

Scale-Out across servers to grow memory and CPUs

In-Memory queries are parallelized across servers to access local column data

Direct-to-wire InfiniBand protocol speeds messaging

Scale-Out across servers to grow memory and CPUs

In-Memory queries are parallelized across servers to access local column data

Direct-to-wire InfiniBand protocol speeds messaging

In MemoryColumn Store

In MemoryColumn StoreIn Memory

Column Store

In MemoryColumn Store

14

15Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.

Scale-Up for Maximum In-Memory Performance

Scale-Up on large SMPs

SMP scaling removes overhead of distributing queries across servers or coordinating transactions

Inter-processor bandwidth far exceeds any network

Scale-Up on large SMPs

SMP scaling removes overhead of distributing queries across servers or coordinating transactions

Inter-processor bandwidth far exceeds any network

15

16Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.

Oracle In-Memory is Trivial to Deploy

1. Configure Memory Capacity inmemory_size = XXXX GB

2. Configure tables or partitions to be in memory alter table | partition … inmemory;

3. Later Drop analytic indexes to speed up OLTP

16

17Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.

Oracle In-Memory is Transparent to ApplicationsExisting Applications Just Run Faster

Full Functionality - No restrictions on SQL

Trivial to Implement - No migration of data or change of product

Fully Compatible - All existing applications run unchanged

DB as a Service Ready - Oracle Multitenant in-memory

Uniquely Achieves All In-Memory Benefits With No Application Changes

And All Other Apps that Support Oracle Database

17

18Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.

Oracle In-Memory Delivers Extreme Availability

Pure In-Memory format does not change Oracle’s storage format, logging, backup, recovery, etc.

All Oracle’s mature availability technologies work transparently

Protection from all failures Node, site, corruption,

human error, change, etc.

Pure In-Memory format does not change Oracle’s storage format, logging, backup, recovery, etc.

All Oracle’s mature availability technologies work transparently

Protection from all failures Node, site, corruption,

human error, change, etc.

RAC

ASM

RMAN

Data Guard & GoldenGate

18

19Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.

• Faster Queries: Real-Time Analytics Querying OLTP database or data warehouse

• Increase Transaction Processing Rates• Less Management and Tuning

• Best of Memory, Flash, Disk • Scale-Out and Scale-Up• Extreme Availability

Trivial to Deploy for All Applications and Customers

Summary: Oracle Database In-Memory Option

19

20Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.

21Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.