Practice Manual: How to optimize SQL statement of using DBLINK on Oracle

Size: px
Start display at page:

Download "Practice Manual: How to optimize SQL statement of using DBLINK on Oracle"

Transcription

1 Practice Manual: How to optimize SQL statement of using DBLINK on Oracle Usually, a good approach of optimizing SQL statement using DBLINK is that you could try your best to reduce data returned calling remote table that is an inline view. furthermore it also reduces the data via network transmission. At the same time, it even hasn t consumed the resource (more network waiting-events) from data transmission, this waiting-event is named to SQL*Net message from DBLINK on Oracle. This practice manual introduces some experience and approach of SQL optimizing from 6 numbers of ways. The entire optimizing processes and steps as follows: (1) Finding problem (2) Problem analysis -1 (3) Describing the structure of entire SQL statement (4) Checking data size of in-line view r from remote db (5) Problem analysis -2 (6) Conclusion Next we do some practice in order, 1. Firstly, I ve discovered a SQL statement which is executing long time on my EMCC monitor platform, and its SQL_ID is 83gn36c1fu9dw, 2. Problem analysis -1 (1) According to the value of SQL_ID, I ve captured its sql_fulltext is as follows,

2 select sql_fulltext from v$sql where sql_id = 83gn36c1fu9dw ; (2) From snapshot above, you can find a bind variable :1 on that SQL statement. Next I use dynamic performance view of v$sql_bind_capture (or view dba_hist_sqlbind ) to check what the value of :1 is, see my snapshot as follows, set linesize 400 set pagesize 400 col sql_id for a15 col name for a5 col value_string for a40 select sql_id, name, value_string from v$sql_bind_capture where sql_id = 83gn36c1fu9dw ;

3 (3) And then, I ve replaced :1 on original SQL using ff c605e20141c9691f5a000c which I have discovered from the snapshot above, and used SQL*Plus to execute it. After waiting for five minutes and twenty-six seconds, it has returned to query result. Obviously, it s not weird that such a SQL statement has spent long time to execute on the situation of high concurrency and executing process kept on going. My test process is as follows, set linesize 400 set pagesize 400 set timing on

4

5 3. Describing the structure of entire SQL statement It is a ROWNUM operation in the outermost select, that s to say, querying out inner resultset and return to top five rows; The second inner select near to outermost could be eliminated (It s feasible because I have tested for it); The third inner select is in-line view of naming r (querying remote table sd_res_id_case and returning to resultset) and local table t is doing operation of left-join; Via three points previous, this SQL return to entire query result finally. By the way, there has a subquery that is located underneath and rowid in in the in-line view r. Afterwards, I ve generated the execution plan with row source that is as follows, select * from table(dbms_xplan.display_cursor(null, NULL, ALLSTATS ALL ));

6 We observe the third step named NESTED LOOPS that line of Id is 3, you ve found that Starts * E-Rows is equal to 1 * 2 = 2, and A-Rows is 926K. It s a common principle that the value of Starts * E-Rows and A-Rows is almost equal or not more different. Next, we look at the eighth step named REMOTE that line of Id is 8, you ve found Starts * E-Rows is equal to 926K * 3 and A-Rows is 5, these two values have much difference. By the way, the Starts of REMOTE is 926K, that s to say, it has executed too many times, this operation has extremely consumed resource and is on the table from remote db. Afterwards, there have two operations of REMOTE under Remote SQL Information next to the execution plan. It s obvious that in-line view r on that SQL hasn t overall queried the result from remote table and then it has returned to local db. However, it has executed the fifth steps firstly and the eighth step secondly querying remote table twice as a whole. It s assumed that whether we could make remote table being queried only once, furthermore, in-line view r has just executed once and then returned the query result from remote table sd_res_id_case? Sure, we could use the Hint of no_merge which would insert closely the first select located on in-line view r. Rewriting that SQL finally is as follows,

7 It s amazing that it has spent about 7 seconds to show query result, see my snapshot as follows, And then, checking the execution plan with plan statistics, select * from table(dbms_xplan.display_cursor(null, NULL, ALLSTATS ALL ));

8 Mainly, the execution time has reduced too much this time. You have even found that there has one operation of REMOTE and the second step (that line of Id is 2) has been HASH JOIN (the original execution plan is NESTED LOOPS ) and E-Rows A-Rows is equal to 5. Next, we can find that it s the operation of VIEW on line 5 that Id is, Starts is 1, E-Rows is 5754, A-Rows is and it has almost 10 times than E-Rows. I estimate that this SQL could maybe improve better if retuning. 4. Checking data size of in-line view r from remote db Due to we can t see the execution plan from remote table on local db, hence we ll check in-line view r and observe how much data there has on remote db. Doing some query as follows on remote db, set linesize 400 set pagesize 400

9 set timing on It has shown (about 196K) rows, this figure is very high much beyond my imagination. And then, we checked the execution plan with row source that is as follows, select * from table(dbms_xplan.display_cursor(null, NULL, ALLSTATS ALL ));

10 From snapshot above, we can see the second step NESTED LOOPS ( Id is 2) has returned actually 196K rows and it is also about the content of select count(*) located outermost on that SQL statement; The seventh step TABLE ACCESS BY USER ROWID ( Id is 7) has returned 196K rows too (checking seriously, its Starts is 196K, the same as, it has executed 196K times, this s so terrible), the operation of line 7 is a subquery about select min(rowid) from. Due to Starts of line 2 is equal to 1, so the row numbers returned about this SQL has depended on that subquery. If this subquery would return massive data, even I can t assume that how slow about original SQL statement s query speed is. In gerenal, adding a Hint of no_merge, it s obvious that the execution time of SQL is faster than original SQL s. Thereupon, I ve communicated with the colleague of developer and finally understood that the SQL is a timed-task running on web application server, it executes at 4:00 AM every day. According to my opinion, he added the Hint of no_merge that I ve mentioned previous to those SQLs come from his program. 5. Problem analysis -2 The next day, I ve checked the wait-event of DBLINK at 4:00 AM ~ 6:00 AM during that time period via v$active_session_history. See my two snapshots as follows, set linesize 400 set pagesize 500

