SlideShare a Scribd company logo
1 of 72
11 things about Oracle Database 11g Release 2 Thomas Kyte http://asktom.oracle.com/
Do it yourself  Parallelism
Incrementally modify a table in parallel ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Incrementally modify a table in parallel ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Incrementally modify a table in parallel ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Incrementally modify a table in parallel ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Incrementally modify a table in parallel ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Incrementally modify a table in parallel ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Incrementally modify a table in parallel ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Incrementally modify a table in parallel ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Analytics are   the coolest thing  to happen to SQL since the keyword SELECT
More Analytics! ,[object Object],[object Object],[object Object],[object Object]
Analytics Rock and Roll ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],DEPTNO ENAMES ---------- -------------------- 10 CLARK; KING; MILLER 20 ADAMS; FORD; JONES; SCOTT; SMITH   30 ALLEN; BLAKE; JAMES; MARTIN; TURNER; WARD
Analytics Rock and Roll ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Analytics Rock and Roll ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Analytics Rock and Roll ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],DEPTNO ENAME  RN 1st e 3rd ena last en ---------- -------- -- ----- ------- ------- 10 CLARK  1 CLARK  MILLER KING  2 CLARK  MILLER MILLER  3 CLARK MILLER  MILLER 20 ADAMS  1 ADAMS  SMITH FORD  2 ADAMS  SMITH JONES  3 ADAMS JONES  SMITH SCOTT  4 ADAMS JONES  SMITH SMITH  5 ADAMS JONES  SMITH 30 ALLEN  1 ALLEN  WARD BLAKE  2 ALLEN  WARD JAMES  3 ALLEN JAMES  WARD MARTIN  4 ALLEN JAMES  WARD TURNER  5 ALLEN JAMES  WARD WARD  6 ALLEN JAMES  WARD
Execute  on a directory
External Tables can run code now ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
EXECUTE and PREPROCESSOR ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
EXECUTE and PREPROCESSOR ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
EXECUTE and PREPROCESSOR ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
EXECUTE and PREPROCESSOR, interesting idea… ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
EXECUTE and PREPROCESSOR, interesting idea… ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Recursive  Subquery Factoring
Recursive Subquery Factoring ,[object Object],[object Object],[object Object],[object Object]
Recursive Subquery Factoring ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Recursive Subquery Factoring ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Recursive Subquery Factoring ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Improved  Time Travel
Improved Time Travel ,[object Object],[object Object],[object Object],[object Object],[object Object]
How Does Flashback Data Archive Work? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Oracle Database 11g Release Total Recall Schema Evolution Support Drop Column Add Column time Flashback Version Query       Add Column
You’ve got  Mail
File Watchers ,[object Object],[object Object],[object Object]
File Watchers ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
File Watchers ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
File Watchers ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
File Watchers ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
File Watchers ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
File Watchers ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
File Watchers ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Deferred  Segment Creation
Deferred Segment Creation ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Deferred Segment Creation ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],SQL> select segment_name, 2  extent_id, 3  bytes 4  from user_extents 5  order by segment_name; SEGMENT_NAM  EXTENT_ID  BYTES ----------- ---------- ---------- T1  0  65536 T1_PK  0  65536 T1_Y  0  65536 T1_Z_LOB  0  65536 T1_Z_LOBIDX  0  65536
Deferred Segment Creation ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],SQL> select segment_name, 2  extent_id, 3  bytes 4  from user_extents 5  order by segment_name; SEGMENT_NAM  EXTENT_ID  BYTES ----------- ---------- ---------- T1  0  65536 T1_PK  0  65536 T1_Y  0  65536 T1_Z_LOB  0  65536 T1_Z_LOBIDX  0  65536 No Change!
Deferred Segment Creation ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Flash  Cache
Oracle Database 11g Release 2 Reduce I/O bandwidth requirement with Flash Cache ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Flash Cache How it works 120 GB  Flash Cache 16 GB  SGA Memory 360 GB Magnetic Disks ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Extended Buffer Cache
Flash Cache How it works 120 GB  Flash Cache 16 GB  SGA Memory Hot Data 1.  Blocks read into buffer cache 2.  Dirty blocks flushed to disk 360 GB Magnetic Disks Cold Data Extended Buffer Cache
Flash Cache How it works Extended Buffer Cache 120 GB  Flash Cache 16 GB  SGA Memory Hot Data Warm Data 1.  Blocks read into buffer cache 3.  Clean blocks moved to Flash Cache based on LRU* (once SGA is full) 2.  Dirty blocks flushed to disk 360 GB Magnetic Disks Cold Data * Headers for Flash Cached blocks kept in SGA
Flash Cache Extended Buffer Cache 120 GB  Flash Cache 16 GB  SGA Memory Hot Data Warm Data 1.  Blocks read into buffer cache 3.  Clean blocks moved to Flash Cache based on LRU* 2.  Dirty blocks flushed to disk 4.  User Process reads blocks from SGA (copied from Flash Cache if not in SGA) 360 GB Magnetic Disks Cold Data * Headers for Flash Cached blocks kept in SGA
Parallel  Improved
Automated Degree of Parallelism How it works SQL statement Statement is hard parsed And optimizer determines the execution plan Statement executes serially Statement executes in parallel Optimizer determines ideal DOP If estimated time greater than threshold Actual DOP = MIN(default DOP, ideal DOP) If estimated time less than threshold PARALLEL_MIN_TIME_THRESHOLD
Parallel Statement Queuing How it works SQL statements Statement is parsed and Oracle automatically determines DOP If enough parallel servers available execute immediately If not enough parallel servers available queue FIFO Queue 128 16 32 64 8 When the required number of parallel servers become available the first stmt on the queue is dequeued and executed  128 16 32 64
In-Memory Parallel Execution How it works SQL statement Determine the size of the table being looked at Fragments of Table are read into each node’s buffer cache Read into the buffer cache on any node Table is extremely small  Always use direct read from disk Table is a good candidate for In-Memory Parallel Execution Table is extremely Large Only parallel server on the same RAC node will access each fragment
Edition-based  Redefinition
Edition-based  Redefinition! Yes, this is here twice But only because It is the  killer feature Of Oracle Database 11g Release 2 It is worth 2 features
Online Application Upgrade Edition-based redefinition ,[object Object],[object Object],[object Object],[object Object]
Online Application Upgrade Edition-based redefinition ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Online Application Upgrade Edition-based redefinition ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Online Application Upgrade Edition-based redefinition ,[object Object],[object Object],[object Object]
Online Application Upgrade Edition-based redefinition ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Online Application Upgrade Edition-based redefinition ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Online Application Upgrade Edition-based redefinition ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Online Application Upgrade Edition-based redefinition ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Online Application Upgrade Edition-based redefinition ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Online Application Upgrade Edition-based redefinition ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
<Insert Picture Here> How to get there
What are my upgrade paths? Predictable performance post-upgrade    10.2.0.2    11.1.0.6 10.1.0.5 9.2.0.8 11.2 SQL Plan Management Automated SQL tuning
For More Information search.oracle.com or oracle.com
 

