Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Oracle In-Memory Processing
1
Tirthankar LahiriVice President Data and In-Memory Technologies Oracle Database
Class-Leading In-Memory Technology
@dbinmemory
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.
2
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Database Platform of the Future – Complete and Integrated
3
REST{JSON}
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
In-Memory Database Technology Facts
• Next Generation Enterprises must be real-time
– In-Memory is essential for real-time processing
– In-Memory is essential in next-gen database platforms
• Current Memory sizes enable In-Memory today–Oracle X7-2 server: Up to 1.5TB of DRAM
– Not using in-memory is like using Windows 98 in 2018
4
The Time is NOW
Real-Time Enterprise
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
In-Memory Across Tiers in the Oracle Database Stack• TimesTen In-Memory Database– Latency Critical custom OLTP applications– Microsecond response time– Standalone or Cache for Oracle Database
5
Application
SALES
RowFormat
ColumnFormat
SALESDatabase-Tier
Storage-Tier
Application-Tier
SALES• In-Memory on Exadata Storage – In-memory column format on Exadata Flash Cache– 5-10x faster smart scan in storage – 15x increase in total columnar capacity
• Database In-Memory– Dual Format In-Memory Database– Billions of Rows/sec analytic data processing– 2-3x Faster Mixed Workloads
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Relational Database– Pure in-memory– ACID compliant– Standard SQL– Entire database in DRAM
Persistent and Recoverable– Database and Transaction logs
persisted on local disk or flash storage
6
Extremely Fast– Microseconds response time– Very high throughput
Highly Available– Active-Standby and multi-master
replication – Very high performance parallel
replication
Oracle TimesTen In-Memory Database
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Application-Tier Database Cache for Oracle DatabaseTelco ServicesFinancial Services
Real-Time Analytics –Dashboard, Scorecard
Data MarteCommerce,
Personalization
TimesTen Application Tier Cache
• Cache subset of Oracle Database tables in TimesTen for better response time – With full persistence to local storage
• Read-write caching – Transaction execution and persistence in TimesTen
• Read-only caching– Transactions executed in Oracle Database
• HA and fault tolerance in the application-tier
ApplicationApplicationApplication
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 8
New Release: TimesTen Scaleout In-Memory Database
Single Image In-Memory Database
Proven TimesTen technology with Scale-Out for High Performance, and Multi-Copy for High Availability
• For High-Velocity Extreme OLTP applications– IOT, trading, mobile, click stream, billing, orders, fraud, etc.
• Performance-Oriented Design – Pure In-Memory, Full SQL, Full ACID Transactions– Fault-Tolerant Scale-Out• All nodes active for read/writes• Multiple data copies for HA
– Sophisticated and Parallel SQL for reporting and batch
• Extremely easy to install and operate – Less than 15 mins to install, deploy, and run application
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Scale-Out Shared Nothing In-Memory Database
• Appears as a single DB to applications- Not a sharded database
• Adding and removing DB nodes (elements)- Data automatically redistributed - Workload automatically uses new nodes
• Built-in HA via fully-active node copies– Node copies automatically kept in sync
• Highly compatible with Oracle (subset)- Data types, SQL & PLSQL, Oracle Call Interface
Single-Image DB with High Availability and Elasticity
9
A
A
B
BC
C
D
D
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Workload: • YCSB version 0.15.0• 1KB record
(100-byte x 10 Fields)• 100M records / Replica Set• Uniform Distribution
Configuration• Oracle Bare Metal Cloud• 32 x DenseIO.52 hosts • Oracle Linux x86 64-bit • Intel Platinum 8167M @2GHz• 25G Ethernet• NVMe disk storage
YCSB Workload A (50% Read 50% Update)
10
432.929 878.512
1.715.569
3.294.530
6.428.732
-
1.000.000
2.000.000
3.000.000
4.000.000
5.000.000
6.000.000
7.000.000
1x2 2x2 4x2 8x2 16x2
Tran
sact
ions
per
Sec
ond
TimesTen Scaleout Configuration
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
YCSB Workload B (95% Read 5% Update)
11
2.772.366 5.505.610
10.661.407
20.466.127
38.154.715
-
5.000.000
10.000.000
15.000.000
20.000.000
25.000.000
30.000.000
35.000.000
40.000.000
45.000.000
1x2 2x2 4x2 8x2 16x2
Tran
sact
ions
per
Sec
ond
TimesTen Scaleout Configuration
Workload: • YCSB version 0.15.0• 1KB record
(100-byte x 10 Fields)• 100M records / Replica Set• Uniform Distribution
Configuration• Oracle Bare Metal Cloud• 32 x DenseIO.52 hosts • Oracle Linux x86 64-bit • Intel Platinum 8167M @2GHz• 25G Ethernet• NVMe disk storage
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
YCSB Workload C (100% Read)
12
5.112.763 9.854.235
19.831.099
37.646.889
65.440.298
-
10.000.000
20.000.000
30.000.000
40.000.000
50.000.000
60.000.000
70.000.000
1x2 2x2 4x2 8x2 16x2
Tra
nsa
ctio
ns
pe
r S
eco
nd
TimesTen Scaleout Configuration
Workload: • YCSB version 0.15.0• 1KB record
(100-byte x 10 Fields)• 100M records / Replica Set• Uniform Distribution
Configuration• Oracle Bare Metal Cloud• 32 x DenseIO.52 hosts • Oracle Linux x86 64-bit • Intel Platinum 8167M @2GHz• 25G Ethernet• NVMe disk storage
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 13
Linear and Massive Transaction Scalability
5.003.22510.213.637
19.803.43639.244.125
76.167.743
144.211.475
0
20.000.000
40.000.000
60.000.000
80.000.000
100.000.000
120.000.000
140.000.000
160.000.000
0 10 20 30 40 50 60 70
SQL Transactions/secWorkload• TPTBM telco workload• Shipped with TimesTen for
10+ years• 80% read / 20% write
workload
Configuration• Oracle Bare Metal Cloud• 64 x BM.HighIO1.36• Oracle Linux x86 64-bit• E5-2699 v3 @ 2.30GHz• 10G Ethernet• NVMe Disk storage
# Elements
TPS
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 14
Linear and Massive Query Scalability
39.241.44678.705.103
154.432.274
308.344.070
616.833.030
1.236.703.781
0
200.000.000
400.000.000
600.000.000
800.000.000
1.000.000.000
1.200.000.000
1.400.000.000
0 10 20 30 40 50 60 70
1.2 Billion SQL Selects/secWorkload• TPTBM telco workload• Shipped with TimesTen for
10+ years• 100% read workload
Configuration• Oracle Bare Metal Cloud• 64 x BM.HighIO1.36• Oracle Linux x86 64-bit • E5-2699 v3 @ 2.30GHz• 10G Ethernet• NVMe Disk storage
# Elements
TPS
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
In-Memory Across Tiers
• TimesTen In-Memory Database– Latency Critical custom OLTP applications
– Microsecond response time
– Standalone or Cache for Oracle Database
15
Application
SALES
RowFormat
ColumnFormat
SALESDatabase-Tier
Storage-Tier
Application-Tier
SALES
• In-Memory on Exadata Storage – In-memory column format on Exadata Flash Cache
– 5-10x faster smart scan in storage
– 15x increase in total columnar capacity
• Database In-Memory– Dual Format In-Memory Database
– Billions of Rows/sec analytic data processing
– 2-3x Faster Mixed Workloads
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Until Now Must Choose One Format and Suffer Tradeoffs
Row Format Databases vs. Column Format Databases
Row
§ Transactions run faster on row format
– Example: Insert or query a sales order– Fast processing for few rows, many columns
Column
§ Analytics run faster on column format
– Example : Report on sales totals by region– Fast accessing few columns, many rows
SALES
SALES
16
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
What is a Controversy?
“A discussion marked especially by the expression of opposing views”
Merriam Webster
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Decades Long Controversy in Database Systems
Row FormatColumn Format
“A discussion marked especially by the expression of opposing views”
Merriam Webster
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Oracle Database In-Memory: Dual Format Architecture
• BOTH row and column formats for same table
• Simultaneously active and consistent
• OLTP uses existing row format
• Analytics uses new In-Memory Column format
19
Existing Buffer Cache
New In-MemoryFormat
SALES SALES
RowFormat
ColumnFormat
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
In-Memory Columnar Format
• Pure in-memory column format• Cheap to maintain – no logging or IO• Allows efficient OLTP
• No changes to disk format• Transparent to Applications
• Can be enabled for any subset of database• Partitions of tables• Tables• Tablespaces• Full database if needed
20
SALES
Pure In-Memory Columnar
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Vector Processing: Additional Advantage of Column Format
• Each CPU core scans only required columns
• SIMD vector instructions used to process multiple values in each instruction • E.g. Intel AVX instructions
• Billions of rows/sec scan rate per CPU core• Row format is millions/sec
21
Vect
or R
egist
erLoadmultipleregion values
VectorCompare all valuesin 1 instruction
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. |
Joining and Combining Data Also Dramatically Faster
• Converts joins of data in multiple tables into fast filtered column scans
• Joins tables 10x faster
22
Example: Find total sales in outlet stores
SalesStores
Stor
e ID
StoreID in15, 38, 64
Type=‘Outlet’
Type
Sum
Stor
e ID
Amou
nt
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Generates Reports Instantly
• Dynamically creates in-memory report outline
• Then report outline filled-in during fast fact scan
• Reports run 10x faster• Without predefined cubes
23
Example: Report sales of footwear in outlet stores
Sales
Stores
ProductsIn-Memory
Report Outline
Footwear
Out
lets
$$$
$$$$
Footwear
SalesOutlets
Copyright © 2018, 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 parallelized across servers to access local column data
• Direct-to-wire InfiniBand protocol speeds messaging on Engineered Systems
26
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
In-Memory Across Tiers
• TimesTen In-Memory Database– Latency Critical custom OLTP applications
– Microsecond response time
– Standalone or Cache for Oracle Database
27
Application
SALES
RowFormat
ColumnFormat
SALESDatabase-Tier
Storage-Tier
Application-Tier
SALES
• In-Memory on Exadata Storage – In-memory column format on Exadata Flash Cache
– 5-10x faster smart scan in storage
– 15x increase in total columnar capacity
• Database In-Memory– Dual Format In-Memory Database
– Billions of Rows/sec analytic data processing
– 2-3x Faster Mixed Workloads
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Exadata: The Ultimate Database Platform
• Ideal Database Hardware - Scale-out, database optimized compute, networking, and storage
• Smart Database Software – Specialized algorithms for Analytics, OLTP, and Consolidation • Full-Stack Automation – Automation and
optimization of configuration, updates, performance, resource management
28
DB Servers
InfiniBand
Storage Servers
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Exadata: Transparent Storage TieringIn-Memory Speed + Flash Bandwidth + Disk Capacity
DISK
NVMe FLASH
DRAM
Cold Data
Hottest Data
Active Data
• Size not limited by memory
• Data transparently accessed across tiers
• Each tier has specialized algorithms & compression
• Simultaneously Achieve:
• Speed of DRAM
• I/Os of Flash
• Cost of Disk
29
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Exadata Achieves Memory Performance with Shared Flash
• Exadata X7 delivers 400GB/sec flash bandwidth– Approaches 800GB/sec aggregate DRAM bandwidth of DB servers
• Must move compute to data to achieve full flash potential– Push query processing into storage tier– Requires owning full stack, can’t be solved in storage or DB alone
• Flash storage arrays scale flash capacity but not performance– Even with next gen scale-out, PCIe networks, or NVMe over fabric
• Shared storage with memory-level bandwidth is a paradigm change in the industry– Get near DRAM throughput, with the capacity of shared flash
30
ExadataDB Servers
Exadata Smart Storage
InfiniBand
CPU
PCIeNVMe
Flash Chips
QueryOffload
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
In-Memory Columnar Format in Columnar Flash Cache
• In-Memory format in Smart Columnar Flash
– Enables SAME in-memory optimizations on data in Exadata flash as available on Exadata DB compute nodes DRAM
• Extends in-memory from DB compute nodes to Storage nodes
– 15x Columnar Capacity (100s of TB possible on full rack X7)
– New in-memory format – offloaded queries 10x faster
• Does not require any user intervention
– Powers the new Autonomous Data Warehouse
In-Memory Columnar scans
In-FlashColumnar scans
31
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Summary: In-Memory is a Cross-Tier Technology • TimesTen In-Memory Database– Latency Critical custom OLTP applications– Microsecond response time– Standalone or Cache for Oracle Database
32
Application
SALES
RowFormat
ColumnFormat
SALESDatabase-Tier
Storage-Tier
Application-Tier
SALES• In-Memory on Exadata Storage – In-memory column format on Exadata Flash Cache– 5-10x faster smart scan in storage – 15x increase in total columnar capacity
• Database In-Memory– Dual Format In-Memory Database– Billions of Rows/sec analytic data processing– 2-3x Faster Mixed Workloads
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
The Forrester WaveTM: In-Memory Databases, Q1 2017
33
Oracle In-Memory DatabasesScored Highest by Forrester
on both Current Offering and Strategy
http://www.oracle.com/us/corporate/analystreports/forrester-imdb-wave-2017-3616348.pdf
The Forrester Wave™ is copyrighted by Forrester Research, Inc. Forrester and Forrester Wave™ are trademarks of Forrester Research, Inc. The Forrester Wave™ is a graphical representation of Forrester's call on a market and is plotted using a detailed spreadsheet with exposed scores, weightings, and comments. Forrester does not endorse any vendor, product, or service depicted in the Forrester Wave. Information is based on best available resources. Opinions reflect judgment at the time and are subject to change.
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
§ Data Driven – Rapidly make decisions based on real-time data
§ Agile – Respond quickly to change
§ Efficient – Continually improve processes and profitability
Real-Time Enterprise
AGILE
EFFICIENT
DATA-DRIVEN AGILE
In-Memory Enables the Real Time Enterprise
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |