44
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | Oracle Database In-Memory on Exadata : A Potent Combination Oracle OpenWorld 2018 Shasank Chavan Vice President, In-Memory Technologies Gurmeet Goindi Master Product Manager, Exadata Confidential – Oracle Internal/Restricted/Highly Restricted 1 In-Memory Columnar scans In-Flash Columnar scans

PRO4016 - Oracle Database In-Memory on Exadata - A Potent ... · Title: PRO4016 - Oracle Database In-Memory on Exadata - A Potent Combination Author: Gurmeet Goindi Created Date:

Embed Size (px)

Citation preview

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Oracle Database In-Memory on Exadata : A Potent CombinationOracle OpenWorld 2018

Shasank ChavanVice President, In-Memory Technologies

Gurmeet GoindiMaster Product Manager, Exadata

Confidential – Oracle Internal/Restricted/Highly Restricted 1

In-Memory Columnar scans

In-FlashColumnar scans

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Safe Harbor StatementThe 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.

Confidential – Oracle Internal/Restricted/Highly Restricted 2

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Exadata Vision

Dramatically Better Platform for All Database Workloads

• Ideal Database Hardware - Scale-out, database optimized compute, networking, and storage for fastest performance and lowest costs

• Smart System Software – specialized algorithms vastly improve all aspects of database processing: OLTP, Analytics, Consolidation

• Automated Management – Automation and optimization of configuration, updates, performance, and management culminating in Fully Autonomous Database and Infrastructure

3

Identical On-Premises and in Cloud

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Proven at Thousands of Ultra-Critical Deployments since 2008

• Best for all Workloads• Petabyte Warehouses

• Online Financial Trading

• Business Applications– SAP, Oracle, Siebel, PSFT, …

• Massive DB Consolidation

4

4 of the 5 Largest Enterprises in the World Run Exadata4 OF THE TOP 5

BANKS, TELECOMS, RETAILERS RUN EXADATA

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

• Scale-Out 2-Socket or 8-Socket Database Servers– Latest 24 core Intel Xeon Skylake– Latest 25 GigE client connectivity

• Ultra-Fast Unified InfiniBand Internal Fabric

• Scale-Out Intelligent Storage Servers– Latest Intel 10 core Skylake CPUs offload database processing– Latest disk technology - 10TB Helium Disk Drives – Latest NVMe PCI Flash - 6.4 TB Hot swappable

Exadata Adopts Latest State of the Art Hardware Every Year

5

High-Capacity (HC) Storage

Extreme Flash (EF) Storage

Database Server

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Latest Flash Creates Giant Bottleneck for Shared Storage

6

Single Flash Drive is Faster than fast SAN

0

50

100

150

200

250

300

350

Number of Flash Drives

Thro

ughp

ut G

B/se

c

ALL FLASH ARRAY

EXADATA

NVMeFlash

SANLink

5.5 GB/sec

5 GB/sec

90% of flashPerformance

is lost

Exadata Scales as Flash is Added,Flash Arrays Hit a Wall

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Exadata Uniquely Achieves Memory Speed with Shared Flash

• Architecturally, Storage Arrays can share Flash capacity but not Flash performance due to network bottlenecks– Even with next gen scale-out, PCIe networks, or NVMe over fabric– Network continues to be a huge bottleneck

• Must move compute to data to achieve full Flash potential– Requires owning full stack; can’t be solved in storage alone

• Exadata X7 delivers 350 GB/s Flash bandwidth to any server– Approaches 800 GB/s aggregate DRAM bandwidth of DB servers

7

ExadataDB Servers

ExadataSmart Storage

InfiniBand QueryOffload

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

• What is Exadata?– Engineered System optimized to run

Oracle Database w/ Industry-Standard and Best-of-Breed hardware components.

– Hybrid Columnar Compression (HCC) formatted blocks for capacity & speed

– Blazing fast bandwidth speeds and increased capacity w/ Exadata Flash Cache

– Smart Scan Offload w/ Predicate Push-down to Storage

• But...What is Database In-Memory?– Transparently accelerate analytic

workloads by orders of magnitude

Confidential – Oracle Internal/Restricted/Highly Restricted 8

Exadata + Database In-Memory

100X

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

• Dual-Format Architecture– Both row and column formats for table• Transactions benefit with existing row format

• Analytics benefit with In-Memory columnar format

– Simultaneously active and consistent

• Blazing Fast Analytic Scans– SIMD on Compressed Columnar Data

Formats

• Seamlessly built into Oracle RDBMS– RAC, Dataguard, Flashback, etc.

9

Oracle Database In-Memory: Architecture

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Oracle In-Memory Columnar Format

• Available on all platforms

• Pure in-memory column format

• In-memory maintenance:allows fast OLTP

• No changes to disk format

