Upload
truongdiep
View
225
Download
0
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. |
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