11 col sql_id for a15 col event for a30 col count(*) for select sql_id, event, count(*) from v$active_session_history where sample_time between to_date ( :00:00, yyyy-mm-dd hh24:mi:ss ) and to_date ( :00:00, yyyy-mm-dd hh24:mi:ss ) and event like %dblink% group by sql_id, event order by count(*) desc, sql_id ;

12 According to query above, we can see there are top 2 sql_id total cumulative number of wait-event of DBLINK are greater more than any other sql_id. Another SQL is different than what I have analyzed previous and it has only added a condition of ROWNUM <= :2 on the outermost select. Now, we have just analyzed original SQL. Next, I rechecked it at 6:00 AM ~ 7:00 AM during that time period. As a result, it has returned to no rows selected having no wait-event of DBLINK, that s to say, the execution of related SQL statements have been all completed as follows, select sql_id, event, count(*) from v$active_session_history where sample_time between to_date ( :00:00, yyyy-mm-dd hh24:mi:ss ) and to_date ( :00:00, yyyy-mm-dd hh24:mi:ss ) and event like %dblink% group by sql_id, event order by count(*) desc, sql_id ; no rows selected. On the other hand, we can also see that the query result from the comparison report of AWR below (AWR has read related information from DBA_HIST_ACTIVE_SESS_HISTORY ).

13

14

15 From AWR report above, we can also see the execution times of those two SQL is 3106 and According to the analysis of execution plan previous, we have understood that the query speed of SQL is slow because of returning too much rows on the in-line view r. Then, if optimizing this SQL continually, we should rewrite the in-line view. Firstly, via adding the condition of where and which is the same as inner select query on the outermost select of in-line view r.

16 If this, it can eliminate many rows and at the same time do the equal associated operation by the field school_id of two-layer select query as follows, Nevertheless, it only spent 4 millisecond to show query result and the execution plan with row source is as follows,

17 select * from table(dbms_xplan.display_cursor(null, NULL, ALLSTATS ALL )); Next, I have communicated with the colleague of developer again and sent SQL that I ve rewritten to him and he has also done some comparison. Afterwards, he has rewritten original SQL according to business requirement, entire SQL statement having rewritten is as follows,

18

19 Checking the execution plan with plan statistics again that is as follows, select * from table(dbms_xplan.display_cursor(null, NULL, ALLSTATS ALL )); From the execution plan above, we can see the value of Starts, E-Rows or A-Rows is very small and A-Time is about only 1 ~ 2 millisecond. On the third day, I ve checked total cumulative number of wait-event of DBLINK again during that time period and found that it has reduced more than original SQL. select sql_id, event, count(*) from v$active_session_history where sample_time between to_date ( :00:00, yyyy-mm-dd hh24:mi:ss ) and to_date ( :00:00, yyyy-mm-dd hh24:mi:ss )

20 and event like %dblink% group by sql_id, event order by count(*) desc, sql_id ; 6. Conclusion Generally speaking, there are five steps about optimizing SQL using DBLINK, they are as follows, (1) Capturing problematical SQL from EMCC monitor platform; (2) Testing SQL via adding Hint of gather_plan_statistics ; (3) Generating related execution plan with row source and analyzing which step has most time-consuming; (4) Finding out the suitable solution (Not necessarily rewritten, this depends on the specific circumstances) and doing some test again; (5) Communicating with developers, reviewing and modifying SQL code (If you don t need change code, it would be better); Related References Classic case - How to optimize SQL statement of using DBLINK on Oracle

MANAGING DATA(BASES) USING SQL (NON-PROCEDURAL SQL, X401.9)

MANAGING DATA(BASES) USING SQL (NON-PROCEDURAL SQL, X401.9) Technology & Information Management Instructor: Michael Kremer, Ph.D. Class 6 Professional Program: Data Administration and Management MANAGING DATA(BASES) USING SQL (NON-PROCEDURAL SQL, X401.9) AGENDA

More information

Appendix: Application of the Formal Principle for the Analysis of Performance Problems After an Oracle Migration

Appendix: Application of the Formal Principle for the Analysis of Performance Problems After an Oracle Migration Appendix: Application of the Formal Principle for the Analysis of Performance Problems After an Oracle Migration The method described in this book is helpful in most cases which a database specialist is

More information

Join Methods. Franck Pachot CERN

Join Methods. Franck Pachot CERN Join Methods Franck Pachot CERN Twitter: @FranckPachot E-mail: contact@pachot.net The session is a full demo. This manuscript shows only the commands used for the demo the explanations will be during the

More information

Dan Hotka Author/Instructor Oracle Ace Director.

Dan Hotka Author/Instructor Oracle Ace Director. Dan Hotka Author/Instructor Oracle Ace Director , LLC (c) www.danhotka.com LLC. Any reproduction or copying of this manual without the express written consent of www.danhotka.com LLC is expressly prohibited.

More information

Using Active Session History for Performance Tuning: Advanced Topics in Performance Diagnostics

Using Active Session History for Performance Tuning: Advanced Topics in Performance Diagnostics Using Active Session History for Performance Tuning: Advanced Topics in Performance Diagnostics Graham Wood Oracle USA Agenda Performance Diagnosis What is ASH? Using ASH data What

More information

Five Hints for Optimising SQL

Five Hints for Optimising SQL Five Hints for Optimising SQL Jonathan Lewis JL Computer Consultancy UK Keywords: SQL Optimisation Hints Subquery Merge push_pred Unnest push_subq driving_site Introduction Adding hints to production code

More information