• Enabled at tablespace, table, partition, subpartition level• Can even be enabled for whole

database

• Total memory area controlled by inmemory_size parameter

10

SALES

Pure In-Memory Columnar

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Oracle In-Memory Columnar Format – Under The Hood

• In-Memory Compression Unit (IMCU)

– Unit of column store allocation

– Spans large number of rows (e.g. 0.5 million) on one or more table extents

– Each column stored as ColumnCompression Unit (column CU

• Multiple MEMCOMPRESS levels:• FOR QUERY – fastest queries• FOR CAPACITY – best compression

• Size of IMCU depends on size of rows, compression factor, etc.

In-Memory Compression Unit

Extent #13Blocks 20 to 120

Extent #14Blocks 82 to 182

Extent #15Blocks 201 to 301

Column CUs

11

SALARYROWID EmpID Name Dept Salary

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Vector Processing: Additional Advantage of Column Format

• Each CPU core scans only columns in local memory

• SIMD vector instructions used to process multiple values in each instruction • E.g. Intel AVX-512 instructions with

512 bit vector registers

• Billions of rows/sec scan rate per CPU core• Row format is millions/sec

12

Vect

or R

egist

erLoadmultipleregion values

VectorCompare all valuesan 1 cycle

CPU

Memory

CA

CACA

CA

Example:Find all salesin state of CA

> 100x Faster

STAT

E

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

• Scan and Filter only the needed Columns• Vector Instructions• Billions of Rows per

second

Improves All Aspects of Analytic Workloads ...

Oracle Confidential – Internal 13

Data Scans

Vect

or R

egist

erCPUCA

CACA

CA

In-Memory Aggregation

•Create In-Memory Report Outline by scanning dimension tables •Populate outline via fast inmemory scan of Fact Table•Runs Reports 10x faster

Joins

•Search large SALES table for values that match small ITEMS table•Convert slower joins into

10x faster filtered column scans

HASH JOIN

ITEMS SALES

SALES

STAT

E =

CA

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

• Column Store not persistent so updates are: Fast!

• Fast analytics on any columns• No analytic indexes: Reduces database size

• Inserting one row into a table requires updating 10-20 analytic indexes: Slow!

• Fast analytics only on indexed columns• Analytic indexes increase database size

Accelerates Mixed Workloads (Hybrid OLTP)

Table

1 – 3 OLTP

Indexes

10 – 20 AnalyticIndexes

REPLACE

14

Table

1 – 3 OLTP

IndexesIn-Memory

Column Store

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Oracle Database In-Memory: Features / Integration

15

Column

{ }

JSON

C2

1234

Analytics HTAP Workloads Massive Capacity Multi-Modal Automation

Active Data Guard Dynamic Workload Parallelism Hardware Acceleration Compression

Big Data Integration Spatial / Graph

Persistent Memory

+In-Memory Aggregation

Oracle CloudIn-Memory Powers the Cloud

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Why Database In-Memory + Exadata

1. Performance

2. C a p a c i t y

3. Availability Availability Availability …

4. Co$t Effe¢tive

Confidential – Oracle Internal/Restricted/Highly Restricted 16

In-Memory Columnar scans

In-FlashColumnar scans

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

• Exadata Flash Cache can store tables using IM data formats–With IM enabled, HCC, OLTP-

compressed, and Uncompressed tables are automatically cached in Exadata Flash Cache using IM data formats.

– Cell-Memory automatically adopts IM performance enhancements

• In-Memory Columnar data formats in Exadata Flash Cache is a key differentiator that makes Exadata the Best Platform for DBIM.

Confidential – Oracle Internal/Restricted/Highly Restricted 17

Exadata w/ Database In-Memory : IMC Formats in Flash

In-Memory Columnar scans

In-FlashColumnar scans

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Exadata w/ Database In-Memory : Population

Confidential – Oracle Internal/Restricted/Highly Restricted 18

Block 1

Block 2

Block 126

Block 5

Block 4

Block 3

Col 1…n

Block 127Block 128

Col 1…n

Col 1…n

1MB HCC format, 1MB

.

.

.

Block 1

Block 2

Block 3

Block 128

.

.

.

Uncompressed / OLTP /Hybrid format, 1MB

Columnar Cache format, 1-8MB

Metadata

Col 1 CU

Col 2 CU

Col n CU

Min/Max CU

..

.

64K

64K

64K

64K

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Exadata w/ Database In-Memory : Benefits

• DRAM column-store in Compute Servers, FLASH column-store in Storage– Accessing data from local memory to CPU on compute server is an order of

magnitude faster than accessing data on storage servers.

• Complex analytic processing with SIMD vectorization applied in both stores

• Expansion of In-Memory column store to Exadata Flash (data growth)

• New features that come with Exadata only– In-Memory Fault Tolerance (Duplicate IMCUs)

– In-Memory on Active Data Guard (Run Reports on Standby Database)

• In-Memory XMEM (Extended Memory) with Persistent Memory

• Automatic IM Management – Tier across DRAM/PMEM/FLASH/DISK

Confidential – Oracle Internal/Restricted/Highly Restricted 19

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Performance

Confidential – Oracle Internal/Restricted/Highly Restricted 20

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

DBIM Formats in Flash Cache (CellMemory) : Performance

0

1

2

3

4

5

6

7

1_1 1_2 1_3 2_1 2_2 2_3 3_1 3_2 3_3 3_4 4_1 4_2 4_3

Spee

dup

SSB Queries

DBIM in Flash Cache versus Columnar Flash Cache

Confidential – Oracle Internal/Restricted/Highly Restricted 21

5.8X

3.2X

1.5X

Up to 10X gains seen with other types of queries

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Automatic Data Optimizations (ADO) : Background

Heat Map

• ADO enables Information Life-Cycle Management (ILM) of data in RDBMS• An in-memory heat map tracks disk

based block and segment access• User can create policies on Tables,

Partitions, or Sub-partitions– Compress or move data between

storage tiers based on access.–Online, no impact to data availability– Allows automatic data tiering

Oracle Confidential – Highly Restricted

Policy 3Policy 2Policy 1

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

• 12c Automatic Data Optimization

(ADO) extended with In-Memory Policies

• Help automate column store

actions:

–Populate into the IM column store

– Increase compression as data cools

–Evict cold data from IM column

store

Automatic Data Optimizations (ADO) : In-Memory

Sales_Q3

Sales_Q2

Sales_Q4

In-Memory Column Store

Sales _Q1

23

ALTER TABLE sales ILM ADD POLICYNO INMEMORY AFTER 9 months OF CREATION;

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Manual In-Memory Management• If entire database fits within in-

memory area, no need for DBA involvement! • Otherwise, need to intelligently

select in-memory candidates • Desired outcome: Keep hot objects

in-memory, remove colder objects– Access patterns are not known in

advance and change over time– Hard for DBAs to achieve manually

Confidential – Oracle Internal/Restricted/Highly Restricted 24

The DBA

In-Memory Column Store

ManualManagement

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Introducing Automatic In-Memory • Eliminates trial and error regarding in-

memory area contents • Constant background action: – Classifies data as hot, intermediate or cold– Hotter in-memory tables automatically populated– Colder in-memory tables automatically removed – Intelligent algorithm takes into account space-

benefit tradeoffs

• Controlled by new parameter inmemory_automatic_level

• Useful for autonomous cloud services since no user intervention required

Confidential – Oracle Internal/Restricted/Highly Restricted 25

In-Memory Column Store

ObserveAccess

Patterns

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Introducing Automatic In-Memory• Eliminates trial and error regarding in-

memory area contents • Constant background action: – Classifies data as hot, intermediate or cold– Hotter in-memory tables automatically populated– Colder in-memory tables automatically removed – Intelligent algorithm takes into account space-

benefit tradeoffs

• Controlled by new parameter inmemory_automatic_level

• Useful for autonomous cloud services since no user intervention required

Confidential – Oracle Internal/Restricted/Highly Restricted 26

In-Memory Column StoreIntermediate Data Cool DataHot Data

Classify Data

Hot Data

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Introducing Automatic In-Memory• Eliminates trial and error regarding in-

memory area contents • Constant background action: – Classifies data as hot, intermediate or cold– Hotter in-memory tables automatically populated– Colder in-memory tables automatically removed – Intelligent algorithm takes into account space-

benefit tradeoffs

• Controlled by new parameter inmemory_automatic_level

• Useful for autonomous cloud services since no user intervention required

Confidential – Oracle Internal/Restricted/Highly Restricted 27

The DBA

In-Memory Column StoreHot Data Intermediate Data Cool Data

Populate

Hot Table

RemoveCold Table

Hot Data

ReactRemove cold data,Populate hot data

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 28

• External Tables allow transparent SQL on external data

• In-Memory External Tables: 100x faster analytics on external data

• All In-Memory Optimizations

– Vector processing, JSON expressions extend transparently to external data

• Simple to enable:

create table EXT1(…) organization external(…)inmemory

In-memoryExternal

Tables

RDBMSIn-memory

DatabaseTables

DB TABLES

In-Memory For External TablesFast Analytics on External Data

External Data

ObjectStorage

Files

Hadoop0

10

20

30

40

50

60

70

80

90

100

1 2 16 32

IMXT vs XT (scaling)TPCH Q1

IMXT

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Availability

Confidential – Oracle Internal/Restricted/Highly Restricted 29

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Fault Tolerant Availability

Only other AL4 Systems• IBM - z Systems• HPE - Integrity NonStop &

Superdome• Fujitsu – GS & BS2000• NEC – FT Server/320 Series• Stratus ftServer & V Series• Unisys – Dorado

“Exadata and SuperClusterboth achieve AL4 fault

tolerance in a Maximum Availability Architecture*

configuration”

FIVE NINES

5X999.999%

A New Gold Standard

30

*Gold or Platinum reference architecture

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Exadata with Database In-Memory : Fault Tolerance• IMCUs for a table are

populated into 2 database servers in a RAC cluster– INMEMORY DUPLICATE mode

– Zero application impact on failure

• Fully Duplicate all IMCUs for a table across all RAC instances– INMEMORY DUPLICATE ALL mode

– Additionally provides performancebecause always local access to a duplicate IMCU

• Application transparent

| Oracle Confidential – Highly Restricted 31

INMEMORY DUPLICATE ALL

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

• In-Memory queries run on standby – No impact on primary database– Full use of standby database resources

• Standby can have different in-memory contents from Primary– DISTRIBUTE BY SERVICE subclause used

to determine data placement– Increases total effective in-memory

columnar capacity– Increases column store availability:• Reporting workload on standby unaffected

by primary site outage

Availability + Capacity : In-Memory on Active Data Guard

32

ALTER TABLE SALES INMEMORY DISTRIBUTE BY SERVICE A

Primary Standby

ShipmentsIn-Memory

SalesIn-Memory

SHIPMENTS

ALTER TABLE SHIPMENTS INMEMORYDISTRIBUTE BY SERVICE C

Serv

ices

Ena

bled

: A

Serv

ices

Ena

bled

: B,

C

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Capacity

Confidential – Oracle Internal/Restricted/Highly Restricted 33

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

12.8 TB Flash

Capacity: Extend DBIM Formats in Flash Cache

34

100s of TBs Possible on Full Rack X7 (with 10X Faster Queries)

Up to 1.5 TB DRAM

SGA

IMC

25.6 TB Flash x 3 = 76.8 TB (or more)IMC (In-Memory Columnar) data

Database Server

In-Memory Columnar scans

In-FlashColumnar scans

Row formatted or HCC Data

Storage Server

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

• New XMEM (eXtended Memory) Area for DBIM built using PMEM• PMEM is like DRAM, but denser,

slower, and persists data. Persistence isn’t leveraged w/ XMEM• inmemory_xmem_size• Small, higher access tables in

DRAM, and larger, less accessed tables in XMEM.

Confidential – Oracle Internal/Restricted/Highly Restricted 35

XMEM : Extending IM Column Store w/ Persistent Memory

XMEMColumn Store

inmemory_size

inmemory_xmem_size

Hotter, Smaller Tables

Cooler, Larger, Tables

DRAMColumn Store

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Cost Effective

Confidential – Oracle Internal/Restricted/Highly Restricted 36

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Exadata: Most Cost Effective Platform to Run Database IM• Reduce the number of database servers• Reduce the amount of DRAM per database server• Reduce amount of flash required • Reduce management overhead of running Database In-Memory• Reduce cost of downtime due to outages• Run Database In-Memory on standby

| Oracle Confidential – Highly Restricted 37

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

• For high-end enterprises• In-Memory included in PaaS• Up to 760 GB of RAM per

node, up to 8 nodes

• For developers and small departmental users

• Very low cost• Up to 10 GB In-Memory

38

• For mid-range enterprises• Available with Extreme

Performance Service• Up to 240 GB RAM

Database In-Memory Available in the Oracle Public CloudEasiest Platform to Try or Deploy In-Memory

Exadata Express Database As a Service Exadata Cloud Service & Cloud@Customer

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Summary• Exadata is the premier, flagship platform for Oracle Database.

• Database In-Memory brings significant analytic workload performance to this amazing platform– Specific performance critical and high availability functionality only on Exadata.

• Intelligent storage tiering software auto-manages your data seamlessly across different storage mediums (DRAM <-> PMEM <-> FLASH <-> SSD).

• Exadata + Database In-Memory Powers the Autonomous Cloud

•Want to see Exadata + DBIM in action?–Come to Engineered Systems / Cloud Showcase @ DemoGrounds in

Moscone South (The Exchange)Confidential – Oracle Internal/Restricted/Highly Restricted 39

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Thank You

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Appendix

Confidential – Oracle Internal/Restricted/Highly Restricted 41

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Autonomous Databases built with Exadata + DBIM

Confidential – Oracle Internal/Restricted/Highly Restricted 42

Provisioning Patching Security

Migration Elasticity Monitoring

Optimize Error

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |

Autonomous Databases built with Exadata + DBIMz

Confidential – Oracle Internal/Restricted/Highly Restricted 43

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 44