More Related Content

What's hot

Anatomy of a PHP Request ( UTOSC 2010 )
Anatomy of a PHP Request ( UTOSC 2010 )Anatomy of a PHP Request ( UTOSC 2010 )
Anatomy of a PHP Request ( UTOSC 2010 )
Joseph Scott
 
GHCソースコード読みのススメ
GHCソースコード読みのススメGHCソースコード読みのススメ
GHCソースコード読みのススメ
Kiwamu Okabe
 

What's hot (20)

Osol Pgsql
Osol PgsqlOsol Pgsql
Osol Pgsql
 
Tests unitaires pour PostgreSQL avec pgTap
Tests unitaires pour PostgreSQL avec pgTapTests unitaires pour PostgreSQL avec pgTap
Tests unitaires pour PostgreSQL avec pgTap
 
Automating Disaster Recovery PostgreSQL
Automating Disaster Recovery PostgreSQLAutomating Disaster Recovery PostgreSQL
Automating Disaster Recovery PostgreSQL
 
PostgreSQL: Joining 1 million tables
PostgreSQL: Joining 1 million tablesPostgreSQL: Joining 1 million tables
PostgreSQL: Joining 1 million tables
 
Crack.ba
Crack.baCrack.ba
Crack.ba
 
Debugging: Rules & Tools
Debugging: Rules & ToolsDebugging: Rules & Tools
Debugging: Rules & Tools
 