Does Exadata Need Performance Tuning? Jože Senegačnik, Oracle ACE Director, Member of OakTable DbProf d.o.o. Ljubljana, Slovenia

Does Exadata Need Performance Tuning? Jože Senegačnik, Oracle ACE Director, Member of OakTable DbProf d.o.o. Ljubljana, Slovenia Does Exadata Need Performance Tuning? Jože Senegačnik, Oracle ACE Director, Member of OakTable DbProf d.o.o. Ljubljana, Slovenia Keywords Exadata, Cost Based Optimization, Statistical Optimizer, Physical

More information

ORACLE VIEWS ORACLE VIEWS. Techgoeasy.com

ORACLE VIEWS ORACLE VIEWS. Techgoeasy.com ORACLE VIEWS ORACLE VIEWS Techgoeasy.com 1 Oracle VIEWS WHAT IS ORACLE VIEWS? -A view is a representation of data from one or more tables or views. -A view is a named and validated SQL query which is stored

More information

Oracle 9i Application Development and Tuning

Oracle 9i Application Development and Tuning Index 2NF, NOT 3NF or BCNF... 2:17 A Anomalies Present in this Relation... 2:18 Anomalies (Specific) in this Relation... 2:4 Application Design... 1:28 Application Environment... 1:1 Application-Specific

More information

Oracle Compare Two Database Tables Sql Query Join

