Marco Gralike & Lucas Jellema 15th July 2013 An overview of Oracle Database 12c (12.1)
Jul 13, 2015
Marco Gralike & Lucas Jellema
15th July 2013
An overview of Oracle Database 12c (12.1)
Outline
• History, customer demand, market trends
• The Fourth Dimension: Time
• Availability: Application continuity and more
• Data masking (data redaction)
• Security
• Big Data: R and SQL Pattern Matching
• Multi Tenancy
• For cloud environments
• For efficient administration
• Automatic data optimization (& ILM)
• Administration Tooling: Database Express
• Migration to 12c
• Goodies
Database release history
2009 2012 2013 2014
12c R1
2010 2011
11g R2
11gR1: August 2007
10gR2: September 2005
10gR1: January 2004
September
2009
June
2013
Version 6 July 1988
• New Architecture • Performance (first SMP)
• Availability
• Parallel Server
• TPO
• PL/SQL
• V6 Lays Architectural Groundwork for the Future
– This was a rewrite of the entire database
Oracle Database Innovation
Audit Vault
Database Vault Grid Computing
Self Managing Database
XML Database
Oracle Data Guard
Real Application Clusters
Flashback Query
Virtual Private Database
Built in Java VM
Partitioning Support
Built in Messaging
Object Relational Support
Multimedia Support
Data Warehousing Optimizations
Parallel Operations
Distributed SQL & Transaction Support
Cluster and MPP Support
Multi-version Read Consistency
Client/Server Support
Platform Portability
Commercial SQL Implementation
1977 2007
30 years of
sustained
innovation …
… continuing with
Oracle Database 12c
The first major architecture change since 1988
Multitenant architecture
DBA is resource intensive
Managing dozens of databases means…
– Installing
– Configuring
– Securing
– Monitoring
– Patching
– Upgrading
– Backing up
• many database instances on potentially a large number of machines
• Using dedicated resources for each individual database instance
– 20 processes
– Memory for SGA
– Disk space for generic objects such as most of the SYS schema
Work in progress….
The Uber Database
C is for…
Complete
Complementary
Cloud
Consolidation
Container
Crowd
Control
Core
Central
Oracle Database Architecture
Multi Version Read Consistency
Rollback, Undo, Concurrency, ORA-1555
Flashback
• Introduced in 9i
• Based on UNDO
• Initially only for recovery
• As of 11g – Total Recall option with
Flashback Data Archive
– Controlled history keeping
• Look back into history
– Query trends (version history)
– Difference reporting
– Audit trails (Replace journaling tables) • Require trick for transaction history: WHO?
• Also: when is the start of history?
• By the way: Flashback Data Archive requires EE & Advanced
Compression database option
The Fourth Dimension: Time
In Oracle Database 12c R1:
• User-created Flashback Data Archive contents
• Import and Export of History
• Tracking of transaction (session) context
• Flashback Data Archive available in every edition of the database
The Fourth Dimension: Time Part 2
• Support for SQL 2011 Temporal Validity
• Record state associated with business start and end date (time)
– Instead of Transaction date (time)
• Tables can be associated with Periods – based on a pair of columns
• Flashback queries against these tables can query for valid records at a certain point in time
• Not just looking back in time but also looking ahead!
SELECT *
FROM EMP AS OF PERIOD FOR user_time
TO_TIMESTAMP('01-DEC-2013 09.00.00 AM')
Availability
• Ever more DDL operations can be performed without taking a lock
– Metadata-only Defaults for NULL columns
– Invisible Indexes
– Online move of a partition
– Cascade Truncate
– DROP INDEX ONLINE, DROP CONSTRAINT ONLINE, SET UNUSED COLUMN
ONLINE, ALTER INDEX UNUSABLE ONLINE, ALTER INDEX [VISIBLE | INVISIBLE]
• Reduced limitations with Edition Based Redefinition
– No reason not to use EBR for PL/SQL and Views in order to achieve zero-down time
application upgrade
• Parallel Upgrade
• Transaction Guard
• Application Continuity
Transaction Outcome Unknown
Application Continuity
• Outages cause in-flight work to be lost, and leave users not knowing what happened
• Often leads to
– users seeing errors
– data re-entry
– duplicate submissions
– rebooting mid-tiers
Before:
Transaction Guard
• Known outcome for every transaction
• At-most-once transaction execution
• Used by Application Continuity
• Available for JDBC-thin, OCI, OCCI, ODP.net
• Without Transaction Guard, retries can cause logical corruption
Application Continuity
• Improves end user experience
• Improves developer productivity
• Application transparent when using Oracle stack
• Enabled with WebLogic Server, Peoplesoft, Fusion Apps, Siebel(possibly)
Data Masking
• Gartner reports that: data masking should be mandatory for enterprises using copies of sensitive production data for application development, analytics or training.
• They also believe the market is expanding into production and unstructured data protection.
Data Redaction
• At runtime, you can optionally have the query results modified to reset/scramble/randomize sensitive data
– Through ‘data redaction’ policies associated with tables and view and applied at
query time
• Because the data is masked in real-time, Data Redaction is well suited to environments in which data is constantly changing.
• You can create the Data Redaction policies in one central location and easily manage them from there.
SQL
engine SQL
POLICY
POLICY
RESULTS
Security
• PL/SQL security refinement
– Whitelist to specify which program units may invoke a prcoedure
– Roles attached to invoker rights program units
– Prevent automatic inheritance of invoker’s privileges in invoker rights unit
• View with invoker rights
• Digest Authentication for DBMS_EPG
• Real Application Security - a database authorization model that enables end-to-end security for multitier applications
– privilege delegation, role-based constraints, time-based access control, code-
based security, multi-level authorization, negative grants, authorization on user
interface artifacts, access constraints on relational data, and application users
auditing
• Run-Time Privilege Analysis (Privilege Capture)
• Unified Context-Based Database Audit Architecture
Big Data
• Spatial and Semantic Query are merged into Spatial and
Graph
• Oracle Text is enhanced in many ways
• Enterprise R is further extended
• SQL Pattern Matching has been introduced
– Inspired by CQL
– Look for patterns in subsequent rows in the result set using regular
expressions
(go beyond Analytic Functions)
Other Database Development enhancements
• SQL evolution
– APPLY, Top-N and Pagination
• SQL PL/SQL integration
– WITH, UDF, Call Stack API
• Improved Defaults • SQL Text Expansion • Improved JDBC integration
A glimpse into the future…
Marco Gralike & Lucas Jellema
15th July 2013
An overview of Oracle Database 12c (12.1)
Multitenant Architecture
Multitenant Architecture
Multitenant Architecture
Multitenant Architecture
Multitenant Architecture
Multitenant Architecture
Multitenant Architecture
35
Common Data Dictionary
36
Oracle Data and User Data
37
Horizontally Partitioned
38
Multitenant Architecture
39
Multitenant Scalability
0
0.5
1
1.5
2
2.5
3
CRM HCM ERP BI
GB
Pluggable Database
MEMORY
0
0.5
1
1.5
2
2.5
3
CRM HCM ERP BI DW
GB
Pluggable Database
MEMORY
Only small increments in memory as additional PDBs are added
0
0.5
1
1.5
2
2.5
3
CRM HCM ERP
GB
MEMORY
40
Files in the CDB
41
Fast Provisioning
42
Simplified Patching
43
Fast Cloning a PDB
PDBs can be cloned from
remote CDBs
PDBs can be cloned from
within the same CDB
44
Cloning a PDB
45
Upgrades
46
Multitenant Agility
GOLD
SILVER
BRONZE
RAC, Data Guard, Daily Incrementals
Data Guard, Daily Incrementals
Weekly Full Backups
47
Database as a Service
RAC, Data Guard,
Daily Incrementals
Data Guard
Daily Incrementals
✔
GOLD
SILVER
BRONZE Weekly Full
Backups
✔
48
Notes
• Database National Characterset
• Database Option License (25 juni 2013)
– 17,500$ per CPU
– 350$ per Named User Plus
• No extra cost for: 1 CDB + 1 PDB
• CDB ORA-00600 / ORA-07445
Automatic Data Optimization
50
Heat Map
• Automatically tracks usage information at the row and segment levels
• ALTER SYSTEM SET HEAT_MAP = ON | OFF;
• Package DBMS_HEAT_MAP
• V$HEAT_MAP_SEGMENT Real-time Segment Access Information
• Views:
ALL/DBA/USER _HEAT_MAP_SEGMENT
ALL/DBA/USER _HEAT_MAP_SEQ_HISTOGRAM
DBA_HEATMAP_TOP_OBJECTS
Top 1000 objects
DBA_HEATMAP_TOP_TABLESPACES
Top 100 Tablespaces
51
Automatic Data Optimization
• Automate compression or movement of data
• Via CREATE and ALTER TABLE SQL statements
• Heat Map must be enabled
• Policy based levels:
– Row
– Segment
– Tablespace
• Default Compression Mappings:
– COMPRESS ADVANCED on a heap table maps to standard compression for indexes
and LOW for LOB segments.
– COMPRESS FOR QUERY LOW/QUERY HIGH on a heap table maps to standard
compression for indexes and MEDIUM for LOB segments.
– COMPRESS FOR ARCHIVE LOW/ARCHIVE HIGH on a heap table maps to
standard compression for indexes and HIGH for LOB segments.
52
Automatic Data Optimization
XML DB
54
XML DB
• XQuery Update
– Replaces all “old” update methods
• XQuery Full Text
– Full Text Index
– XML (Schema) Aware
• Compatibility across the Board
– Dataguard
– GoldenGate
– DataPump
– DBFS
• Parallel XMLType
Database Express
56
Database Express
• “Replacement” for DB Console
• Adobe Flash
• Subset features OEM 12c
• Build-in / footprint 20MB
• Limited regarding Management
• Extended regarding Performance insight
• Diagnostic & Tuning Pack
57
Database Express
58
New: Real Time ADDM
Stuff you always wanted…
Goodies you always wanted…?
• EXPORT BY VIEW
• ALTER DATABASE MOVE datafile ONLINE!
• Multiple indexes on the SAME column
– can be used when…
• B-Tree versus Bitmap
• Different partitioning strategies
• Unique versus nonunique
• Privilege Capture…
Privilege Capture
• DBMS_PRIVILEGE_CAPTURE
– CREATE_CAPTURE
– ENABLE_CAPTURE
– DISABLE_CAPTURE
– GENERATE_RESULT
– DROP_CAPTURE
• Role needed “CAPTURE_ADMIN”
• DBMS_PRIVILEGE_CAPTURE.GENERATE_RESULT populates
– DBA_USED_xxx
– DBA_USED_xxx_PATH
– DBA_UNUSED_xxx
– DBA_UNUSED_xxx_PATH
62