Scripts related to temp tablespace
Scripts related to temp tablespaceScripts related to temp tablespace
Scripts related to temp tablespace
 
Anatomy of a PHP Request ( UTOSC 2010 )
Anatomy of a PHP Request ( UTOSC 2010 )Anatomy of a PHP Request ( UTOSC 2010 )
Anatomy of a PHP Request ( UTOSC 2010 )
 
Oracle postgre sql-mirgration-top-10-mistakes
Oracle postgre sql-mirgration-top-10-mistakesOracle postgre sql-mirgration-top-10-mistakes
Oracle postgre sql-mirgration-top-10-mistakes
 
PostgreSQL Administration for System Administrators
PostgreSQL Administration for System AdministratorsPostgreSQL Administration for System Administrators
PostgreSQL Administration for System Administrators
 
Bash Script Disk Space Utilization Report and EMail
Bash Script Disk Space Utilization Report and EMailBash Script Disk Space Utilization Report and EMail
Bash Script Disk Space Utilization Report and EMail
 
C99
C99C99
C99
 
Pdxpugday2010 pg90
Pdxpugday2010 pg90Pdxpugday2010 pg90
Pdxpugday2010 pg90
 
Python sqlite3 - flask
Python   sqlite3 - flaskPython   sqlite3 - flask
Python sqlite3 - flask
 
File Space Usage Information and EMail Report - Shell Script
File Space Usage Information and EMail Report - Shell ScriptFile Space Usage Information and EMail Report - Shell Script
File Space Usage Information and EMail Report - Shell Script
 
Walbouncer: Filtering PostgreSQL transaction log
Walbouncer: Filtering PostgreSQL transaction logWalbouncer: Filtering PostgreSQL transaction log
Walbouncer: Filtering PostgreSQL transaction log
 
[Pgday.Seoul 2017] 3. PostgreSQL WAL Buffers, Clog Buffers Deep Dive - 이근오
[Pgday.Seoul 2017] 3. PostgreSQL WAL Buffers, Clog Buffers Deep Dive - 이근오[Pgday.Seoul 2017] 3. PostgreSQL WAL Buffers, Clog Buffers Deep Dive - 이근오
[Pgday.Seoul 2017] 3. PostgreSQL WAL Buffers, Clog Buffers Deep Dive - 이근오
 
Webinar PostgreSQL 9.4
Webinar PostgreSQL 9.4Webinar PostgreSQL 9.4
Webinar PostgreSQL 9.4
 
PGDay.Amsterdam 2018 - Stefan Fercot - Save your data with pgBackRest
PGDay.Amsterdam 2018 - Stefan Fercot - Save your data with pgBackRestPGDay.Amsterdam 2018 - Stefan Fercot - Save your data with pgBackRest
PGDay.Amsterdam 2018 - Stefan Fercot - Save your data with pgBackRest
 
GHCソースコード読みのススメ
GHCソースコード読みのススメGHCソースコード読みのススメ
GHCソースコード読みのススメ
 

Similar to 11 Things About 11gr2

11thingsabout11g 12659705398222 Phpapp01
11thingsabout11g 12659705398222 Phpapp0111thingsabout11g 12659705398222 Phpapp01
11thingsabout11g 12659705398222 Phpapp01
Karam Abuataya
 
Sydney Oracle Meetup - execution plans
Sydney Oracle Meetup - execution plansSydney Oracle Meetup - execution plans
Sydney Oracle Meetup - execution plans
paulguerin
 
Tips on how to improve the performance of your custom modules for high volume...
Tips on how to improve the performance of your custom modules for high volume...Tips on how to improve the performance of your custom modules for high volume...
Tips on how to improve the performance of your custom modules for high volume...
Odoo
 
Mysqlppt
MysqlpptMysqlppt
Mysqlppt
Reka
 
PostgreSQL 8.4 TriLUG 2009-11-12
PostgreSQL 8.4 TriLUG 2009-11-12PostgreSQL 8.4 TriLUG 2009-11-12
PostgreSQL 8.4 TriLUG 2009-11-12
Andrew Dunstan
 
