![Page 1: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/1.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 131
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.
![Page 2: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/2.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 132
![Page 3: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/3.jpg)
More than 12 More things about Oracle Database 12cThomas Kytehttp://asktom.oracle.com
![Page 4: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/4.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 134
#1 Data RedactionClick icon to add picture
![Page 5: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/5.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 135
Oracle Data Redaction
On-the-fly redaction based upon user name, IP address, application context, and other factors
Transparent, consistent enforcement in the database Minimal impact on production work loads
Redacting Sensitive Data for Applications
Credit Card #4451-2172-9841-43685106-6342-4881-52114891-3311-0090-5055
Policy
Call Centers
Decision Support Systems
Systems with PII, PHI, PCI data
![Page 6: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/6.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 136
#2 Temporal Validity Click icon to add picture
![Page 7: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/7.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 137
Temporal Validityops$tkyte%ORA12CR1> create table addresses 2 ( empno number, 3 addr_data varchar2(30), 4 start_date date, 5 end_date date, 6 period for valid(start_date,end_date) 7 ) 8 /
Table created.
![Page 8: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/8.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 138
Temporal Validityops$tkyte%ORA12CR1> insert into addresses (empno, addr_data, start_date, end_date ) 2 values ( 1234, '123 Main Street', trunc(sysdate-5), trunc(sysdate-2) );
1 row created.
ops$tkyte%ORA12CR1> insert into addresses (empno, addr_data, start_date, end_date ) 2 values ( 1234, '456 Fleet Street', trunc(sysdate-1), trunc(sysdate+1) );
1 row created.
ops$tkyte%ORA12CR1> insert into addresses (empno, addr_data, start_date, end_date ) 2 values ( 1234, '789 1st Ave', trunc(sysdate+2), null );
1 row created.
![Page 9: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/9.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 139
Temporal Validityops$tkyte%ORA12CR1> select * from addresses as of period for valid sysdate-3;
EMPNO ADDR_DATA START_DAT END_DATE---------- ------------------------------ --------- --------- 1234 123 Main Street 12-MAY-13 15-MAY-13
ops$tkyte%ORA12CR1> select * from addresses as of period for valid sysdate;
EMPNO ADDR_DATA START_DAT END_DATE---------- ------------------------------ --------- --------- 1234 456 Fleet Street 16-MAY-13 18-MAY-13
ops$tkyte%ORA12CR1> select * from addresses as of period for valid sysdate+3;
EMPNO ADDR_DATA START_DAT END_DATE---------- ------------------------------ --------- --------- 1234 789 1st Ave 19-MAY-13
![Page 10: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/10.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1310
#3 SQL Text Expansion Click icon to add picture
![Page 11: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/11.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1311
SQL Text Expansionops$tkyte%ORA12CR1> variable x clob
ops$tkyte%ORA12CR1> begin 2 dbms_utility.expand_sql_text 3 ( input_sql_text => 'select * from all_users', 4 output_sql_text => :x ); 5 end; 6 /
PL/SQL procedure successfully completed.
![Page 12: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/12.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1312
SQL Text Expansionops$tkyte%ORA12CR1> print x
X--------------------------------------------------------------------------------SELECT "A1"."USERNAME" "USERNAME","A1"."USER_ID" "USER_ID","A1"."CREATED" "CREATED","A1"."COMMON" "COMMON" FROM (SELECT "A4"."NAME" "USERNAME","A4"."USER#" "USER_ID","A4"."CTIME" "CREATED",DECODE(BITAND("A4"."SPARE1",128),128,'YES','NO') "COMMON" FROM "SYS"."USER$" "A4","SYS"."TS$" "A3","SYS"."TS$" "A2" WHERE "A4"."DATATS#"="A3"."TS#" AND "A4"."TEMPTS#"="A2"."TS#" AND "A4"."TYPE#"=1) "A1"
![Page 13: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/13.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1313
#4 Increased Size Limit for VARCHAR2, NVARCHAR2, and RAW Data Types
Click icon to add picture
![Page 14: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/14.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1314
32k Strings
Varchar2, NVarchar2 and Raw datatypes may be upto 32k in size, like in PL/SQL
Compatible = 12.0.0.0 or higher Max_String_Size init.ora set to EXTENDED (default is not this) Not supported in clustered and index organized tables Will be stored out of line (LOB) but work just like long strings to your
program
![Page 15: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/15.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1315
#5 Easy Top-N and pagination queries Click icon to add picture
![Page 16: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/16.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1316
Row Limiting Clause
![Page 17: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/17.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1317
Row Limiting Clause
c##tkyte%CDB1> create table t 2 as 3 select * from stage;Table created.
c##tkyte%CDB1> create index t_idx on t(owner,object_name);Index created.
c##tkyte%CDB1> set autotrace on explain
![Page 18: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/18.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1318
Row Limiting Clause
c##tkyte%CDB1> select /*+ first_rows(5) */ owner, object_name, object_id 2 from t 3 order by owner, object_name 4 FETCH FIRST 5 ROWS ONLY;…---------------------------------------------------------------------------------------| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |---------------------------------------------------------------------------------------| 0 | SELECT STATEMENT | | 5 | 1450 | 7 (0)| 00:00:01 ||* 1 | VIEW | | 5 | 1450 | 7 (0)| 00:00:01 ||* 2 | WINDOW NOSORT STOPKEY | | 5 | 180 | 7 (0)| 00:00:01 || 3 | TABLE ACCESS BY INDEX ROWID| T | 87310 | 3069K| 7 (0)| 00:00:01 || 4 | INDEX FULL SCAN | T_IDX | 5 | | 3 (0)| 00:00:01 |---------------------------------------------------------------------------------------
Predicate Information (identified by operation id):---------------------------------------------------
1 - filter("from$_subquery$_003"."rowlimit_$$_rownumber"<=5) 2 - filter(ROW_NUMBER() OVER ( ORDER BY "OWNER","OBJECT_NAME")<=5)
![Page 19: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/19.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1319
Row Limiting Clause
c##tkyte%CDB1> select /*+ first_rows(5) */ owner, object_name, object_id 2 from t 3 order by owner, object_name 4 OFFSET 5 ROWS FETCH NEXT 5 ROWS ONLY;…---------------------------------------------------------------------------------------| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |---------------------------------------------------------------------------------------| 0 | SELECT STATEMENT | | 5 | 1450 | 7 (0)| 00:00:01 ||* 1 | VIEW | | 5 | 1450 | 7 (0)| 00:00:01 ||* 2 | WINDOW NOSORT STOPKEY | | 5 | 180 | 7 (0)| 00:00:01 || 3 | TABLE ACCESS BY INDEX ROWID| T | 87310 | 3069K| 7 (0)| 00:00:01 || 4 | INDEX FULL SCAN | T_IDX | 5 | | 3 (0)| 00:00:01 |---------------------------------------------------------------------------------------Predicate Information (identified by operation id):---------------------------------------------------
1 - filter("from$_subquery$_003"."rowlimit_$$_rownumber"<=CASE WHEN (5>=0) THEN 5 ELSE 0 END +5 AND "from$_subquery$_003"."rowlimit_$$_rownumber">5) 2 - filter(ROW_NUMBER() OVER ( ORDER BY "OWNER","OBJECT_NAME")<=CASE WHEN (5>=0) THEN 5 ELSE 0 END +5)
![Page 20: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/20.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1320
Row Limiting Clause
c##tkyte%CDB1> select owner, object_name, object_id 2 from t 3 order by owner, object_name 4 FETCH NEXT 0.01 PERCENT ROWS ONLY;… 9 rows selected.------------------------------------------------------------------------------------| Id | Operation | Name | Rows | Bytes |TempSpc| Cost (%CPU)| Time |------------------------------------------------------------------------------------| 0 | SELECT STATEMENT | | 87310 | 25M| | 1230 (1)| 00:00:01 ||* 1 | VIEW | | 87310 | 25M| | 1230 (1)| 00:00:01 || 2 | WINDOW SORT | | 87310 | 3069K| 4120K| 1230 (1)| 00:00:01 || 3 | TABLE ACCESS FULL| T | 87310 | 3069K| | 401 (1)| 00:00:01 |------------------------------------------------------------------------------------
Predicate Information (identified by operation id):---------------------------------------------------
1 - filter("from$_subquery$_003"."rowlimit_$$_rownumber"<=CEIL("from$_sub query$_003"."rowlimit_$$_total"*0.01/100))
![Page 21: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/21.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1321
#6 Temporary UNDO Click icon to add picture
![Page 22: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/22.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1322
Temporary UNDO
UNDO for temporary tables can now be managed in TEMP Reduce the amount of UNDO in the UNDO tablespace
– Better for retention periods for “real” data Reduce the size of the redo generated Allows for DML on temporary tables in Active Data Guard
ALTER SYSTEM/SESSION SET TEMP_UNDO_ENABLED=true|false
![Page 23: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/23.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1323
#7 Online Operations Click icon to add picture
![Page 24: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/24.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1324
More Online Operations
DROP INDEX ONLINE DROP CONSTRAINT ONLINE SET UNUSED COLUMN ONLINE ALTER INDEX UNUSABLE ONLINE ALTER INDEX [VISIBLE | INVISIBLE]
![Page 25: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/25.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1325
#8 Data Optimization Click icon to add picture
![Page 26: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/26.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1326
ILM: Hot/Cold Data ClassificationEnhanced Insight into Data Usage: “heat map”
Recently inserted, actively updated Infrequently updated,
Frequently Queried
Retained for long term analytics and compliance with corporate policies and regulations
ACTIVEFREQUENTACCESS
DORMANT
• Block and Segment level statistics on last Read and last Update
![Page 27: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/27.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1327
ILM: Automatic Compression & TieringUsage based and custom compression and tiering
ALTER TABLE ordersILM ADD CompressionPolicy COMPRESS Partitions for QueryAFTER 90 days from creation;
ALTER TABLE sales ILM ADD MovePolicyTIER Partitions TO ‘Archive_TBS’ ON OrdersClosedPolicy;
![Page 28: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/28.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1328
#9 Implicit Result Sets Click icon to add picture
![Page 29: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/29.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1329
Implicit Result Sets
Cursor variables have been around since 7.2 Used to return result sets explicitly Some other databases return them implicitly Causes migration headaches
![Page 30: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/30.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1330
Implicit Result Sets
Two new API calls:– PROCEDURE RETURN_RESULT
(rc IN OUT SYS_REFCURSOR, to_client IN BOOLEAN DEFAULT TRUE); – PROCEDURE RETURN_RESULT
(rc IN OUT INTEGER, to_client IN BOOLEAN DEFAULT TRUE);
– TO_CLIENT => true, return to client layer– TO_CLIENT=> false, return to invoker, immediate caller
![Page 31: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/31.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1331
Implicit Result Setsops$tkyte%ORA12CR1> declare 2 c sys_refcursor; 3 begin 4 open c for 5 select * 6 from dept; 7 8 dbms_sql.return_result(c); 9 end; 10 /PL/SQL procedure successfully completed.
ResultSet #1
DEPTNO DNAME LOC---------- -------------- ------------- 10 ACCOUNTING NEW YORK 20 RESEARCH DALLAS 30 SALES CHICAGO 40 OPERATIONS BOSTON
![Page 32: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/32.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1332
Implicit Result Sets
Two new API calls:– PROCEDURE GET_NEXT_RESULT
(c IN INTEGER, rc OUT SYS_REFCURSOR); – PROCEDURE GET_NEXT_RESULT
(c IN INTEGER, rc OUT INTEGER);
– For PL/SQL processing
![Page 33: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/33.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1333
Implicit Result SetsConnection conn = DriverManager.getConnection(jdbcURL, user, password);try { Statement stmt = conn.createStatement (); stmt.executeQuery ( “begin foo; end;” ); while (stmt.getMoreResults()) { ResultSet rs = stmt.getResultSet(); System.out.println("ResultSet"); while (rs.next()) { /* get results */ } }}
![Page 34: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/34.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1334
#10 Pluggable Databases Click icon to add picture
![Page 35: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/35.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1335
Oracle Database ArchitectureRequires memory, processes and database files
ERP
Database Files
BackgroundProcesses
MemoryUtilized
RAM
![Page 36: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/36.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1336
Oracle Database ArchitectureSeparate memory and processes required for each database
ERP
Database Files
MemoryUtilized
BackgroundProcesses
RAM
CRM
Database Files
BackgroundProcesses
MemoryUtilized
RAM
DW
Database Files
BackgroundProcesses
MemoryUtilized
RAM
![Page 37: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/37.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1337
New Pluggable Database Architecture
ERP
Database Files
MemoryUtilized
BackgroundProcesses
CRM
Database Files
MemoryUtilized
BackgroundProcesses
RAM
DW
Database Files
MemoryUtilized
BackgroundProcesses
RAMRAM
Memory and processes required at container level only
![Page 38: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/38.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1338
New Pluggable Database ArchitectureMemory and processes required at container level only
RAM ERP CRM DW
BackgroundProcesses
MemoryUtilized Container Database
![Page 39: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/39.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 1339
#11 Database In-Memory Click icon to add picture
![Page 40: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/40.jpg)
40Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.40
Flip FlopsCoreICs on board
DIMMS
SIMMs
SSD
Flash
Small Drives
Floppy
Big Drives
1993 ~$25/mb; $26,214,400/tb
2014 ~$0.007/mb; $7,645/tb
![Page 41: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/41.jpg)
41Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.
Until Now You Choose One Format and Suffer Tradeoffs
Optimizing Transaction and Query Performance Row Format Databases versus Column Format Databases
Row
Transactions run faster on row format– Fast for processing few rows, many
columns– Example: Insert or query a sales order
Column
Analytics run faster on column format– Fast for processing few columns, many
rows– Example: Report on sales totals by state
ORDER
SALES
SALES
STATE
41
![Page 42: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/42.jpg)
42Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.
OLTP is Slowed Down by Analytic Indexes
Table1 to 3OLTP
Indexes
5 to 15 AnalyticsIndexes
Most Indexes in mixed-use OLTP (e.g. ERP) databases are only used for analytics
Indexes work well for known access patterns both in-memory and on-disk
But every change to the table requires changing all analytic indexes – Slow!
42
![Page 43: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/43.jpg)
43Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.
Column Store Replaces Analytic Indexes
Table1 to 3OLTP
Indexes
In-Memory Column Store replaces analytic indexes for tables that fit in memory
Removes analytic index overhead on changes
Both predefined and ad-hoc analytic queries run fast Less tuning & admin needed
OLTP & batch often run 2x or more faster
In-Memory Column Store
43
![Page 44: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/44.jpg)
44Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.
Oracle In-Memory is Trivial to Deploy
1. Configure Memory Capacity inmemory_size = XXXX GB
2. Configure tables or partitions to be in memory alter table | partition … inmemory;
3. Later Drop analytic indexes to speed up OLTP
44
![Page 45: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/45.jpg)
45Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle InternalCopyright © 2013, Oracle and/or its affiliates. All rights reserved.
Oracle In-Memory is Transparent to ApplicationsExisting Applications Just Run Faster
Full Functionality - No restrictions on SQLTrivial to Implement - No migration of data or change of productFully Compatible - All existing applications run unchangedDB as a Service Ready - Oracle Multitenant in-memory
Uniquely Achieves All In-Memory Benefits With No Application Changes
And All Other Apps that Support Oracle Database
45
![Page 46: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/46.jpg)
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12 of the corporate presentation template46
#12 A few more 12.1.0.2 bits and pieces
Insert Picture Here
![Page 47: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/47.jpg)
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12 of the corporate presentation template47
Advanced Index Compression
Compresses indexes to reduce their overall storage requirement– Less space required on disk– Better use of the database cache
Indexes are compressed by between 1 – 3 times Little or no discernable overhead Compression Advisor extended to describe the possible benefits of this
feature
![Page 48: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/48.jpg)
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12 of the corporate presentation template48
Attribute Clustering
Ordering of data so that rows are stored near one another based on column values
Improved query performance and concurrency– Reduced physical data access trough smart IO– Significant IO reduction for highly selective operations
Optimized space utilization– Less need for indexes– Improved compression ratios through data clustering
Full application transparency– Any application will benefit
Benefits :
![Page 49: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/49.jpg)
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12 of the corporate presentation template49
Zone Maps
Persisted storage index
Stores minimum and maximum of specified columns Analogous to a coarse index structure
– Much more compact than an index– Zone maps filter out what you don’t need, indexes find what you do need
Significant performance benefits with complete application transparency– IO reduction for table scans with predicates on the table itself or even a
joined table using join zone maps (a.k.a. “hierarchical zone map”) Benefits are most significant with ordered data
– Used in combination with attribute clustering or data that is naturally ordered
![Page 50: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/50.jpg)
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12 of the corporate presentation template50
50
Approximate Count Distinct
Not every query requires a completely accurate result– “How many distinct individuals visited our website last week?”
New SQL function for approximate results for COUNT DISTINCT aggregates– APPROX_COUNT_DISTINCT()
Approximate results can be significantly faster and use less resources than exact calculations
– 5x to 50x ++ times faster (depending upon number of distinct values and complexity of SQL)
– Accuracy > 97% (with 95% confidence)
![Page 51: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/51.jpg)
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12 of the corporate presentation template51
Graphic Section Divider
![Page 52: More than 12 More things about Oracle Database 12c](https://reader034.vdocuments.site/reader034/viewer/2022042906/58a91f9c1a28ab6f508b5223/html5/thumbnails/52.jpg)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Confidential – Oracle Highly Restricted
The preceding 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.