Oracle Compare Two Database Tables Sql Query Join Oracle Compare Two Database Tables Sql Query Join data types. Namely, it assumes that the two tables payments and How to use SQL PIVOT to Compare Two Tables in Your Database. This can (not that using the

More information

Tuna Helper Proven Process for SQL Tuning. Dean Richards Senior DBA, Confio Software

Tuna Helper Proven Process for SQL Tuning. Dean Richards Senior DBA, Confio Software Tuna Helper Proven Process for SQL Tuning Dean Richards Senior DBA, Confio Software 1 Who Am I? Senior DBA for Confio Software DeanRichards@confio.com Current 20+ Years in Oracle, SQL Server Former 15+

More information

Interpreting Explain Plan Output. John Mullins

Interpreting Explain Plan Output. John Mullins Interpreting Explain Plan Output John Mullins jmullins@themisinc.com www.themisinc.com www.themisinc.com/webinars Presenter John Mullins Themis Inc. (jmullins@themisinc.com) 30+ years of Oracle experience

More information

Advanced Oracle Performance Troubleshooting. Query Transformations Randolf Geist

Advanced Oracle Performance Troubleshooting. Query Transformations Randolf Geist Advanced Oracle Performance Troubleshooting Query Transformations Randolf Geist http://oracle-randolf.blogspot.com/ http://www.sqltools-plusplus.org:7676/ info@sqltools-plusplus.org Independent Consultant

More information

Quo Vadis SQLTXPLAIN

Quo Vadis SQLTXPLAIN Quo Vadis SQLTXPLAIN Who we are Experts At Your Service > Over 50 specialists in IT infrastructure > Certified, experienced, passionate Based In Switzerland > 100% self-financed Swiss company > Over CHF8

More information

QUERY TRANSFORMATION Part 1

QUERY TRANSFORMATION Part 1 Introduction QUERY TRANSFORMATION Part 1 Query transformation is a set of techniques used by the optimizer to rewrite a query and optimizer it better. Few optimization paths open up to the optimizer after

More information

Effec%ve Use of Oracle s 12c Database Opera%on Monitor

Effec%ve Use of Oracle s 12c Database Opera%on Monitor Managed Services Cloud Services Consul3ng Services Licensing Effec%ve Use of Oracle s 12c Database Opera%on Monitor UTOUG Training Days 2016 Kasey Parker Enterprise Architect Kasey.Parker@centroid.com

More information

Adaptive

Adaptive Christian Antognini @ChrisAntognini antognini.ch/blog BASEL BERN BRUGG DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. GENEVA HAMBURG COPENHAGEN LAUSANNE MUNICH STUTTGART VIENNA ZURICH @ChrisAntognini Senior

More information

PASS4TEST. IT Certification Guaranteed, The Easy Way! We offer free update service for one year

PASS4TEST. IT Certification Guaranteed, The Easy Way!  We offer free update service for one year PASS4TEST \ http://www.pass4test.com We offer free update service for one year Exam : 1z1-051 Title : Oracle Database: SQL Fundamentals I Vendor : Oracle Version : DEMO Get Latest & Valid 1Z1-051 Exam's

More information

Top 7 Plan Stability Pitfalls & How to Avoid Them. Neil Chandler Chandler Systems Ltd UK

Top 7 Plan Stability Pitfalls & How to Avoid Them. Neil Chandler Chandler Systems Ltd UK Top 7 Plan Stability Pitfalls & How to Avoid Them Neil Chandler Chandler Systems Ltd UK Keywords: SQL Optimizer Plan Change Stability Outlines Baselines Plan Directives Introduction When you write some

More information

Scaling To Infinity: Making Star Transformations Sing. Thursday 15-November 2012 Tim Gorman

Scaling To Infinity: Making Star Transformations Sing. Thursday 15-November 2012 Tim Gorman Scaling To Infinity: Making Star Transformations Sing Thursday 15-November 2012 Tim Gorman www.evdbt.com Speaker Qualifications Co-author 1. Oracle8 Data Warehousing, 1998 John Wiley & Sons 2. Essential

More information

Oracle Database 11g: SQL Tuning Workshop

Oracle Database 11g: SQL Tuning Workshop Oracle University Contact Us: Local: 0845 777 7 711 Intl: +44 845 777 7 711 Oracle Database 11g: SQL Tuning Workshop Duration: 3 Days What you will learn This Oracle Database 11g: SQL Tuning Workshop Release

More information

Oracle Database 12c. The Best Oracle Database 12c Tuning Features for Developers and DBAs. Presented by: Alex Zaballa, Oracle DBA

Oracle Database 12c. The Best Oracle Database 12c Tuning Features for Developers and DBAs. Presented by: Alex Zaballa, Oracle DBA Oracle Database 12c The Best Oracle Database 12c Tuning Features for Developers and DBAs Presented by: Alex Zaballa, Oracle DBA Alex Zaballa http://alexzaballa.blogspot.com/ 147 and counting @alexzaballa

More information

Using Automatic Workload Repository for Database Tuning: Tips for Expert DBAs. Kurt Engeleiter Product Manager

Using Automatic Workload Repository for Database Tuning: Tips for Expert DBAs. Kurt Engeleiter Product Manager Using Automatic Workload Repository for Database Tuning: Tips for Expert DBAs Kurt Engeleiter Product Manager The following is intended to outline our general product direction. It is intended for information

More information

Optimized Analytical Processing New Features with 11g R2

Optimized Analytical Processing New Features with 11g R2 Optimized Analytical Processing New Features with 11g R2 Hüsnü Şensoy Global Maksimum Data & Information Technologies Founder, VLDB Expert Agenda Introduction Understanding Optimized Analytical Processing

More information

Course Outline and Objectives: Database Programming with SQL

Course Outline and Objectives: Database Programming with SQL Introduction to Computer Science and Business Course Outline and Objectives: Database Programming with SQL This is the second portion of the Database Design and Programming with SQL course. In this portion,

More information

A subquery is a nested query inserted inside a large query Generally occurs with select, from, where Also known as inner query or inner select,

A subquery is a nested query inserted inside a large query Generally occurs with select, from, where Also known as inner query or inner select, Sub queries A subquery is a nested query inserted inside a large query Generally occurs with select, from, where Also known as inner query or inner select, Result of the inner query is passed to the main

More information

Tuning SQL without the Tuning Pack. John Larkin JP Morgan Chase

Tuning SQL without the Tuning Pack. John Larkin JP Morgan Chase Tuning SQL without the Tuning Pack John Larkin JP Morgan Chase Who am I Originally a mainframe COBOL programmer DBA for the last 23 years, the last 15 with Oracle. UNIX (Solaris, Aix, Windows, Linux) Recently

More information

Querying Data with Transact SQL

Querying Data with Transact SQL Course 20761A: Querying Data with Transact SQL Course details Course Outline Module 1: Introduction to Microsoft SQL Server 2016 This module introduces SQL Server, the versions of SQL Server, including

More information

Transaction Isolation Level in ODI

Transaction Isolation Level in ODI In this post I will be explaining the behaviour in Oracle 11g and regarding the ODI versions, there is not much difference between ODI 11g and 12c. If you see the drop down in 11g (11.1.1.9) procedure,

More information

ORACLE TRAINING CURRICULUM. Relational Databases and Relational Database Management Systems

ORACLE TRAINING CURRICULUM. Relational Databases and Relational Database Management Systems ORACLE TRAINING CURRICULUM Relational Database Fundamentals Overview of Relational Database Concepts Relational Databases and Relational Database Management Systems Normalization Oracle Introduction to

More information

A Unit of SequelGate Innovative Technologies Pvt. Ltd. All Training Sessions are Completely Practical & Real-time

A Unit of SequelGate Innovative Technologies Pvt. Ltd. All Training Sessions are Completely Practical & Real-time SQL Basics & PL-SQL Complete Practical & Real-time Training Sessions A Unit of SequelGate Innovative Technologies Pvt. Ltd. ISO Certified Training Institute Microsoft Certified Partner Training Highlights

More information

Join Selectivity. Jonathan Lewis JL Computer Consultancy London, UK

Join Selectivity. Jonathan Lewis JL Computer Consultancy London, UK Join Selectivity Jonathan Lewis JL Computer Consultancy London, UK Keywords: Selectivity, Cardinality, Statistics, Joins, Cost-based Optimizer Introduction In this note I will be describing the basic mechanism

More information

Top 5 Issues that Cannot be Resolved by DBAs (other than missed bind variables)

Top 5 Issues that Cannot be Resolved by DBAs (other than missed bind variables) Top 5 Issues that Cannot be Resolved by DBAs (other than missed bind variables) March 12, 2013 Michael Rosenblum Dulcian, Inc. www.dulcian.com 1 of 43 Who Am I? Misha Oracle ACE Co-author of 2 books PL/SQL

More information

Oracle Database: SQL and PL/SQL Fundamentals NEW

Oracle Database: SQL and PL/SQL Fundamentals NEW Oracle Database: SQL and PL/SQL Fundamentals NEW Duration: 5 Days What you will learn This Oracle Database: SQL and PL/SQL Fundamentals training delivers the fundamentals of SQL and PL/SQL along with the

More information

Real-World Performance Training SQL Performance

Real-World Performance Training SQL Performance Real-World Performance Training SQL Performance Real-World Performance Team Agenda 1 2 3 4 5 6 The Optimizer Optimizer Inputs Optimizer Output Advanced Optimizer Behavior Why is my SQL slow? Optimizer

More information

Answer: Reduce the amount of work Oracle needs to do to return the desired result.

Answer: Reduce the amount of work Oracle needs to do to return the desired result. SQL Tuning 101 excerpt: Explain Plan A Logical Approach By mruckdaschel@affiniongroup.com Michael Ruckdaschel Affinion Group International My Qualifications Software Developer for Affinion Group International

More information

<Insert Picture Here> DBA s New Best Friend: Advanced SQL Tuning Features of Oracle Database 11g

<Insert Picture Here> DBA s New Best Friend: Advanced SQL Tuning Features of Oracle Database 11g DBA s New Best Friend: Advanced SQL Tuning Features of Oracle Database 11g Peter Belknap, Sergey Koltakov, Jack Raitto The following is intended to outline our general product direction.

More information

Experimenting with bags (tables and query answers with duplicate rows):

Experimenting with bags (tables and query answers with duplicate rows): January 16, 2013 Activities CS 386/586 Experimenting with bags (tables and query answers with duplicate rows): Write an SQL query (and run it against the sailors database) that does the following: 1. List

More information

Oracle Database 12c: SQL Tuning for Developers

Oracle Database 12c: SQL Tuning for Developers Oracle Database 12c: SQL Tuning for Developers Student Guide Volume I D79995GC10 Edition 1.0 December 2016 D84109 Learn more from Oracle University at education.oracle.com Author Dimpi Rani Sarmah Technical

More information

In This Lecture. Yet More SQL SELECT ORDER BY. SQL SELECT Overview. ORDER BY Example. ORDER BY Example. Yet more SQL

In This Lecture. Yet More SQL SELECT ORDER BY. SQL SELECT Overview. ORDER BY Example. ORDER BY Example. Yet more SQL In This Lecture Yet More SQL Database Systems Lecture 9 Natasha Alechina Yet more SQL ORDER BY Aggregate functions and HAVING etc. For more information Connoly and Begg Chapter 5 Ullman and Widom Chapter

More information

OWB Tuning. Methods to tune OWB mappings and flows that leverage your existing Oracle tuning expertise!

OWB Tuning. Methods to tune OWB mappings and flows that leverage your existing Oracle tuning expertise! OWB Tuning Methods to tune OWB mappings and flows that leverage your existing Oracle tuning expertise! 1 Need - Common Situation System loads 100k records daily with no apparent issues (2 hour load time)

More information

MWR InfoSecurity Security Advisory. Oracle Enterprise Manager SQL Injection Advisory. 1 st February 2010

MWR InfoSecurity Security Advisory. Oracle Enterprise Manager SQL Injection Advisory. 1 st February 2010 MWR InfoSecurity Security Advisory Oracle Enterprise Manager SQL Injection Advisory 1 st February 2010 2010-11-12 Page 1 of 8 CONTENTS CONTENTS 1 Detailed Vulnerability Description... 4 1.1 Introduction...

More information

Hints (definition 1) on Hints (definition 2)

Hints (definition 1) on Hints (definition 2) Hints (definition 1) on Hints (definition 2) www.jlcomp.demon.co.uk jonathanlewis.wordpress.com Who am I? Independent Consultant. 23+ years in IT 20+ using Oracle Strategy, Design, Review Briefings, Seminars

More information

Oracle DB-Tuning Essentials

Oracle DB-Tuning Essentials Infrastructure at your Service. Oracle DB-Tuning Essentials Agenda 1. The DB server and the tuning environment 2. Objective, Tuning versus Troubleshooting, Cost Based Optimizer 3. Object statistics 4.

More information

SQL: The Sequel. Phil Rhodes TAIR 2013 February 11, Concurrent Session A6

SQL: The Sequel. Phil Rhodes TAIR 2013 February 11, Concurrent Session A6 SQL: The Sequel Phil Rhodes TAIR 2013 February 11, 2013 Concurrent Session A6 Topics Brief review Subqueries Updating Data Conditional Logic Multi table joins Reporting Topics Brief review Subqueries Updating

More information

optimization process (see Optimization process, CBO) RBO, 25 Cursor cache, 41, 42 child, 42 parent, 42

optimization process (see Optimization process, CBO) RBO, 25 Cursor cache, 41, 42 child, 42 parent, 42 Index A Access methods bitmap index access CONVERSION COUNT example, 251 INDEX COMBINE, INLIST, 252 manipulation operations, 249 operations, 248, 250 251 physical structure, 247 restricted ROWIDs, 248

More information

Querying Data with Transact-SQL

Querying Data with Transact-SQL Course 20761A: Querying Data with Transact-SQL Page 1 of 5 Querying Data with Transact-SQL Course 20761A: 2 days; Instructor-Led Introduction The main purpose of this 2 day instructor led course is to

More information

Full Throttle: SQL Tuning & Ressource Consumption Appr.

Full Throttle: SQL Tuning & Ressource Consumption Appr. Full Throttle: Oracle SQL Tuning & the Ressource Consumption Approach Volle Kanne: Oracle SQL Tuning mit dem Ressourcenansatz Martin Klier Performing Databases GmbH Mitterteich / Germany 2/43 The Self-Driving

More information

This presentation is for informational purposes only and may not be incorporated into a contract or agreement.

This presentation is for informational purposes only and may not be incorporated into a contract or agreement. This presentation is for informational purposes only and may not be incorporated into a contract or agreement. The following is intended to outline our general product direction. It is intended for information

More information

How to speed up a database which has gotten slow

How to speed up a database which has gotten slow Triad Area, NC USA E-mail: info@geniusone.com Web: http://geniusone.com How to speed up a database which has gotten slow hardware OS database parameters Blob fields Indices table design / table contents

More information

Databases (MariaDB/MySQL) CS401, Fall 2015

Databases (MariaDB/MySQL) CS401, Fall 2015 Databases (MariaDB/MySQL) CS401, Fall 2015 Database Basics Relational Database Method of structuring data as tables associated to each other by shared attributes. Tables (kind of like a Java class) have

More information

Copyright 2016 Ramez Elmasri and Shamkant B. Navathe

Copyright 2016 Ramez Elmasri and Shamkant B. Navathe CHAPTER 19 Query Optimization Introduction Query optimization Conducted by a query optimizer in a DBMS Goal: select best available strategy for executing query Based on information available Most RDBMSs

More information

Three types of sub queries are supported in SQL are Scalar, Row and Table sub queries.

Three types of sub queries are supported in SQL are Scalar, Row and Table sub queries. SQL Sub-Queries What are Sub queries? SQL Sub queries are the queries which are embedded inside another query. The embedded queries are called as INNER query & container query is called as OUTER query.

More information

ORACLE DATABASE 12C INTRODUCTION

ORACLE DATABASE 12C INTRODUCTION SECTOR / IT NON-TECHNICAL & CERTIFIED TRAINING COURSE In this training course, you gain the skills to unleash the power and flexibility of Oracle Database 12c, while gaining a solid foundation of database

More information

Oracle Database 11g: SQL and PL/SQL Fundamentals

Oracle Database 11g: SQL and PL/SQL Fundamentals Oracle University Contact Us: +33 (0) 1 57 60 20 81 Oracle Database 11g: SQL and PL/SQL Fundamentals Duration: 5 Days What you will learn In this course, students learn the fundamentals of SQL and PL/SQL

More information

Katharina Römer Principal Sales Consultant STCC Stuttgart ORACLE Deutschland GmbH

Katharina Römer Principal Sales Consultant STCC Stuttgart ORACLE Deutschland GmbH Katharina Römer Principal Sales Consultant STCC Stuttgart ORACLE Deutschland GmbH Performance Diagnosis Demystified: Best Practices for Oracle Database 10g Agenda Oracle Database 10g Performance Monitoring

More information

Oracle 1Z Oracle Database SQL Expert. Download Full Version :

Oracle 1Z Oracle Database SQL Expert. Download Full Version : Oracle 1Z0-047 Oracle Database SQL Expert Download Full Version : http://killexams.com/pass4sure/exam-detail/1z0-047 QUESTION: 270 View the Exhibit and examine the structure for the ORDERS and ORDER_ITEMS

More information

CS122 Lecture 10 Winter Term,

CS122 Lecture 10 Winter Term, CS122 Lecture 10 Winter Term, 2014-2015 2 Last Time: Plan Cos0ng Last time, introduced ways of approximating plan costs Number of rows each plan node produces Amount of disk IO the plan must perform Database

More information

DATABASE PERFORMANCE AND INDEXES. CS121: Relational Databases Fall 2017 Lecture 11

DATABASE PERFORMANCE AND INDEXES. CS121: Relational Databases Fall 2017 Lecture 11 DATABASE PERFORMANCE AND INDEXES CS121: Relational Databases Fall 2017 Lecture 11 Database Performance 2 Many situations where query performance needs to be improved e.g. as data size grows, query performance

More information

Five Things You Might Not Know About Oracle Database

Five Things You Might Not Know About Oracle Database Five Things You Might Not Know About Oracle Database Maria Colgan Oracle Database Product Management February 2018 @SQLMaria Safe Harbor Statement The following is intended to outline our general product

More information

Querying Data with Transact SQL Microsoft Official Curriculum (MOC 20761)

Querying Data with Transact SQL Microsoft Official Curriculum (MOC 20761) Querying Data with Transact SQL Microsoft Official Curriculum (MOC 20761) Course Length: 3 days Course Delivery: Traditional Classroom Online Live MOC on Demand Course Overview The main purpose of this

More information

Database Systems: Design, Implementation, and Management Tenth Edition. Chapter 8 Advanced SQL

Database Systems: Design, Implementation, and Management Tenth Edition. Chapter 8 Advanced SQL Database Systems: Design, Implementation, and Management Tenth Edition Chapter 8 Advanced SQL SQL Join Operators Join operation merges rows from two tables and returns the rows with one of the following:

More information

Short Summary of DB2 V4 Through V6 Changes

Short Summary of DB2 V4 Through V6 Changes IN THIS CHAPTER DB2 Version 6 Features DB2 Version 5 Features DB2 Version 4 Features Short Summary of DB2 V4 Through V6 Changes This appendix provides short checklists of features for the most recent versions

More information

SQL Tuning Reading Recent Data Fast

SQL Tuning Reading Recent Data Fast SQL Tuning Reading Recent Data Fast Dan Tow singingsql.com Introduction Time is the key to SQL tuning, in two respects: Query execution time is the key measure of a tuned query, the only measure that matters

More information

Addressing a Performance issue The drilldown approach. Laurent Léturgez

Addressing a Performance issue The drilldown approach. Laurent Léturgez Addressing a Performance issue Laurent Léturgez Whoami Oracle Consultant since 2001 Former developer (C, Java, perl, PL/SQL) Hadoop aficionado Owner@Premiseo: Data Management on Premises and in the Cloud

More information

DRAFT SOLUTION. Query 1(a) DATABASE MANAGEMENT SYSTEMS PRACTICE 1

DRAFT SOLUTION. Query 1(a) DATABASE MANAGEMENT SYSTEMS PRACTICE 1 DATABASE MANAGEMENT SYSTEMS PRACTICE 1 DRAFT SOLUTION Remark: Solutions in Algebra reflects the choices and the values returned by the Oracle Optimizer. Query 1(a) The Oracle optimizer prefers to use the

More information

Oracle 11g Invisible Indexes Inderpal S. Johal. Inderpal S. Johal, Data Softech Inc.

Oracle 11g Invisible Indexes   Inderpal S. Johal. Inderpal S. Johal, Data Softech Inc. ORACLE 11G INVISIBLE INDEXES Inderpal S. Johal, Data Softech Inc. INTRODUCTION In this document we will work on another Oracle 11g interesting feature called Invisible Indexes. This will be very helpful

More information

Banner SQL 201. Georgia Summit Thursday, September 19th 4:10pm - 5:00pm Estes B

Banner SQL 201. Georgia Summit Thursday, September 19th 4:10pm - 5:00pm Estes B Banner SQL 201 Georgia Summit 2013 Thursday, September 19th 4:10pm - 5:00pm Estes B Zachary Hayes Associate Registrar Georgia Institute of Technology Introduction Who is this guy? 10 years within USG Self-taught

More information

1Z Oracle Database Performance and Tuning Essentials 2015 Exam Summary Syllabus Questions

1Z Oracle Database Performance and Tuning Essentials 2015 Exam Summary Syllabus Questions 1Z0-417 Oracle Database Performance and Tuning Essentials 2015 Exam Summary Syllabus Questions Table of Contents Introduction to 1Z0-417 Exam on Oracle Database Performance and Tuning Essentials 2015...

More information

SQL. Dean Williamson, Ph.D. Assistant Vice President Institutional Research, Effectiveness, Analysis & Accreditation Prairie View A&M University

SQL. Dean Williamson, Ph.D. Assistant Vice President Institutional Research, Effectiveness, Analysis & Accreditation Prairie View A&M University SQL Dean Williamson, Ph.D. Assistant Vice President Institutional Research, Effectiveness, Analysis & Accreditation Prairie View A&M University SQL 1965: Maron & Levien propose Relational Data File 1968:

More information

Hints (definition 1) on Hints (definition 2)

Hints (definition 1) on Hints (definition 2) Hints (definition 1) on Hints (definition 2) www.jlcomp.demon.co.uk jonathanlewis.wordpress.com Who am I? Independent Consultant. 23+ years in IT 20+ using Oracle Strategy, Design, Review Briefings, Seminars

More information

Introduction to Computer Science and Business

Introduction to Computer Science and Business Introduction to Computer Science and Business This is the second portion of the Database Design and Programming with SQL course. In this portion, students implement their database design by creating a

More information

The Oracle Optimizer Explain the Explain Plan O R A C L E W H I T E P A P E R A P R I L

The Oracle Optimizer Explain the Explain Plan O R A C L E W H I T E P A P E R A P R I L The Oracle Optimizer Explain the Explain Plan O R A C L E W H I T E P A P E R A P R I L 2 0 1 7 Table of Contents Introduction 1 The Execution Plan 2 Displaying the Execution Plan 3 What is Cost? 7 Understanding

More information

Oracle Database 11g: SQL Tuning Workshop. Student Guide

Oracle Database 11g: SQL Tuning Workshop. Student Guide Oracle Database 11g: SQL Tuning Workshop Student Guide D52163GC10 Edition 1.0 June 2008 Author Jean-François Verrier Technical Contributors and Reviewers Muriel Fry (Special thanks) Joel Goodman Harald

More information

Oracle Database: SQL and PL/SQL Fundamentals

Oracle Database: SQL and PL/SQL Fundamentals Oracle University Contact Us: 001-855-844-3881 & 001-800-514-06-9 7 Oracle Database: SQL and PL/SQL Fundamentals Duration: 5 Days What you will learn This Oracle Database: SQL and PL/SQL Fundamentals training

More information

Database and MySQL Temasek Polytechnic

Database and MySQL Temasek Polytechnic PHP5 Database and MySQL Temasek Polytechnic Database Lightning Fast Intro Database Management Organizing information using computer as the primary storage device Database The place where data are stored

More information

Real-World Performance Training SQL Performance

Real-World Performance Training SQL Performance Real-World Performance Training SQL Performance Real-World Performance Team Agenda 1 2 3 4 5 6 SQL and the Optimizer You As The Optimizer Optimization Strategies Why is my SQL slow? Optimizer Edges Cases

More information

SQL Performance Hero and OMG Method Play the Anti-patterns Greatest Hits. Jeff Jacobs Jeffrey Jacobs & Associates

SQL Performance Hero and OMG Method Play the Anti-patterns Greatest Hits. Jeff Jacobs Jeffrey Jacobs & Associates SQL Performance Hero and OMG Method Play the Anti-patterns Greatest Hits Jeff Jacobs Jeffrey Jacobs & Associates jmjacobs@jeffreyjacobs.com Survey Says DBAs Developers Architects Heavily non-oracle development

More information

IT-Tage Dezember 2016 Frankfurt am Main Maritim Hotel

IT-Tage Dezember 2016 Frankfurt am Main Maritim Hotel www.it-tage.org IT-Tage 2016 12.-15.Dezember 2016 Frankfurt am Main Maritim Hotel The Bad One Into Your Crop - SQL Tuning Analysis for DBAs Die Schlechten ins Kröpfchen - SQL Analyse für DBAs Martin Klier

More information

Estimating Cardinality: Use of Jonathan Lewis CBO methodology

Estimating Cardinality: Use of Jonathan Lewis CBO methodology Estimating Cardinality: Use of Jonathan Lewis CBO methodology Dave Abercrombie Principal Database Architect, Convio NoCOUG Fall Conference 2010 1 2009 Convio, Inc. Cost-Based Oracle Fundamentals By Jonathan

More information

Tuning slow queries after an upgrade

Tuning slow queries after an upgrade Tuning slow queries after an upgrade Who we are Experts At Your Service > Over 50 specialists in IT infrastructure > Certified, experienced, passionate Based In Switzerland > 100% self-financed Swiss company

More information

Oracle Database: SQL and PL/SQL Fundamentals Ed 2

Oracle Database: SQL and PL/SQL Fundamentals Ed 2 Oracle University Contact Us: Local: 1800 103 4775 Intl: +91 80 67863102 Oracle Database: SQL and PL/SQL Fundamentals Ed 2 Duration: 5 Days What you will learn This Oracle Database: SQL and PL/SQL Fundamentals

More information

Oracle 1Z Oracle Database 11g Performance Tuning.

Oracle 1Z Oracle Database 11g Performance Tuning. Oracle 1Z0-054 Oracle Database 11g Performance Tuning http://killexams.com/exam-detail/1z0-054 C. Query v$session to gather statistics of the individual sessions for the workload created by the jobs. D.

More information

Independent consultant. Oracle ACE Director. Member of OakTable Network. Available for consulting In-house workshops. Performance Troubleshooting

Independent consultant. Oracle ACE Director. Member of OakTable Network. Available for consulting In-house workshops. Performance Troubleshooting Independent consultant Available for consulting In-house workshops Cost-Based Optimizer Performance By Design Performance Troubleshooting Oracle ACE Director Member of OakTable Network Optimizer Basics

More information

SQL. SQL Data Manipulation: Queries

SQL. SQL Data Manipulation: Queries SQL Data Manipulation: Queries ISYS 464 Spring 2003 Topic 09 1 SQL SQL: Structured Query Language Pronounced: "S Q L" or "sequel" Developed by IBM in San Jose for its experimental relational database management

More information

Oracle Database: Introduction to SQL Ed 2

Oracle Database: Introduction to SQL Ed 2 Oracle University Contact Us: +40 21 3678820 Oracle Database: Introduction to SQL Ed 2 Duration: 5 Days What you will learn This Oracle Database 12c: Introduction to SQL training helps you write subqueries,

More information

Tosska SQL Tuning Expert Pro for Oracle

Tosska SQL Tuning Expert Pro for Oracle Tosska SQL Tuning Expert Pro for Oracle Intelligent SQL tuning without touching your source code It is not another SQL Tuning tool There have been already a lot of SQL tuning products in the market providing

More information

Tips to Write Effective Queries and EXPLAIN PLAN

Tips to Write Effective Queries and EXPLAIN PLAN Tips to Write Effective Queries and EXPLAIN PLAN Contents SQL Statement Processing Phases AutoTrace EXPLAIN PLAN Explain Plan Using SQL ID Explain Plan from Active Session (Using TOP) Explain Plan Operations

More information

Querying Data with Transact-SQL

Querying Data with Transact-SQL Querying Data with Transact-SQL Course: 20761 Course Details Audience(s): IT Professional(s) Technology: Microsoft SQL Server 2016 Duration: 24 HRs. ABOUT THIS COURSE This course is designed to introduce

More information

Sql Server Syllabus. Overview

Sql Server Syllabus. Overview Sql Server Syllabus Overview This SQL Server training teaches developers all the Transact-SQL skills they need to create database objects like Tables, Views, Stored procedures & Functions and triggers

More information

Query Rewrite. 9.1 Setting up Query Rewrite

Query Rewrite. 9.1 Setting up Query Rewrite Query Rewrite 9 In Chapter 7, we described materialized views, which can be used to precompute and store results of frequently used queries. A major benefit of doing this is that you can use query rewrite

More information

Common Performance Monitoring Mistakes

Common Performance Monitoring Mistakes Common Performance Monitoring Mistakes Virag Saksena CEO Auptyma Corporation peakperformance@auptyma.com Tuning Approach BUS X SYS Identify slow business actions Correlate the two Find system bottlenecks

More information

Independent consultant. Oracle ACE Director. Member of OakTable Network. Available for consulting In-house workshops. Performance Troubleshooting

Independent consultant. Oracle ACE Director. Member of OakTable Network. Available for consulting In-house workshops. Performance Troubleshooting Independent consultant Available for consulting In-house workshops Cost-Based Optimizer Performance By Design Performance Troubleshooting Oracle ACE Director Member of OakTable Network Optimizer Basics

More information

CS Reading Packet: "Views, and Simple Reports - Part 1"

CS Reading Packet: Views, and Simple Reports - Part 1 CS 325 - Reading Packet: "Views, and Simple Reports - Part 1" p. 1 Sources: CS 325 - Reading Packet: "Views, and Simple Reports - Part 1" * Oracle9i Programming: A Primer, Rajshekhar Sunderraman, Addison

More information

Database Systems: Design, Implementation, and Management Tenth Edition. Chapter 8 Advanced SQL

Database Systems: Design, Implementation, and Management Tenth Edition. Chapter 8 Advanced SQL Database Systems: Design, Implementation, and Management Tenth Edition Chapter 8 Advanced SQL Objectives In this chapter, you will learn: How to use the advanced SQL JOIN operator syntax About the different

More information

CS Final Exam Review Suggestions

CS Final Exam Review Suggestions CS 325 - Final Exam Review Suggestions p. 1 last modified: 2017-12-06 CS 325 - Final Exam Review Suggestions Based on suggestions from Prof. Deb Pires from UCLA: Because of the research-supported learning

More information

Database Management System Dr. S. Srinath Department of Computer Science & Engineering Indian Institute of Technology, Madras Lecture No.

Database Management System Dr. S. Srinath Department of Computer Science & Engineering Indian Institute of Technology, Madras Lecture No. Database Management System Dr. S. Srinath Department of Computer Science & Engineering Indian Institute of Technology, Madras Lecture No. # 5 Structured Query Language Hello and greetings. In the ongoing

More information

Tuning based on Wall Clock Time instead of Elapsed Time

Tuning based on Wall Clock Time instead of Elapsed Time Tuning based on Wall Clock Time instead of Elapsed Time Wall Clock Time Tuning in Databases Gerwin Hendriksen Principal Consultant gerwin.hendriksen@axisinto.nl Version 2.0 13 June 2017 Agenda: Tuning

More information

Table of Contents. PDF created with FinePrint pdffactory Pro trial version

Table of Contents. PDF created with FinePrint pdffactory Pro trial version Table of Contents Course Description The SQL Course covers relational database principles and Oracle concepts, writing basic SQL statements, restricting and sorting data, and using single-row functions.

More information

Oracle. Professional. WITH Function-Based Indexes (FBIs), I was able to alter an execution. Avoid Costly Joins with FBIs Pedro Bizarro.

Oracle. Professional. WITH Function-Based Indexes (FBIs), I was able to alter an execution. Avoid Costly Joins with FBIs Pedro Bizarro. Oracle Solutions for High-End Oracle DBAs and Developers Professional Avoid Costly Joins with FBIs Pedro Bizarro In this article, Pedro Bizarro describes how to use Function-Based Indexes to avoid costly

More information