perl usage at database applications
perl usage at database applicationsperl usage at database applications
perl usage at database applications
Joe Jiang
 
Eff Plsql
Eff PlsqlEff Plsql
Eff Plsql
afa reg
 

Similar to 11 Things About 11gr2 (20)

11 things about 11gr2
11 things about 11gr211 things about 11gr2
11 things about 11gr2
 
11thingsabout11g 12659705398222 Phpapp01
11thingsabout11g 12659705398222 Phpapp0111thingsabout11g 12659705398222 Phpapp01
11thingsabout11g 12659705398222 Phpapp01
 
11 Things About11g
11 Things About11g11 Things About11g
11 Things About11g
 
ETL Patterns with Postgres
ETL Patterns with PostgresETL Patterns with Postgres
ETL Patterns with Postgres
 
Sydney Oracle Meetup - execution plans
Sydney Oracle Meetup - execution plansSydney Oracle Meetup - execution plans
Sydney Oracle Meetup - execution plans
 
Tips on how to improve the performance of your custom modules for high volume...
Tips on how to improve the performance of your custom modules for high volume...Tips on how to improve the performance of your custom modules for high volume...
Tips on how to improve the performance of your custom modules for high volume...
 
Mysqlppt
MysqlpptMysqlppt
Mysqlppt
 
Notes for SQLite3 Usage
Notes for SQLite3 UsageNotes for SQLite3 Usage
Notes for SQLite3 Usage
 
PostgreSQL 8.4 TriLUG 2009-11-12
PostgreSQL 8.4 TriLUG 2009-11-12PostgreSQL 8.4 TriLUG 2009-11-12
PostgreSQL 8.4 TriLUG 2009-11-12
 
Memory Manglement in Raku
Memory Manglement in RakuMemory Manglement in Raku
Memory Manglement in Raku
 
Aplicações 10x a 100x mais rápida com o postgre sql
Aplicações 10x a 100x mais rápida com o postgre sqlAplicações 10x a 100x mais rápida com o postgre sql
Aplicações 10x a 100x mais rápida com o postgre sql
 
Tony jambu (obscure) tools of the trade for tuning oracle sq ls
Tony jambu   (obscure) tools of the trade for tuning oracle sq lsTony jambu   (obscure) tools of the trade for tuning oracle sq ls
Tony jambu (obscure) tools of the trade for tuning oracle sq ls
 
pg_proctab: Accessing System Stats in PostgreSQL
pg_proctab: Accessing System Stats in PostgreSQLpg_proctab: Accessing System Stats in PostgreSQL
pg_proctab: Accessing System Stats in PostgreSQL
 
pg_proctab: Accessing System Stats in PostgreSQL
pg_proctab: Accessing System Stats in PostgreSQLpg_proctab: Accessing System Stats in PostgreSQL
pg_proctab: Accessing System Stats in PostgreSQL
 
Les09 Manipulating Data
Les09 Manipulating DataLes09 Manipulating Data
Les09 Manipulating Data
 
Python And GIS - Beyond Modelbuilder And Pythonwin
Python And GIS - Beyond Modelbuilder And PythonwinPython And GIS - Beyond Modelbuilder And Pythonwin
Python And GIS - Beyond Modelbuilder And Pythonwin
 
Rooted 2010 ppp
Rooted 2010 pppRooted 2010 ppp
Rooted 2010 ppp
 
perl usage at database applications
perl usage at database applicationsperl usage at database applications
perl usage at database applications
 
Eff Plsql
Eff PlsqlEff Plsql
Eff Plsql
 
Improving the performance of Odoo deployments
Improving the performance of Odoo deploymentsImproving the performance of Odoo deployments
Improving the performance of Odoo deployments
 

Recently uploaded

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 

