Más contenido relacionado La actualidad más candente (20) Similar a What_to_expect_from_oracle_database_12c (20) What_to_expect_from_oracle_database_12c1. Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |
What to Expect from
Oracle Database 12c
Maria Colgan
Master Product Manager
Oracle Database Systems
@SQLMaria
2. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
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.
Safe Harbor Statement
3. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Oracle Database 12c Continuous Innovation
3
CloudInternetClient-Server
1990s 2000s 2010s
Oracle 5, 6, 7, 8 Oracle 8i, 9i, 10g Oracle 11g, 12c
Scalability Row Level Locking, B-tree
Indexes, Read Consistency, PX,
Shared Cursors, Shared Server
Real Application Clusters,
Automatic Storage Management, IOTs
Advanced Compression, Bitmap Indexes
Exadata, Smart Flash, In-Memory DB,
Software-in-Silicon,
Native Database Sharding
Availability Transactions, Ref Integrity,
Online Backup, Point-in-Time
Recovery
Data Guard (Active), Recovery Manager,
Flashback, Clusterware, Online DDL, TAF
Zero Data Loss Recovery Appliance,
Edition Based Redefinition, App. Cont.
Analytics Partitions, Parallel SQL,
Optimizer
Analytic Function, Data Mining, OLAP, MVs SQL Pattern Match, R, Big Data Appl
Security Privileges, Roles, Auditing,
Network Encryption, Views
Data Encrypt, Masking, Virtual Private DB,
Label Security, DB Vault, Audit Vault, PKI
Real Application Security, DB Firewall,
Priv Analysis, Redaction, Key Vault
Developers SQL, Views, PL/SQL, Triggers,
LOBs, Object Types, Spatial, Text
Java in DB, Native XML, Table Funct, .Net,
PHP, App Express, SQL Developer
Native JSON, REST Services, Node.js,
RDF Social Graph, Network Graph
Management Enterprise Manager, v$, wait
event
Diagnostics, Tuning, Testing, Lifecycle
Packs
MultiTenant, DB & Exa Cloud, DB Appl
Integration DB Links, 2PC, Replication, AQ GoldenGate, XA Transaction, External
Table
Big Data SQL, Big Data Analytics
Public
4. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Performance
4PublicPerformance Security Developers Management Availability Big Data Analytics
5. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
What is Oracle Database In-Memory?
• Breakthrough: Dual Format
Database
• BOTH row and column
formats for same table
• Simultaneously active and
transactionally consistent
• Analytics & reporting use new
in-memory Column format
• OLTP uses proven row format
5
Buffer Cache New In-Memory
Format
SALES SALES
Row
Format
Column
Format
SALES
PublicPerformance Security Developers Management Availability Big Data Analytics
6. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
• Speed of memory
• Scan and Filter only
the needed Columns
• Vector Instructions
Improvements to All Aspects of Analytic Query
6
Data ScansVectorRegister
CPU CA
CA
CA
CA
In-Memory Aggregation
•Create In-Memory
Report Outline that is
Populated during Fast Scan
•Runs Reports Instantly
Joins
•Convert Star Joins into 10X
Faster Column Scans
•Search large table for values
that match small table
HASH JOIN
Table A Table B
SALES
STATE=CA
Performance Security Developers Management Availability Big Data Analytics
7. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
• Enables real-time analytics on
standby with no impact on
production database
• Makes productive use of standby
database resources
• Can place different data in-memory
on standby versus production
7
In-Memory on Active Data Guard Standby
Month
In-Memory
Production Standby
Year
In-Memory
PublicPerformance Security Developers Management Availability Big Data Analytics
8. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
• Joins are a significant component of
analytic queries
– Bloom filter enable 10X faster Joins on
in-memory tables
• 12.2 introduces Join Groups
– Specifies columns used to join tables
– Column share compression dictionary
– Joins occur on dictionary values rather
than data
• Enables additional 2-3x speedup
8
Faster In-Memory Joins
Example: Find total sales in outlet stores
Create Join Group store_sales_jg
(STORES (STORE_ID),SALES (STORE_ID);
Stores
Store ID is
join column
Type=‘Outlet’
Sales
Amount
StoreID
Type
StoreID
PublicPerformance Security Developers Management Availability Big Data Analytics
9. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 9
In-Memory JSON Queries
Relational
Pure In-Memory Columnar
In-Memory
Virtual Columns
In-Memory
JSON Format
{
"Theater":"AMC 15",
Movie": "Magical Creatures",
"Time“: “2017-01-01T18:45:00",
"Tickets":{
"Adults":2
}
}
Relational Virtual JSON
PublicPerformance Security Developers Management Availability Big Data Analytics
• Full JSON documents loaded using a highly
optimized In-Memory binary format
• Virtual columns from JSON objects loaded
into In-Memory Virtual Columns
• Query operations on JSON content
automatically directed to In-Memory
• Simple queries on virtual columns
• More complex JSON processing using
in-memory binary format
10. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
In-Memory Fast-Start
10
• IM column format persisted to storage
• In-Memory column store contents
checkpointed to secure file lob on
populate
• When DB restarts, population is faster
as population process reads the
column format directly from storage
• Faster restore (2-5x) of column store
since no need to reformat data
Buffer Cache
In-Memory
Column Store
DBFILE1
Table
Index Table
Table
Index
DBFILE2SALES
TABLESPACE
FAST START
TABLESPACE
Fast Start
Data
PublicPerformance Security Developers Management Availability Big Data Analytics
11. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 11
Index Compression High
1.2 TB 679 GB 270 GB
No
Compression
Low
Compression
High
Compression
1.8X
4.6X
10,000 Indexes
13% Improvement in workload throughput (for low compression)
• New Index High compression enables
further compression of indexes
• Significant space savings for index heavy
applications (i.e. OLTP)
• Index compression can also result in I/O
improvements as a higher proportion of
index can be cached
PublicPerformance Security Developers Management Availability Big Data Analytics
Index Usage Statistics
• Track index usage
with no overhead
• New
DBA_INDEX_USAGE
views provide
usage histograms
and access
12. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Security
12PublicPerformance Security Developers Management Availability Big Data Analytics
13. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Database Enforced, Declarative End-User Data Security
Now Oracle Database Declaratively
Enforces End-User Data Security
Impossible to verify and
control access
Data Vault prevents
administrators from
seeing customer data
)F^G%$H!#V#^xFJ
#*^%^&@%*$&^*
&
$
%
^
&
$
%
^
For example,
credit card data
Data Redaction masks
sensitive data before
returning it
Real Application Security
provides rule based control
of data end-users can access
For example,
manager can see
employees data
Historically, application
logic controlled the data
end-users could access
14. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Online Tablespace Encryption
14
• Exabytes of unencrypted data exist today
• Currently must export/import to encrypt
• 12.2 introduces online encryption of
existing database files
– Also supports online re-key
• Also New
– Full encryption of internal database structures
i.e. SYSTEM, SYSAUX, and UNDO tablespaces
SALES
TABLESPACE
HCM
TABLESPACE
HCM
TABLESPACE
DF11233 U*1
$5Ha1qui %H1
HSKQ112 A14
FASqw34 £$1
DF@£!1ah HH!
DA45S& DD1
Acme 10 1/2/16
Acme 3 1/3/16
Acme 5 1/5/16
Acme 12 1/7/16
Acme 4 1/8/16
Acme 2 1/9/16
PublicPerformance Security Developers Management Availability Big Data Analytics
15. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Developers
15PublicPerformance Security Developers Management Availability Big Data Analytics
16. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Case insensitive database
support
• Collation can be declared on a
schema, table or column level
• Accent-insensitive is also
supported
Public 16
Long Identifiers
• Object Names for tables, columns
etc. can now be 128 bytes in
length
• Allows for more expressive
naming of objects
Globalization Support
• AL32UTF8 is the default database
character set
• Unicode 7.0 support
Core Database Improvements
CREATE TABLE
Sales_Data_For_Online_Transactions
(Transaction_Identifier NUMBER(6),
Date_Of_Sales_Transaction DATE,
Gross_Value_of_Transaction NUMBER(3,2),
. . .
…
Performance Security Developers Management Availability Big Data Analytics
17. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Native SQL Support for JSON
• JSON is the most popular data format for new web applications
• JSON in database greatly simplifies app development
– Same schema-less data representation in App and DB
• Oracle stores JSON in table columns, with native SQL support
SELECT c.json_column.address.city
FROM customers c;
• JSON supported by all Oracle features
– Analytics, Encryption, In-Memory, RAC, Replication, Parallel SQL, …
– Plus can manage JSON documents, and index any JSON element
17
Better JSON
than JSON Only
Databases
{}
JSON
18. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 18
Native SQL Support for JSON
12.2 JSON
Public
• JSON can be queried using simple SQL dot
notation
SELECT
m.booking_details.Movie
FROM movie_tickets m;
Movie
--------------------
Fences
Hacksaw Ridge
Hell or High Water
Hidden Figures
La La Land
Table containing JSON documents
SQL> desc MOVIE_TICKETS
NAME TYPE
--------------------- -----------
BOOKING_ID RAW(16)
BOOKING_TIME TIMESTAMP(6)
BOOKING_DETAILS
VARCHAR2(4000)
{
"Theater":"AMC 15",
Movie": ”La La Land",
"Time“: “2017-02-01 18:45:00",
"Tickets":{
"Adults":2
"show" : "Evening"
}}
19. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 19
Oracle Database 12c as a Document Store
12.2 JSON DataGuide – Automatic Schema Inference
Table containing
JSON documents
JSON DataGuide Table enhanced with
virtual columns
SQL> desc MOVIE_TICKETS
NAME TYPE
--------------------- -----------
BOOKING_ID RAW(16)
BOOKING_TIME TIMESTAMP(6)
BOOKING_DETAILS VARCHAR2(4000)
BOOKING_DETAILS$Movie VARCHAR2(16)
BOOKING_DETAILS$Theater VARCHAR2(16)
BOOKING_DETAILS$Adults NUMBER
BOOKING_DETAILS$Time VARCHAR2(32)
DBMS_JSON.AddVC(
“MOVIE_TICKETS”,
“BOOKING_DETAILS”);
PublicPerformance Security Developers Management Availability Big Data Analytics
20. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
More 12.2 SQL innovations
20
• Enhanced LISTAGG
• Band joins
• Real-time materialized views
• PL/SQL Improvements
PublicPerformance Security Developers Management Availability Big Data Analytics
21. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 21
LiveSQL.oracle.com – Free
• SQL scratch pad in the Oracle Cloud
• Free service launched Oct 2015 @ OOW
• Google searchable SQL syntax
• Customers can save and share SQL examples
• Planned integration w/ Oracle documentation
PublicPerformance Security Developers Management Availability Big Data Analytics
22. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 22
Manageability
PublicPerformance Security Developers Management Availability Big Data Analytics
23. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
APOEGL
New Multitenant Architecture
Memory and processes required at container level only
System Resources
GL OE AP
24. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
• PDBs per container increased from
252 to 4,096
• Memory resource prioritization in
addition to CPU and I/O
• PDBs optimized for RAC
– PDB lock domain
24
Consolidation & Isolation at Scale
RetailPricing
Multitenant Container
Public
25. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
PDB Hot Clone
• PDB Hot Clone
– Online test master instantiation
CRM
Oracle Cloud
Pricing Retail
On-Premises
25
Hot Clone
Snap Clone
Snap Clone
CRM CRM Dev1 CRM Dev2
Developers
PublicPerformance Security Developers Management Availability Big Data Analytics
26. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
PDB Refresh
• PDB Hot Clone
– Online test master instantiation
• PDB Refresh
– Incremental refresh of clone with latest
data
CRM
Oracle Cloud
Pricing Retail
On-Premises
26
CRM
Snap Clone
Snap Clone
CRM Dev1 CRM Dev2
Developers
TIME
Changes made to database
Cloned version no longer in sync
Only changes copied and applied
PublicPerformance Security Developers Management Availability Big Data Analytics
27. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
• PDB Hot Clone
– Online test master instantiation
• PDB Refresh
– Incremental refresh of clone with latest
data
• PDB Relocate
– Relocate with no downtime
27
PDB Relocate
27
CRM
HR
Oracle Cloud
Pricing Retail
On-Premises
CRM
PublicPerformance Security Developers Management Availability Big Data Analytics
28. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Availability
28PublicPerformance Security Developers Management Availability Big Data Analytics
29. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Oracle Sharding
29
Linear Scalability, Fault Isolation, Global Data Distribution, Cloud Enabled
One giant database partitioned into many small
databases (shards)
Customers Americas
Customers
Customers Europe
Customers Asia
• RAC and Data Guard meet needs of over 99% of applications
while preserving application transparency
• Some Global-Scale OLTP applications prefer to shard massive
databases into a farm of smaller databases
– Avoid scalability or availability edge cases of a single large
system image database
– Willing to customize data model and applications to enable
transactions to be automatically routed to the right shard
• Native SQL for sharding tables across up to 1000 Shards
- Routing of SQL based on shard key, and cross shard queries
- Online addition and reorganization of shards
- Linear scalability of data, workload, users with isolation
PublicPerformance Security Developers Management Availability Big Data Analytics
30. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 30
Oracle Sharding Automated Distribution
Enhanced SQL syntax for Sharding
…
CREATE SHARDED TABLE Customers
( CustId VARCHAR2(60) NOT NULL,
FirstName VARCHAR2(60),
LastName VARCHAR2(60),
…
PRIMARY KEY(CustId),
)
PARTITION BY CONSISTENT HASH (CustId)
…
• SQL syntax for creating sharded tables
• Not proprietary APIs as with NoSQL
• Creation of a sharded table automatically
partitions data across shards
• Transparent resharding as data grows
• Choice of sharding methods:
• System managed - consistent hash
• User defined - range, list
• Composite - range-hash, list-hash
• Common reference data (e.g. Price List) is
automatically duplicated on all shards
• Supports shard placement in specific
geographies to satisfy government data privacy
…
…
PublicPerformance Security Developers Management Availability Big Data Analytics
31. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Coordinator
DB
App Tier
Routing Tier
Data
Tier
31
Routing Support on Client for Highest Speed
Application
Server
Shard Directors
• Clients pass sharding key (e.g. Customer ID)
to Connection pool, connection is routed to
the right shard
• Fast: caching key ranges on client ensures
that most accesses go directly to the shard
• Scalable: easily scales with more clients and
shards
• Supports UCP, OCI, ODP.NET, and JDBC
Sharding key
…
…
PublicPerformance Security Developers Management Availability Big Data Analytics
32. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
32
Sharded Schema
Customers Orders Line Items
Products
Sharded
Duplicated
PublicPerformance Security Developers Management Availability Big Data Analytics
33. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Big Data
33PublicPerformance Security Developers Management Availability Big Data Analytics
34. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 34
Oracle Big Data Platform
Data of any type
Any data source
Analysis of any typeSQL GraphSpark Spatial
Machine
Learning
SQL
Access with any language
node.jsJavaREST Python ScalaR
Performance Security Developers Management Availability Big Data Analytics
35. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Fast SQL access for Relational, Hadoop and NoSQL
• Unified SQL language for all data sources
– With full power of Oracle SQL
• Massively parallel, distributed query processing
– Local processing using ‘Smart Scan’ technology
– Scalable joins between data sources
• Secure data access
– Redaction and row-based security on all data sources
35
Using Oracle Big Data SQL
Big Data SQL
Performance Security Developers Management Availability Big Data Analytics
36. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Big Data Innovations
• External tables can be partitioned
using any partitioning technique
• Enables order-of-magnitudes faster
query performance and enhanced
data maintenance
– Partition pruning
– Basic partition
maintenance(add/drop/exchange)
Public 36
SALESTABLE(external)
UKPartition GermanyPartition USAPartition
SQL
Partitioned External Tables
Performance Security Developers Management Availability Big Data Analytics
37. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Analytics
37PublicPerformance Security Developers Management Availability Big Data Analytics
38. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Analytic Views
38
• Moves business logic (Aggregations,
Hierarchies, Calculations) back into
database
• Simple SQL for complex analytic queries
– no joins or GROUP-BY clauses necessary
– navigate through hierarchies without re-
defining calculations
• Works on top of existing tables
– no persistent storage
PublicPerformance Security Developers Management Availability Big Data Analytics
39. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
• Delivers significantly faster analysis for
interactive and highly iterative data
exploration
• Approximations for expensive aggregates:
APPROX_COUNT_DISTINCT (12.1)
APPROX_PERCENTILE
APPROX_MEDIAN
– Find the value for a given percentile, e.g. what
is the amount sold that represents the 90%
percentile of all sales
– Accuracy and error rate provided
– 6-13X faster with error typically < 1%
• Approximate functions used without any
application changes
– Queries automatically re-written to use
approximate functions
– approx_for_aggregation = TRUE
39
• Store approximate aggregates in
materialized views with query rewrite
– Not previously possible to use MV’s with
distinct and percentile aggregates
New in 12.2 Approximate Query Processing
Not every query requires a completely accurate result
PublicPerformance Security Developers Management Availability Big Data Analytics
40. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 40
Benefits of Approximate Query Processing
Without approx query processing:
SORT in execution plan
8GB of memory (PGA)
164GB of temp
50x Faster
15X Less Memory
No temp required
With approx query processing:
No large sorts
540MB of memory (PGA)
0 GB temp
Performance Security Developers Management Availability Big Data Analytics
41. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Property Graph
• Massively-Scalable Graph Database
– Scales to trillions of edges
• Memory-based Graph Analytics
– More than 35 graph analysis algorithms
• Simple Standard interfaces
– SQL, Java
– Tinkerpop: Blueprints, Gremlin, Rexster
– Groovy, Python
41PublicPerformance Security Developers Management Availability Big Data Analytics
42. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Oracle Database 12c Continuous Innovation
42
CloudInternetClient-Server
1990s 2000s 2010s
Oracle 5, 6, 7, 8 Oracle 8i, 9i, 10g Oracle 11g, 12c
Scalability Row Level Locking, B-tree
Indexes, Read Consistency, PX,
Shared Cursors, Shared Server
Real Application Clusters,
Automatic Storage Management, IOTs
Advanced Compression, Bitmap Indexes
Exadata, Smart Flash, In-Memory DB,
Software-in-Silicon,
Native Database Sharding
Availability Transactions, Ref Integrity,
Online Backup, Point-in-Time
Recovery
Data Guard (Active), Recovery Manager,
Flashback, Clusterware, Online DDL, TAF
Zero Data Loss Recovery Appliance,
Edition Based Redefinition, App. Cont.
Analytics Partitions, Parallel SQL,
Optimizer
Analytic Function, Data Mining, OLAP, MVs SQL Pattern Match, R, Big Data Appl
Security Privileges, Roles, Auditing,
Network Encryption, Views
Data Encrypt, Masking, Virtual Private DB,
Label Security, DB Vault, Audit Vault, PKI
Real Application Security, DB Firewall,
Priv Analysis, Redaction, Key Vault
Developers SQL, Views, PL/SQL, Triggers,
LOBs, Object Types, Spatial, Text
Java in DB, Native XML, Table Funct, .Net,
PHP, App Express, SQL Developer
Native JSON, REST Services, Node.js,
RDF Social Graph, Network Graph
Management Enterprise Manager, v$, wait
event
Diagnostics, Tuning, Testing, Lifecycle
Packs
MultiTenant, DB & Exa Cloud, DB Appl
Integration DB Links, 2PC, Replication, AQ GoldenGate, XA Transaction, External
Table
Big Data SQL, Big Data Analytics
Public
43. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Join the Conversation
https://twitter.com/sqlmaria
https://sqlmaria.com
Related White Papers
• Oracle Database In-Memory White Paper
• Oracle Database Sharding White Paper
• Oracle Multitentant White Paper
• Oracle Security White Paper
• Oracle High Availability White Paper
• Spatial And Graph analysis with Oracle Database 12c
• Application Development with Oracle Database 12c
Related Videos
• In-Memory YouTube Channel
• Oracle Database PM Channel
•Oracle Learning Library
•Database In-Memory and Oracle Multitenant
• Industry Experts Discuss Oracle Database In-Memory
• Software on Silicon
https://www.facebook.com/sqlmaria
Additional
Resources
Oracle Confidential – Internal 43
Notas del editor Add RAC lock domain bullet [massively parallel] Moved from Developers section Here are some additional resources. Join the conversation.