Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Oracle Database 12c

1,016 views

Published on

Nowe funkcojnalnosci Oracle Database 12c, 6 lutego 2014

Published in: Technology, News & Politics

Oracle Database 12c

  1. 1. 1 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  2. 2. 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. 2 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  3. 3. Oracle Database 12c
  4. 4. What’s new? An overview bold = new in Oracle Database 12c Solution area Consolidation and Private Cloud DBaaS, EM Cloud Control, Instance Caging, Schema Consolidation, Pluggable Databases (new DB Option) Big Data, Data Warehouse and Analytics Exadata, Big Data Appliance, Exalytics, Partitioning, Advanced Analytics, OLAP, In-Database MapReduce / Pattern Matching for Big Data analysis (in Advance Analytics) Storage Optimization Advanced Compression Automatic Data Optimization (ADO), Heat Map Business Continuity RAC, RMAN, Data Guard, Active Data Guard, GoldenGate, Application Continuity, Far Sync, Global Data Services (in Advance Data Guard) Data Security Advanced Security, Data Vault, Data Redaction, Privilege Analysis, Data Masking at source, Sensitive Data Discovery (in Advanced Security, Data Masking) Manageability 4 Oracle Database Functionality Enterprise Manager (& Packs), Real Application Testing Consolidated Replays, Database As A Service, Snap-clone (in Enterprise Manager and Real Application Testing) Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  5. 5. Multitenant – Pluggable Databases
  6. 6. Private Database Cloud Architectures Oracle Database 11g Virtual Machines Dedicated Databases share servers share servers and OS Increasing Consolidation 6 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Schema Consolidation share servers, OS and database
  7. 7. Private Database Cloud Architectures Oracle Database 12c Virtual Machines Dedicated Databases Multitenant Database share servers share servers and OS share servers, OS and database Increasing Consolidation 7 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  8. 8. Oracle Database Architecture Requires memory, processes and database files System Resources 8 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  9. 9. New Multitenant Architecture Memory and processes required at multitenant container level only System Resources 9 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  10. 10. New Multitenant Architecture Memory and processes required at multitenant container level only System Resources 10 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  11. 11. Multitenant Architecture Components of a Multitenant Container Database (CDB) PDBs Root Pluggable Databases (PDBs) CDB 11 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  12. 12. Multitenant Architecture  Multitenant architecture can currently Database Link 12 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. support up to 252 PDBs  A PDB feels and operates identically to a non-CDB  You cannot tell, from the viewpoint of a connected client, if you’re using a PDB or a non-CDB
  13. 13. Unplug / plug Simply unplug from the old CDB… 13 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  14. 14. Unplug / plug …and plug in to the new CDB…  Moving between CDBs is a simple case of moving a PDB’s metadata  An unplugged PDB carries with it lineage, opatch, encryption key info etc 14 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  15. 15. Unplug / plug Example Unplug alter pluggable database HCM unplug into '/u01/app/oracle/oradata/…/hcm.xml' Plug create pluggable database My_PDB using '/u01/app/oracle/oradata/…/hcm.xml' 15 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  16. 16. Common Data Dictionary Before 12.1: Oracle and user meta data intermingle over time U r se Da ta Me Da ta Da D ta io ic t r na y Da ta Database Created 16 U Copyright © 2013, Oracle and/or its affiliates. All rights reserved. r se ta Me Da ta Da D ta io ic t n y ar U Da ta Tables, Code, Data added r se ta Me Da ta Mature Database ta Da D ta io ic t na ry
  17. 17. Oracle Data and User Data  Multitenant fix: OBJ$ TAB$ SOURCE$ EMP … 17 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. DEPT … Horizontallypartitioned data dictionary  Only Oracle system definition remains  Oracle and customer metadata intermingled
  18. 18. Horizontally Partitioned Data Dictionary  Oracle-supplied OBJ$ TAB$ SOURCE$ EMP … OBJ$ TAB$ SOURCE$ … 18 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. DEPT … objects such as views, PL/SQL, etc., are shared across all PDBs using object “stubs”  In-database virtualization
  19. 19. Multitenant Architecture – Dynamics  PDBs share common SGA and background processes  Foreground sessions see only the PDB they connect to 19 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  20. 20. Multitenant Scalability GB MEMORY MEMORY MEMORY 3 2.5 2 1.5 1 0.5 0 CRM HCM ERP BI Pluggable Database Database Pluggable Pluggable Database DW  Only small increments in memory as additional PDBs are added 20 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  21. 21. Manage Many as One with Multitenant Backup databases as one; recover at pluggable database level One Backup Point-in-time recovery At pluggable database level 21 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  22. 22. Manage Many as One with Multitenant One standby database covers all pluggable databases 22 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  23. 23. Multitenant for Simplified Upgrades Apply changes once, all pluggable databases updated Upgrade in-place 23 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  24. 24. Multitenant for Patching Flexible choice when patching & upgrading databases 24 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  25. 25. Improved Agility With Changing Workloads Expand Cluster to Support Flexible Consolidation Model Services CDB Instance 1 CDB Instance 2 Single SGA per CDB Instance Node1 Multitenant Container Database (CDB) 25 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Node2
  26. 26. Improved Agility With Changing Workloads Expand Cluster to Support Flexible Consolidation Model Services CDB Instance 1 CDB Instance 3 CDB Instance 2 Single SGA per CDB Instance Node1 Node3 Multitenant Container Database (CDB) 26 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Node2
  27. 27. Unprecedented Agility with Pluggable Portability PDB migrates through SLAs as it becomes more mission critical GOLD SILVER BRONZE 27 RAC, Data Guard, Daily Incrementals Data Guard, Daily Incrementals Weekly Full Backups Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  28. 28. Multitenant for Provisioning Fast cloning of PDBs  PDBs can be cloned from within the same CDB  PDBs can be cloned from remote CDBs 28 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  29. 29. Provisioning & Storage Gains with Snapshots Internal Tests on Sun ZFS Storage Appliance Full Size (GB) Snap Size (KB) Relative Size Full Clone Snap Clone % savings 24 0.00058% 9 min, 52 sec 1 min, 52 sec 80% 216 142 0.00007% 1hr, 21 min 2 min, 11 sec 97% 1300 29 140 551 0.00004% 9hr, 7 min 5 min 55 sec 99% Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  30. 30. Traditional File System Full copy duplicates all data blocks my_file my_file_copy cp my_file my_file_copy 30 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.  File is collection of data blocks  And headers  Copy duplicates header & data blocks  Effective & simple, but expensive!
  31. 31. Copy-on-Write Basics Much more efficient storage of substantially similar files my_file  File is collection of data blocks  And headers  Copy file requires only copy of header  Much more efficient storage  Minimal IO to create copy my_file_copy cp my_file my_file_copy 31 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  32. 32. Copy-on-Write Basics Much more efficient storage of substantially similar files my_file  File is collection of data blocks  And headers  Copy file requires only copy of header  Much more efficient storage  Minimal IO to create copy  Copy block only when change needed my_file_copy cp my_file my_file_copy 32 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  33. 33. Advantages of Multitenant Architecture Reduced CapEx & OpEx, Increased Agility, Easy Adoption Self-contained PDB for each application    Applications run unchanged Rapid provisioning (via clones) Portability (via pluggability) Shared memory and background processes  More applications per server Common operations performed at CDB level   33 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Manage many as one (upgrade, HA, backup) Granular control when appropriate
  34. 34. Managing Shared Resources Resource management in multitenant environment Low Priority Medium Priority High Priority 34 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  35. 35. Managing Resources between PDBs  Using Resource Manager, you can control – CPU – Exadata I/O – Sessions – Parallel execution servers  Configure a policy that controls how resources are utilized – Default configuration that works, even as PDBs are added or removed – Hard limits, for “get what you pay for” 35 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  36. 36. Manage CPU A CDB Resource Plan uses shares to specify how CPU is distributed between PDBs 2 Shares 1 Share Pluggable Database Guaranteed CPU Maximum CPU HCM 2 2/4 = 50% 100% CRM 1 1/4 = 25% 100% ERP 36 Shares 1 1/4 = 25% 100% Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 1 Share
  37. 37. Upgrading to Multitenant Step 1: Upgrade databases in-place Upgrade in Place 37 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  38. 38. Upgrading to Multitenant Step 2: Plug-in upgraded databases 38 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  39. 39. Upgrading to Multitenant Step 3. Change applications to work with Multitenant  No application changes required. 39 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  40. 40. Use Cases 1. 2. Consolidation of Disparate Applications 3. Database as a Service (DBaaS) on Private Cloud 4. Software as a Service (SaaS) 5. ISVs: Distribution of Packaged Apps and Data 6. 40 Development / Testing – start here! …many others! Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  41. 41. 1. Multitenant for Test and Development Fast, flexible copy and snapshot of pluggable databases 41 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  42. 42. 2. Consolidation of Disparate Applications Shared overhead of memory and processes System Resources 42 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  43. 43. 3. Self-Service Database as a Service (DBaaS) Pick from standard sizes and service levels GOLD ✔ 43 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. SILVER Data Guard Daily Incrementals BRONZE ✔ RAC, Data Guard, Daily Incrementals Weekly Full Backups
  44. 44. 3. Self-Service Database as a Service (DBaaS) Pick from standard sizes and service levels 44 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. RAC, Data Guard, Daily Incrementals Data Guard Daily Incrementals BRONZE ✔ GOLD SILVER ✔ Weekly Full Backups
  45. 45. 4. Multitenant. Perfect for SaaS. Multitenancy implemented by the Database, not the Application 45 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  46. 46. 5. Multitenant. Perfect for ISVs. Packaged apps and reference data are easily distributed 46 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  47. 47. Optimizer Enhancements
  48. 48. Adaptive Query Optimization Overview Adaptive Query Optimization Adaptive Plans Join methods Parallel distribution methods Adaptive Statistics Adaptive Plans Discovered at compile time Discovered at run time Join Methods 48 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Parallel distribution Methods Adaptive Statistics At compile time At run time
  49. 49. Adaptive Execution Plans Adapt join methods Query: Find all of the products with a unit price of 15 that we have sold more than 1 unit Two possible join methods for this query Nested Loops Hash Join 49 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  50. 50. Adaptive Execution Plans Adapt join methods Rows coming out of order_items table are buffered up to a point If row count is less than the threshold use nested Loops otherwise switch to hash join Alternative sub-plans are pre-computed NESTED LOOPS HASH JOIN Sub-plans stored in the cursor Stats collect inserted before join Rows buffered until final decision is made Statistics Collector Table scan Order _items Index Scan Prod_info_ind Table scan Prod_info Default Plan is a nested loops join 50 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  51. 51. Adaptive Execution Plans Adapt join methods Number of rows seen in statistics collector exceeds threshold Plan switches to hash join Statistics collector disabled after decision is made and becomes a pass through operation NESTED LOOPS HASH JOIN Statistics collect disabled Plan resolved on first execution & remains the same for subsequent executions Statistics Collector Table scan Order _items Index Scan Prod_info_ind Table scan Prod_info Final Plan is a hash join 51 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  52. 52. Adaptive Execution Plans Displaying the default plan Explain plan command always shows default plan Example shows a nested loops join as default plan No statistics collector shown in plan 52 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  53. 53. Adaptive Execution Plans Displaying the final plan After the statement has completed use DBMS_XPLAN.DISPLAY_CURSOR to see the final plan selected Example shows that hash join picked at execution time Again the statistics collector is not visible in the plan 53 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  54. 54. Adaptive Execution Plans Displaying the full adaptive plan Full adaptive plan displayed when format parameter ‘+adaptive’ is set Example shows both the nested loops and hash join in the plan 54 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  55. 55. Adaptive Execution Plans Indicator in V$SQL New column in V$SQL IS_RESOLVED_ADAPTIVE_PLAN Indicates statement had an adaptive plan which was resolved on first execution Resolved plan is used for subsequent executions Statistics collectors and buffering is disabled 55 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  56. 56. Adaptive Execution Plans Reporting mode Adaptive plans are enabled by default Can be put in reporting mode OPTIMIZER_ADAPTIVE_REPORTING_ONLY Reporting mode shows what would have happened during execution in the plan 56 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  57. 57. Adaptive Execution Plans Adaptive join methods  Join method decision deferred until runtime – Default plan is computed using available statistics – Alternate sub-plans are pre-computed and stored in the cursor – Statistic collectors are inserted at key points in the plan  Final decision is based on statistics collected during execution – Default plan and sub-plans have a valid range for statistics collected – If statistics prove to be out of range, the sub-plans will be swapped – Requires buffering near the swap point to avoid returning rows to user  Possible sub-plans are nested loop joins or hash joins and vice versa 57 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  58. 58. Adaptive Query Optimization Overview Adaptive Query Optimization Adaptive Plans Join methods Parallel distribution methods Adaptive Statistics Adaptive Plans Adaptive Statistics Discovered at compile time Discovered at run time Join Methods 58 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Parallel distribution Methods At compile time At run time
  59. 59. Dynamic Statistics  Dynamic statistics were formally known as dynamic sampling  During compilation optimizer decides if statistics are sufficient to generate a good plan or not  Dynamic statistics are used to compensate for missing, stale, or incomplete statistics  They can be used for table scans, index access, joins and group bys 59 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  60. 60. Dynamic Statistics Dynamic Sampling Dynamic sampling has a new level 11(AUTO) Decision to use dynamic sampling depends on the complexity of predicate, existing statistics and total execution time Dynamic statistics shared among queries 60 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  61. 61. Dynamic Statistics SGA SHARED DYNAMIC STATISTICS Select * Table cardinality estimate for prod_info From product_information 5 Optimizer determines plan using dynamic statistics Where list_price-min_price=29 And category_id not in (11,22) And prod_name like ‘Smart%’; 1 SQL statement is submitted 2 Optimizer checks for existing statistics in data dictionary 3 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Cursor 0: Select * from product_information … 4 Dynamic sampling occurs on small number of blocks from table Resulting dynamic statistics are stored in cache Statistics found but need to be augmented due to complex predicates 61 SHARED_POOL DATA DICTIONARY
  62. 62. Dynamic Statistics SGA SHARED DYNAMIC STATISTICS Select supplier_id, prod_name Table cardinality estimate for prod_info From product_information 10 Optimizer determines Where list_price-min_price=29 plan using dynamic statistics And category_id not in (11,22) And prod_name like ‘Smart%’; 6 Different SQL statement is submitted with same predicates SHARED_POOL Cursor 0: Select supplier_id, prod_name … 9 Necessary Dynamic statistics found in shared cache 7 Optimizer checks for existing statistics in data dictionary 8 Statistics found but need to be augmented due to complex predicates 62 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. DATA DICTIONARY
  63. 63. Adaptive Statistics Re-optimization  During execution optimizer estimates are compared to execution statistics  If statistics vary significantly then a new plan will be chosen for subsequent executions based on execution statistics  Re-optimization uses statistics gathered from previous executions  First introduced as Cardinality Feedback in 11.2 63 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  64. 64. Adaptive Statistics Re-optimization – indicator in V$SQL New column in V$SQL IS_REOPTIMIZABLE Indicates that the statement will be re-parsed on the next execution 64 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  65. 65. Adaptive Statistics Adaptive Plans & Re-optimization working together Adapt join method example showed the join change from nested loops to hash join But cursor is also marked IS_REOPTIMIZABLE Why? 65 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  66. 66. Adaptive Statistics Adaptive Plans & Re-optimization working together Adapt join method example showed the join change from nested loops to hash join But cursor is also marked IS_REOPTIMIZABLE Why? Re-optimization will occur on second execution because cardinality estimates off 66 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Initial Cardinality estimates are off
  67. 67. Adaptive Statistics Adaptive Plans & Re-optimization working together On second execution statement is re-parsed using execution statistics New child cursor created with new plan New plan changes the join order 67 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  68. 68. Adaptive Statistics SQL Plan Directives  Directives are additional information used during optimization to generate a better plan – For example, when table T1 is joined to T2 use dynamic statistics to get accurate cardinality estimate – Directives are collected on query expressions not at a statement level  Allows for directives to be used for multiple statements – Persisted on disk in the SYSAUX tablespace – Directives will be automatically maintained – Managed using the new package DBMS_SPD 68 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  69. 69. SQL Plan Directives SGA DIRECTIVE CACHE Directive: Use DS for customers table when column city, country are used Select * 2 FROM customers Optimizer determines plan where state =‘CA’ AND country=‘USA’; 1 SQL statement is submitted SHARED_POOL Cursor 0: Select * from customers …….. IS_REOPTIMIZABLE = Y 3 During execution cardinality estimate discovered to be wrong and directive created Sysaux Tablespace 69 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  70. 70. SQL Plan Directives SGA DIRECTIVE CACHE 5 Select * Optimizer determines new plan using execution statistics FROM customers where state=‘CA’ AND country=‘USA’; 4 Same SQL statement is submitted again 6 This execution and subsequent execution use child cursor 1 Directive: Use DS for customer table when column city, country are used SHARED_POOL Cursor 0: Select * from customers ….. IS_REOPTIMIZABLE = Y Cursor 1: Select * from customers ….. IS_REOPTIMIZABLE = N Sysaux Tablespace Extension Binds Stats Sqlid SQL Directives SQL Directives 70 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Directives periodically persisted to disk in the sysaux tablespace
  71. 71. SQL Plan Directives SGA DIRECTIVE CACHE 9 Select email Optimizer determines plan with help of directive FROM customers where state=‘MA’ AND country=‘USA’; Cursor 0: Select email from customers 7 New SQL statement is submitted on customers table 8 Optimizer checks for directives on customers table and finds one on the columns state and country 71 SHARED_POOL Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 10 Optimizer adds column group creation for state & country columns to next statistics gather on customer table Sysaux Tablespace Extension Binds Stats Sqlid SQL Directives
  72. 72. SQL Plan Directives In use Number of SQL Plan Directives used for a statement is displayed in the notes section of the execution plan In this case one SQL Plan Directive was used 72 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  73. 73. SQL Plan Directives Monitoring Auto flushed every 15 minutes 73 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  74. 74. SQL Plan Directives Monitoring Auto flushed every 15 minutes 74 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  75. 75. SQL Plan Directives Gather statistics to allow automatic creation of missing statistics SQL Plan Directive state was “MISSING_STATS” Indicates Oracle can automatically gather statistics to improve the original mis-estimation In this case a column group on STATE and COUNTRY will address the problem 75 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  76. 76. SQL Plan Directives Monitoring 76 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  77. 77. SQL Plan Directives Final plan no longer needs the directive Correct statistics in place Optimizer uses statistics instead of directives Accurate cardinality estimate seen in the plan Statement not marked for re-optimization 77 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  78. 78. Application Continuity
  79. 79. Unknown Transaction State Leads to poor customer experiences  Database and infrastructure outages can cause in-flight work to be lost, leaving users and applications in-doubt  Often leads to  User pains  Duplicate submissions  Rebooting mid-tiers  Developer pains 79 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  80. 80. Unknown Transaction State Current Situation User selects product from application and purchases it from the web checkout End User Application Servers Network Switches Database Servers 80 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. User transaction arrives at application infrastructure. It makes it’s way through the application tiers and results in a database transaction being created
  81. 81. Unknown Transaction State Current Situation End User Application Servers Network Switches Database Servers 81 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. A failure in the infrastructure on its return journey means the application server never User transaction arrives at receives an acknowledgment application infrastructure and makes it’s way through application tiers and results in a database transaction being The transaction commits inside created of the database and an acknowledgement begins it return journey
  82. 82. Unknown Transaction State Current Situation End User Application Servers Network Switches Database Servers 82 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. The application is left in an unknown state. It returns an error to the user who may order the product for a second time resulting in them potentially being charged twice.
  83. 83. A Solution to the Problem Two New Features • Transaction Guard: a reliable protocol and API that returns the outcome of the last transaction • Application Continuity: safely attempts to replay in-flight work following outages and planned operations. 83 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  84. 84. Application Continuity A reliable replay of in flight work User selects product from application and purchases it from the web checkout End User Application Servers Network Switches Database Servers 84 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. User transaction arrives at application infrastructure. It makes it’s way through the application tiers and results in a database transaction being created
  85. 85. Application Continuity A reliable replay of in flight work End User Application Servers Network Switches Database Servers 85 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. The infrastructure hosting the database fails just before the transaction is committed to the database.
  86. 86. Application Continuity A reliable replay of in flight work End User Application Servers Network Switches Database Servers 86 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. If the transaction needs to be replayed, “Application The jdbc driver detects the of the Continuity” will submit all failure and checksawith an node inflight work to surviving availableclusterin theperform a in the node and cluster, using “Transaction happens commit. This all Guard”, whether the transaction transparently to the application committed or needs to be replayed
  87. 87. Application Continuity A reliable replay of in flight work End User Application Servers Network Switches Database Servers 87 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. The user receives confirmation that his order has been successfully completed.
  88. 88. When is Application Continuity for Java transparent  If the Application – Uses J2EE or JPA that uses the standard JDBC API – Uses UCP or WebLogic Server and return connections to pool – Does not have external actions that cannot be replayed. 88 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  89. 89. Application Continuity Example Java App Using Universal Connection Pool (UCP) 89 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  90. 90. Application Continuity Using Service Configured for FAN / Replay and Replay Driver 90 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  91. 91. Application Continuity Using Service for FAN and NON-Replay Driver 91 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  92. 92. Application Continuity Seamless failover of application connections with RAC No Interruption Interruption 92 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  93. 93. Application Continuity Seamless failover of application connections with RAC  App Using Application Continuity:  App NOT Using Application Continuity: 93 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  94. 94. Application Continuity Seamless failover of application connections with Active Data Guard 94 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  95. 95. Application Continuity Seamless failover of application connections with Active Data Guard 95 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  96. 96. What does the “c” stand for cloud consolidation cloning compliance business continuity control reduce cost customer 96 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  97. 97. Thank You 97 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  98. 98. 98 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  99. 99. 99 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

×