11 Things About 11gr2

  • 1. 11 things about Oracle Database 11g Release 2 Thomas Kyte http://asktom.oracle.com/
  • 2. Do it yourself Parallelism
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11. Analytics are the coolest thing to happen to SQL since the keyword SELECT
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17. Execute on a directory
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24. Recursive Subquery Factoring
  • 25.
  • 26.
  • 27.
  • 28.
  • 29. Improved Time Travel
  • 30.
  • 31.
  • 32.
  • 33. You’ve got Mail
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42. Deferred Segment Creation
  • 43.
  • 44.
  • 45.
  • 46.
  • 48.
  • 49.
  • 50. Flash Cache How it works 120 GB Flash Cache 16 GB SGA Memory Hot Data 1. Blocks read into buffer cache 2. Dirty blocks flushed to disk 360 GB Magnetic Disks Cold Data Extended Buffer Cache
  • 51. Flash Cache How it works Extended Buffer Cache 120 GB Flash Cache 16 GB SGA Memory Hot Data Warm Data 1. Blocks read into buffer cache 3. Clean blocks moved to Flash Cache based on LRU* (once SGA is full) 2. Dirty blocks flushed to disk 360 GB Magnetic Disks Cold Data * Headers for Flash Cached blocks kept in SGA
  • 52. Flash Cache Extended Buffer Cache 120 GB Flash Cache 16 GB SGA Memory Hot Data Warm Data 1. Blocks read into buffer cache 3. Clean blocks moved to Flash Cache based on LRU* 2. Dirty blocks flushed to disk 4. User Process reads blocks from SGA (copied from Flash Cache if not in SGA) 360 GB Magnetic Disks Cold Data * Headers for Flash Cached blocks kept in SGA
  • 54. Automated Degree of Parallelism How it works SQL statement Statement is hard parsed And optimizer determines the execution plan Statement executes serially Statement executes in parallel Optimizer determines ideal DOP If estimated time greater than threshold Actual DOP = MIN(default DOP, ideal DOP) If estimated time less than threshold PARALLEL_MIN_TIME_THRESHOLD
  • 55. Parallel Statement Queuing How it works SQL statements Statement is parsed and Oracle automatically determines DOP If enough parallel servers available execute immediately If not enough parallel servers available queue FIFO Queue 128 16 32 64 8 When the required number of parallel servers become available the first stmt on the queue is dequeued and executed 128 16 32 64
  • 56. In-Memory Parallel Execution How it works SQL statement Determine the size of the table being looked at Fragments of Table are read into each node’s buffer cache Read into the buffer cache on any node Table is extremely small Always use direct read from disk Table is a good candidate for In-Memory Parallel Execution Table is extremely Large Only parallel server on the same RAC node will access each fragment
  • 58. Edition-based Redefinition! Yes, this is here twice But only because It is the killer feature Of Oracle Database 11g Release 2 It is worth 2 features
  • 59.
  • 60.
  • 61.
  • 62.
  • 63.
  • 64.
  • 65.
  • 66.
  • 67.
  • 68.
  • 69. <Insert Picture Here> How to get there
  • 70. What are my upgrade paths? Predictable performance post-upgrade  10.2.0.2  11.1.0.6 10.1.0.5 9.2.0.8 11.2 SQL Plan Management Automated SQL tuning
  • 71. For More Information search.oracle.com or oracle.com
  • 72.  

Editor's Notes

  1. When a SQL statement is executed it will be hard parsed and a serial plan will be developed The expected elapse time of that plan will be examined. If the expected Elapse time is Less than PARALLEL_MIN_TIME_THRESHOLD then the query will execute serially. If the expected Elapse time is greater than PARALLEL_MIN_TIME_THRESHOLD then the plan Will be re-evaluated to run in parallel and the optimizer will determine the ideal DOP. The Optimizer automatically determines the DOP based on the resource required for all scan operations (full table scan, index fast full scan and so on) However, the optimizer will cap the actual DOP for a statement with the default DOP (parallel_threads_per_cpu X CPU_COUNT X INSTANCE_COUNT), to ensure parallel Processes do not flood the system.
  2. Step 1: SQL Statement is issued and Oracle automatically determines if It will run in parallel and if so what DOP it will get. Step 2: Oracle checks to see if there are enough PQ servers to execute The query. If there are it will execute immediately if there are not then The query will be queued in a FIFO Step 3: Everyone waits in the queue for the statement at the top of the Queue to get all of his requested PQ servers even if there are enough PQ servers available for one of the other statements to run ?????? Step 4: When enough PQ servers are available the statement is De-queued and allowed to execute.