Oracle Sql Tuning- A Framework

Size: px
Start display at page:

Download "Oracle Sql Tuning- A Framework"

Transcription

1 Oracle Sql Tuning- A Framework Prepared by Saurabh Kumar Mishra Performance Engineering & Enhancement offerings (PE2) Infosys Technologies Limited (NASDAQ: INFY) saurabhkumar_mishra@infosys.com This paper describes a framework for Tuning Oracle Queries which leads to provide maximum improvement in execution time. It includes the practical examples which shows, how to use this framework. INTRODUCTION Currently rdbms systems such as oltp databases with huge records getting processed per unit of time uses complex logics which leads to usage of aggregate functions, union, union-all, minus, exists and group by views etc. Some of the parameter which developers/dba commonly use while tuning any queries are generating explain plan by using plan table or by generating trace files for any session, but analyzing what is affecting the query performance before starting tuning is the most important step. This paper will provide a step wise approach for tuning the plsql or sqls. Over the time period SQL has been used extensively in rdbms systems. I will be discussing in this paper specifically about Oracle with a generalized approach. In oracle Sql execution time completely depends on components such as Query Optimizer and Query execution engines. Query Optimizer A typical query optimizer; the parsed query will come from parser as an input to the optimizer. The next step is generation of potential execution plans based on availability of available access paths and hints which is task of query transformer. Estimator will then use the dictionary tables like dba_tables, dba_tab_columns, dba_indexes, dba _tab_partitions etc to generate the cost for each plan. The dictionary tables play here an important role in collection of statistics like data distribution and storage characteristics of tables, indexes, partitions accessed by the sqls. Once this cost is calculated the Plan Generator will select the lowest cost query plan and will provide it to row source generator for execution. So for execution of any query the key role will be played by the statistics generation in dictionary tables/views, which can be stated as the first prerequisite for any query tuning activity. 1 P age

2 Framework Collect the Timing for the existing Untuned Query. Collect Statistics in Dictionary Tables Evaluation of Statistics captured. Collect SGA sizing details, along with hit ratios (Database Buffer, Library Cache) Generate Explain Plan Analyse Explain Plan Object level Design Evaluation Evaluate Predicates Query Level Design Evaluation Evaluate Joins Evaluate Indexing Evaluate Nested Queries Evaluate Partitioned Tables Evaluate Usage of Functions Evaluate Usage of Hints Recommendation application Functional Testing Collect the Improvement forthe tuned Query. The framework gives you an idea right from the starting of query tuning spreading across touching database level tuning aspects relevant to Sql tuning. Top to bottom approach in this framework will analyze each aspect involved in query tuning, which results in high performing queries as an output. 2 P age

3 Descriptions Each step in the framework plays a significant role in tuning of queries, but the first and the last steps i.e. collection of before and after results the response time with the no of record count each query is generating play a vital role. Along with this collection of load (on server & database) at which you are executing the queries and gathering the results is also important. Some tuning expert also uses cost as the base line for tuning of queries and analyzing the improvement, which can be little distractive when you are looking at the response time as the major factor in tuning. So Sql tuning can generally can be divided into: o Tuning for best response time, o Tuning for best throughput (i.e. less usage of resources in db and server). But again what is considered as best tuning practice is, the query should give the best response time using the least resource, So you need to keep in mind both cost and response time in to factor while tuning Sql queries. The next step before you actually begin with generation of explain_plan is collection and evaluation of Statistics available for Objects (tables and indexes). Statistics Collection and Analysis DBMS_STATS and Analyze are the two tools available which are used to collect table and index level statistics in oracle, which will be used by oracle optimizer to choose the best execution plan. Once the statistics are generated we need to evaluate the statistics gathered. The parameters like estimate_percent, block_sample, method_opt, and cascade are the parameters which address statistics accuracy and performance in dbms_stats which are one big advantage over old analyse command. Collection using dbms_stats can be done using following syntax: EXECUTE dbms_stats.gather_table_stats(ownname=>'abc', tabname=>'abc_tab', estimate_percent=>1,block_sample=true, method_opt='for ALL COLUMNS SIZE 1', cascade=>true) Ownname is the table owner; tabname is the table_name which we are going to collect statistics. Now, estimate_percent, block_sample, method_opt and cascade are the parameter which defines the accuracy of the statistics. Mr. Terry [2] says, the recommended values for each are below, which again needs to be verified for each database are: Estimate_percent - Balancing performance of the gathering process and the accuracy of the statistics lies between 5 and 20 for estimate_percent. Five percent will probably work for most cases, but 20% may be advisable if really accurate statistics are needed. Gathering statistics separately for indexes is faster than the cascade=true option while gathering table statistics. Block_sample=true doesn t appear to appreciably speed up statistics gathering, while at the same time delivering somewhat less-accurate statistics. Using the SKEWONLY option to size histograms is inadvisable. Analysis the results generated by DBMS_STATS can be done by seeing the values captured in dictionary tables like dba_tab_columns, dba_indexes and dba_ind_columns, the columns which play significant role are num_rows, 3 P age

4 num_distinct and sample_size for tables, distinct_keys and sample_size for indexes. I will leave the analysis part to you using the best recommendations suggested above. Collection of SGA Details SGA (System Global Area) is the most important part of oracle database, it plays a vital role in storing the execution plans, caching of data blocks and so on. The most important are the two features: Storage of Execution Plan in Library Cache in Shared Pool- Library Cache Hit Ratio. Caching of data Blocks in Database Buffer Cache-Buffer Cache Hit Ratio. Above, hit ratio value should be collected before we start the tuning process; the standard for same is below: Buffer cache hit ratio from 95 to 98 percent is considered healthy. The Data Dictionary (library) Cache Hit Ratio should be at or above 95 Percent. Calculation of hit ratio, can be done using Statspack/AWR reports output or by continuous monitoring of system, if you see any deviation in this you should contact the DBA for changing the database parameters of SGA by using advisor available. Generation of Explain Plan Explain Plan is the most important thing which needs to be analyzed during query tuning, it can be generated using many tools like 1) Using Plan table available in UTLXPLAN.SQL, this table can be queried to get explain plan of query. a. explain plan for your-precious-sql-statement; b. Displaying the execution plan Select substr (lpad (' ', level-1) operation ' (' options ')', 1, 30) "Operation", object_name Object" from plan_table start with id = 0 connect by prior id=parent_id; 2) Using Quest tool TOAD for Oracle (or similar tools) and selecting the adequate contents like access predicates, filter predicates, CPU cost, time, optimizer_mode etc. 3) Using Tkprof to generate the report of the trace file by selecting any session from which queries are executing, in tkprof report you can analyze the I/O issues, execution and parse time difference. Analyse Explain Plan Explain plan once generated need to analyze based on parameters like, full table scans, full index scans, type of joins getting used(hash, nested loops, merge join, sort join ), total cost of query, cost increment pattern at each stage of join and table access paths used. If we broadly differentiate these parameters it will of two classes: a) Object level: - Object level will consist of table and index level parameters like access and filter predicates while joining tables by filtering the results. Usage of best practice needs to be checked here, and if not used recommendation has to be given or applied. b) Query level: - Query Level will consists of Types of joins, cost (CPU, I/O, overall) its increment pattern, execution time. 4 P age

5 Collection of these few point initially will be of great help while tuning in later stages, now in the paper I will use a complex example to explain each of these parameters. Query 1: A module query from a Batch processing system, first step where it collects all the matching values from the I_claims (Partitioned) and M_n_audit Table based on filters. SELECT * FROM (SELECT M_ID, N_A, L_NAME, D_R, E_DATE, T_DATE FROM (SELECT MBNDCA.M_ID, MBNDCA.N_A, MBNDCA.L_NAME, MBNDCA.D_R, MBNDCA.E_DATE, MBNDCA.T_DATE, R_FLAG, RANK () OVER (PARTITION BY MBNDCA.M_ID, MBNDCA.N_A ORDER BY MBNDCA.VERSION_N DESC, MBNDCA.M_NA_VER_ID DESC) R FROM M_N_AUDIT MBNDCA WHERE UPPER (M_ID) = UPPER (:V_M_ID) AND ( BETWEEN MBNDCA.E_DATE AND MBNDCA.T_DATE OR MBNDCA.E_DATE BETWEEN AND ) AND MBNDCA.LAST_UPDT_DATE <= SYSTIMESTAMP) WHERE R = 1 AND R_FLAG = 'A') MBNDCA, I_CLAIMS IC WHERE UPPER (MBNDCA.N_A) = UPPER (IC.N_A) AND IC.TR_STATUS! =:TR_STATUS_R AND ( DECODE ('CL', :C_TYPE, IC.C_ID, NULL) NOT LIKE :C_CUSTOMER OR DECODE ('PDP', :C_TYPE_PDP, IC.C_ID, NULL) = :PDP_CUST OR DECODE ('M', :C_MED, IC.C_ID, NULL) BETWEEN :PDP_CUST AND :MAPD_CUST_END OR DECODE (:V_C_TYPE_CODE, :CTYPE_MAPD, IC.C_ID, NULL ) BETWEEN :MAPD_CUST_START AND :MAPD_CUST_END ); So let s generate the explain plan using toad for oracle. Plan SELECT STATEMENT FIRST_ROWS Cost: 43 K Bytes: 1 M Cardinality: 8 K CPU Cost: 8 G IO Cost: 41 K Time: HASH JOIN Access Predicates: UPPER ("N_A") =UPPER ("IC"."N_A") Cost: 43 K Bytes: 1 M Cardinality: 8 K CPU Cost: 8 G IO Cost: 41 K Time: VIEW Filter Predicates: "R"=1 AND "R_FLAG"='A' Cost: 44 Bytes: 160 Cardinality: 4 CPU Cost: 14 M IO Cost: 41 Time: 1 2 WINDOW SORT PUSHED RANK Filter Predicates: RANK () OVER (PARTITION BY "MBNDCA"."M_ID","MBNDCA"."N_A" ORDER BY INTERNAL_FUNCTION ("MBNDCA"."VERSION_N") DESC, INTERNAL_FUNCTION ("MBNDCA"." M_NA_VER_ID ") DESC )<=1 Cost: 44 Bytes: 284 Cardinality: 4 CPU Cost: 14 M IO Cost: 41 Time: 1 1 TABLE ACCESS FULL TABLE M_N_AUDIT Filter Predicates: UPPER (TO_CHAR ("M_ID")) =UPPER (:V_M_ID) AND ("MBNDCA"."E_DATE"<= AND "MBNDCA"."T_DATE">= OR "MBNDCA"."E_DATE">= AND "MBNDCA"."E_DATE"<= ) AND SYS_EXTRACT_UTC (INTERNAL_FUNCTION ("MBNDCA"."LAST_UPDT_DATE"))<=SYS_EXTRACT_UTC(SYSTIMESTAMP(6)) Cost: 43 Bytes: 284 Cardinality: 4 CPU Cost: 8 M IO Cost: 41 Time: 1 5 PARTITION RANGE ALL Cost: 43 K Bytes: 30 M Cardinality: 193 K CPU Cost: 8 G IO Cost: 41 K Time: 511 Partition #: 5 Partitions accessed #1 - #6 4 TABLE ACCESS FULL TABLE I_CLAIMS Filter Predicates: "IC"."TR_STATUS"<>:TR_STATUS_R AND (DECODE ( CL, C_TYPE,"IC"."C_ID", NULL) NOT LIKE: C_CUSTOMER OR DECODE ( PDP, C_TYPE _PDP,"IC"."CUSTOMER_ID",NULL)=:PDP_CUST OR OR DECODE ('M', :C_MED, IC.C_ID, NULL) BETWEEN :PDP_CUST AND :MAPD_CUST_END OR DECODE (:V_C_TYPE_CODE, :CTYPE_MAPD, IC.C_ID, NULL ) BETWEEN :MAPD_CUST_START AND :MAPD_CUST_END ) Cost: 43 K Bytes: 30 M Cardinality: 193 K CPU Cost: 8 G IO Cost: 41 K Time: 511 Partition #: 5 Partitions accessed #1 - #6 5 P age

6 Collection of Parameters 1) Object Level:- Index Used- None. Tables Used (along with record count details). o I_claims- 1million rows in each partition. o M_n_audit- 10K records. Full Table Scans I_claims, M_n_audit Partition Accessed- All Partitions (#1-#6), data in #5 th Partition. Functions used in join Columns- Upper. Partition Key Utilization- No (I_claims range partitioned on date_submitted) Access Predicates o UPPER (MBNDCA.N_A) = UPPER (IC.N_A) Filer Predicates o Step (2) in explain plan for view MBNDCA. o Step (4) in explain Plan for table I_claims. 2) Query Level:- a. Cost Increased due to partition accessed fully i.e. all partitions getting accessed in query for Internal_claims table. b. Hash Join is applied due to presence of Big Table join with a comparative lesser record table, which intern results in FTS on both tables. c. Total Cost: 43K Total Execution Time Taken actual: 10 mins predicted Time is 511 secs. This above completes our Analysis of a Demo explain, which provide us most of the loop holes which needs to be fixed for tuning this query and bring down the response time. The analysis above will serve as an input while giving recommendations for tuning any such query. Recommendations So lets start analysing the results of explain plan, we should do it again in two steps one at query level and other at object level. As in above sample query: Object Level Recommendations: (Evaluate Indexing)No indexes are getting utilized which is resulting in FTS and Hash joins which are costlier; we should try to find out the needed index in the query in each table. o I_claims and M_N_AUDIT Access predicates used are N_A, so index should exist on this column in both of table. (Evaluate Partitioned Tables) I_claims is having a full partition access as the partitioning key is not used in the query which is date_submitted. This is the most common mistakes developer do while using partition tables in there query. So Partition key should be utilized by mentioning the range in query. Query Level Recommendations: (Evaluate Usage of functions) Also as upper is used even if a normal index is present optimizer will not expect it as it will expect a functional based index. So based on functionality and data in tables usage of upper should be evaluated and index should be created which interns remove Full Table Scan on both of tables. 6 P age

7 (Evaluate Joins) Hash join should be converted to nested loop or vice versa by evaluating the benefit in response time. (Evaluate Hints) Hints can be used to evaluate the usage on indexes if optimizer does not pickup newly index created, but as per regular practice hints should be removed while deploying code in to production/uat, as it is expected that statistics should be generated well in production/uat which will allow optimizer to use proper indexes. (Evaluate Nested Queries)On Table M_N_AUDIT Nested query exists based on rank on partition which may be required functionality, options has to find out to convert this functionality in to direct join of this table with I_claims in from clause. We can get these recommendations by using the guidelines/best practice for writing oracle sqls which can result in High performing queries. Some of the general Best practices for writing Sqls are: o Semi Joins(EXISTS and IN) Mr. Roger [3] says, If the main body of your query is highly selective, then an EXISTS clause might be more appropriate to semi-join to the target table. However, if the main body of your query is not so selective and the subquery (the target of the semi-join) is more selective, then an IN clause might be more appropriate. o Anti Joins (NOT EXISTS and NOT IN) with or Without Null. Mr. Roger [3] says, First consider how null values should be handled when deciding whether to use NOT EXISTS or NOT IN. If you need the special semantics provided by NOT IN, then your decision has been made. Otherwise, you should next consider whether or not the query might benefit from a merge or hash anti-join. If so, then you probably ought to choose NOT IN. If you decide to go with NOT IN but do not want the expression to evaluate to false if a null value is found, then make sure the subquery cannot return a null value. If there is no chance that the query will benefit from a merge or hash anti-join and the special semantics of NOT IN are not desired, then you might want to select the NOT EXISTS construct so that there is a better chance Oracle will perform an efficient filter instead of an inefficient nested loops anti-join. o Mr. Hervé [4] says, o Avoid NOT in or NOT = on indexed columns. They prevent the optimizer from using indexes. Use where amount > 0 instead of where amount! = 0. o Avoid writing where project category is not null. Nulls can prevent the optimizer from using an index. o Consider using IN or UNION in place of OR on indexed columns. ORs on indexed columns cause the optimizer to perform a full table scan. o Avoid calculations on indexed columns. Write WHERE approved_amt > 26000/3 instead of WHERE approved_amt /3 > o Consider replacing outer joins on indexed columns with UNIONs. A nested loop outer takes more time than a nested loop unioned with another table access by index. o WHERE EXISTS sub-queries can be better than join if can you reduce drastically the number of records in driver query. Otherwise, join is better. o WHERE EXISTS can be better than join when driving from parent records and want to make sure that at least on child exists. Optimizer knows to bail out as soon as finds one record. Join would get all records and then distinct them! o Evaluate Views If a view joins 3 extra tables to retrieve data that you do not need, don't use the view! 7 P age

8 o When joining 2 views that themselves select from other views, check that the 2 views that you are using do not join the same tables! Avoid multiple layers of view. For example, look for queries based on views that are themselves views. It may be desirable to encapsulate from a development point of view. But from a performance point of view, you lose control and understanding of exactly how much task loading your query will generate for the system. Look for tables/views that add no value to the query. Try to remove table joins by getting the data from another table in the join. Remove Unnecessary Sqls Overheads. Try to reduce no of joins in a query of a cursor, by seeing no of rows in output you need, ex... If the EMP table has rows and you are joining it with Dept table to get 2000 odd rows acted a group by to get. Example: Declare Cursor c1 is select e.deptno,e.category,d.description,count(*) from dept d,emp e Where d.deptno= e.deptno group by e.deptno,e.category,d.description; Begin For xx in c1 loop --- End loop; End; Alternative to above code: Declare Xdept Number: = -9999; Xdesc varchar2 (60); Cursor c1 is select e.deptno, e.category, count (*) from EMP EGroup by e.deptno, e.category; Cursor c2 is select d.description from dept d where d.deptno= xdept; Begin For xx in c1 loop --- If Xdept! =xx.deptno Xdept: = xx.deptno; Open c2; Fetch c2 into Xdesc; End if; --- End loop; End; Now 12 is no of distinct dept return by join in the query. o General Guidelines while coding Mr. Hervé [4]: 1) Understand the data. Look around table structures and data. Get a feel for the data model and how to navigate it. 2) Do not code Large, complex plsql blocks, broke down them to smaller, simpler, self-contained blocks. 3) Try to see while making sqls columns referenced in queries are having indexes or not. These columns can be the select list columns and any required join or sort columns. 4) Consider adding small frequently accessed columns (not frequently updated) to an existing index. This will enable some queries to work only with the index, not the table. 5) IOTs and Index clusters usage should be checked. 8 P age

9 You can use and add on to this general guidelines while tuning queries of any application, as it varies the different aspects of sqls (including new features available with 11g and 10g )will be utilized. This completes the Query Tuning recommendations, after applying recommendations to application two final steps should occur: o Functional Testing of changes done after applying recommendations. o Query Improvement Gained analysis, which including analysing again the explain plan (w.r.t. Cost, Response time) and Overall Application Improvement needed gained or not. If not again the tuning cycle should start right from Generating explain plan. Conclusion Once done with Above all steps, a query is said to be TUNED. A query Tuning exercise does not only involve tuning of identified queries it is also important to execute all the steps mentioned in this paper to get the maximum improvement in response time. The framework mentioned above is getting used by many DBAs and Sql tuning specialists but an understanding of the existing engineering framework is developed her which is necessary for making effective contribution to the area of query optimization. References 1. What s Up with Dbms Stats? By Terry Sutton Database Specialists, Inc. 2. Speeding Up Queries with Semi-Joins and Anti-Joins: How Oracle Evaluates EXISTS, NOT EXISTS, IN, and NOT IN. Roger Schrag. Database Specialists, Inc By Hervé Deschamps. Further Reading This paper can be extended to include all best practices for Sql and PLSQL coding with Plsql tuning as well. Also Optimizer behaviour can be studied to evaluate different sets of queries based on Database parameter settings. 9 P age

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

.. Spring 2008 CSC 468: DBMS Implementation Alexander Dekhtyar..

.. Spring 2008 CSC 468: DBMS Implementation Alexander Dekhtyar.. .. Spring 2008 CSC 468: DBMS Implementation Alexander Dekhtyar.. Tuning Oracle Query Execution Performance The performance of SQL queries in Oracle can be modified in a number of ways: By selecting a specific

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

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

Effect of Stats on Two Columns Optimizer Statistics on tables and indexes are vital. Arup Nanda

Effect of Stats on Two Columns Optimizer Statistics on tables and indexes are vital. Arup Nanda Stats with Intelligence Arup Nanda Longtime Oracle DBA Effect of Stats on Two Columns Optimizer Statistics on tables and indexes are vital for the optimizer to compute optimal execution plans If there

More information

7. Query Processing and Optimization

7. Query Processing and Optimization 7. Query Processing and Optimization Processing a Query 103 Indexing for Performance Simple (individual) index B + -tree index Matching index scan vs nonmatching index scan Unique index one entry and one

More information

20 Essential Oracle SQL and PL/SQL Tuning Tips. John Mullins

20 Essential Oracle SQL and PL/SQL Tuning Tips. John Mullins 20 Essential Oracle SQL and PL/SQL Tuning Tips John Mullins jmullins@themisinc.com www.themisinc.com www.themisinc.com/webinars Presenter John Mullins Themis Inc. (jmullins@themisinc.com) 30+ years of

More information

D B M G Data Base and Data Mining Group of Politecnico di Torino

D B M G Data Base and Data Mining Group of Politecnico di Torino Database Management Data Base and Data Mining Group of tania.cerquitelli@polito.it A.A. 2014-2015 Optimizer operations Operation Evaluation of expressions and conditions Statement transformation Description

More information

Exploring Best Practices and Guidelines for Tuning SQL Statements

Exploring Best Practices and Guidelines for Tuning SQL Statements Exploring Best Practices and Guidelines for Tuning SQL Statements Ami Aharonovich Oracle ACE & OCP Ami@DBAces.co.il Oracle ACE Who am I Oracle Certified Professional DBA (OCP) Founder and CEO, DBAces Oracle

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 11gR2 Optimizer Insights

Oracle Database 11gR2 Optimizer Insights Oracle Database 11gR2 Optimizer Insights Marcus Bender Distinguished Sales Consultant Presales Fellow Strategic Technical Support (STU) ORACLE Deutschland GmbH, Geschäftsstelle Hamburg Parallel Execution

More information

Oracle SQL Tuning for Developers Workshop Student Guide - Volume I

Oracle SQL Tuning for Developers Workshop Student Guide - Volume I Oracle SQL Tuning for Developers Workshop Student Guide - Volume I D73549GC10 Edition 1.0 October 2012 D78799 Authors Sean Kim Dimpi Rani Sarmah Technical Contributors and Reviewers Nancy Greenberg Swarnapriya

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

Cost Based Optimizer CBO: Configuration Roadmap

Cost Based Optimizer CBO: Configuration Roadmap Cost Based Optimizer CBO: Configuration Roadmap Christian Antognini Sandro Crepaldi DOAG Regionaltreffen Hamburg/Nord 13.09.05, Hamburg Disclaimer > The CBO changes from release to release > It s difficult

More information

Advanced Oracle SQL Tuning v3.0 by Tanel Poder

Advanced Oracle SQL Tuning v3.0 by Tanel Poder Advanced Oracle SQL Tuning v3.0 by Tanel Poder /seminar Training overview This training session is entirely about making Oracle SQL execution run faster and more efficiently, understanding the root causes

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

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

INFSCI 2711 Database Analysis and Design Example I for Final Exam: Solutions

INFSCI 2711 Database Analysis and Design Example I for Final Exam: Solutions Dr. Stefan Brass July 26, 2001 School of Information Sciences University of Pittsburgh INFSCI 2711 Database Analysis and Design Example I for Final Exam: Solutions General Remarks The average was 22.2

More information

Arrays are a very commonly used programming language construct, but have limited support within relational databases. Although an XML document or

Arrays are a very commonly used programming language construct, but have limited support within relational databases. Although an XML document or Performance problems come in many flavors, with many different causes and many different solutions. I've run into a number of these that I have not seen written about or presented elsewhere and I want

More information

Improving Database Performance: SQL Query Optimization

Improving Database Performance: SQL Query Optimization CHAPTER 21 Improving Database Performance: SQL Query Optimization Performance tuning is the one area in which the Oracle DBA probably spends most of his or her time. If you re a DBA helping developers

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

Vijay Mahawar

Vijay Mahawar Vijay Mahawar http://www.mahawar.net/blog Saturday, 2 February, 2013 I am Vijay Mahawar, an Oracle Technologist. I am a member of AIOUG, ODTUG and OTN. I am certified in Oracle and hold OCP in Oracle 11g

More information

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

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

Query Optimization, part 2: query plans in practice

Query Optimization, part 2: query plans in practice Query Optimization, part 2: query plans in practice CS634 Lecture 13 Slides by E. O Neil based on Database Management Systems 3 rd ed, Ramakrishnan and Gehrke Working with the Oracle query optimizer First

More information

Oracle Performance Tuning. Overview of performance tuning strategies

Oracle Performance Tuning. Overview of performance tuning strategies Oracle Performance Tuning Overview of performance tuning strategies Allan Young June 2008 What is tuning? Group of activities used to optimize and homogenize the performance of a database Maximize use

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

ENHANCING DATABASE PERFORMANCE

ENHANCING DATABASE PERFORMANCE ENHANCING DATABASE PERFORMANCE Performance Topics Monitoring Load Balancing Defragmenting Free Space Striping Tables Using Clusters Using Efficient Table Structures Using Indexing Optimizing Queries Supplying

More information

Query Optimizer, Who Influences & How it works ++ optimization techniques

Query Optimizer, Who Influences & How it works ++ optimization techniques Query Optimizer, Who Influences & How it works ++ optimization techniques AIOUG : ODevC Yatra 2018, India Chandan Tanwani Senior Application Engineer Oracle Financial Services Software Ltd. Copyright 2018

More information

Top 10 Features in Oracle 12C for Developers and DBA s Gary Bhandarkar Merck & Co., Inc., Rahway, NJ USA

Top 10 Features in Oracle 12C for Developers and DBA s Gary Bhandarkar Merck & Co., Inc., Rahway, NJ USA Top 10 Features in Oracle 12C for Developers and DBA s Gary Bhandarkar Merck & Co., Inc., Rahway, NJ USA Agenda Background ORACLE 12c FEATURES CONCLUSION 2 Top 10 Oracle 12c Features Feature 1: ADAPTIVE

More information

Managing Performance Through Versioning of Statistics

Managing Performance Through Versioning of Statistics Managing Performance Through Versioning of Statistics Claudia Fernandez Technical Services Manager claudia@leccotech.com LECCOTECH www.leccotech.com NoCOUG, August 2003 "Managing Performance Through Versioning

More information

Die Wundertüte DBMS_STATS: Überraschungen in der Praxis

Die Wundertüte DBMS_STATS: Überraschungen in der Praxis Die Wundertüte DBMS_STATS: Überraschungen in der Praxis, 14. Mai 2018 Dani Schnider, Trivadis AG @dani_schnider danischnider.wordpress.com BASEL BERN BRUGG DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. GENEVA

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

Infrastructure at your Service. In-Memory-Pläne für den 12.2-Optimizer: Teuer oder billig?

Infrastructure at your Service. In-Memory-Pläne für den 12.2-Optimizer: Teuer oder billig? Infrastructure at your Service. In-Memory-Pläne für den 12.2-Optimizer: Teuer oder billig? About me Infrastructure at your Service. Clemens Bleile Senior Consultant Oracle Certified Professional DB 11g,

More information

Pitfalls & Surprises with DBMS_STATS: How to Solve Them

Pitfalls & Surprises with DBMS_STATS: How to Solve Them Pitfalls & Surprises with DBMS_STATS: How to Solve Them Dani Schnider, Trivadis AG @dani_schnider danischnider.wordpress.com BASEL BERN BRUGG DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. GENEVA HAMBURG COPENHAGEN

More information

Performance Optimization for Informatica Data Services ( Hotfix 3)

Performance Optimization for Informatica Data Services ( Hotfix 3) Performance Optimization for Informatica Data Services (9.5.0-9.6.1 Hotfix 3) 1993-2015 Informatica Corporation. No part of this document may be reproduced or transmitted in any form, by any means (electronic,

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

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

Oracle 10g Dbms Stats Gather Table Stats Examples

Oracle 10g Dbms Stats Gather Table Stats Examples Oracle 10g Dbms Stats Gather Table Stats Examples Summary of DBMS_COMPRESSION Subprograms Permissions for Managing and Querying Cube Materialized Views Example of SQL Aggregation Upgrading 10g Analytic

More information

Data Organization and Processing I

Data Organization and Processing I Data Organization and Processing I Data Organization in Oracle Server 11g R2 (NDBI007) RNDr. Michal Kopecký, Ph.D. http://www.ms.mff.cuni.cz/~kopecky Database structure o Database structure o Database

More information

Interview Questions on DBMS and SQL [Compiled by M V Kamal, Associate Professor, CSE Dept]

Interview Questions on DBMS and SQL [Compiled by M V Kamal, Associate Professor, CSE Dept] Interview Questions on DBMS and SQL [Compiled by M V Kamal, Associate Professor, CSE Dept] 1. What is DBMS? A Database Management System (DBMS) is a program that controls creation, maintenance and use

More information

EZY Intellect Pte. Ltd., #1 Changi North Street 1, Singapore

EZY Intellect Pte. Ltd., #1 Changi North Street 1, Singapore Oracle Database 12c: Performance Management and Tuning NEW Duration: 5 Days What you will learn In the Oracle Database 12c: Performance Management and Tuning course, learn about the performance analysis

More information

Datenbanksysteme II: Caching and File Structures. Ulf Leser

Datenbanksysteme II: Caching and File Structures. Ulf Leser Datenbanksysteme II: Caching and File Structures Ulf Leser Content of this Lecture Caching Overview Accessing data Cache replacement strategies Prefetching File structure Index Files Ulf Leser: Implementation

More information

DB2 SQL Class Outline

DB2 SQL Class Outline DB2 SQL Class Outline The Basics of SQL Introduction Finding Your Current Schema Setting Your Default SCHEMA SELECT * (All Columns) in a Table SELECT Specific Columns in a Table Commas in the Front or

More information

Tuning with Statistics

Tuning with Statistics Tuning with Statistics Wolfgang Breitling breitliw@centrexcc.com Agenda The DBMS_STATS Package Uses of DBMS_STATS beyond analyze The stattab Table Transferring Statistics with the stattab Table Means to

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

DB2 9 for z/os Selected Query Performance Enhancements

DB2 9 for z/os Selected Query Performance Enhancements Session: C13 DB2 9 for z/os Selected Query Performance Enhancements James Guo IBM Silicon Valley Lab May 10, 2007 10:40 a.m. 11:40 a.m. Platform: DB2 for z/os 1 Table of Content Cross Query Block Optimization

More information

Copyright 2012, Oracle and/or its affiliates. All rights reserved.

Copyright 2012, Oracle and/or its affiliates. All rights reserved. 1 Oracle safe harbor statement The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not

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 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 1Z0-054 Exam Questions and Answers (PDF) Oracle 1Z0-054 Exam Questions 1Z0-054 BrainDumps

Oracle 1Z0-054 Exam Questions and Answers (PDF) Oracle 1Z0-054 Exam Questions 1Z0-054 BrainDumps Oracle 1Z0-054 Dumps with Valid 1Z0-054 Exam Questions PDF [2018] The Oracle 1Z0-054 Oracle Database 11g: Performance Tuning exam is an ultimate source for professionals to retain their credentials dynamic.

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

Oracle EXAM - 1Z Oracle Database 11g: Performance Tuning. Buy Full Product.

Oracle EXAM - 1Z Oracle Database 11g: Performance Tuning. Buy Full Product. Oracle EXAM - 1Z0-054 Oracle Database 11g: Performance Tuning Buy Full Product http://www.examskey.com/1z0-054.html Examskey Oracle 1Z0-054 exam demo product is here for you to test the quality of the

More information

Relational Database Index Design and the Optimizers

Relational Database Index Design and the Optimizers Relational Database Index Design and the Optimizers DB2, Oracle, SQL Server, et al. Tapio Lahdenmäki Michael Leach (C^WILEY- IX/INTERSCIENCE A JOHN WILEY & SONS, INC., PUBLICATION Contents Preface xv 1

More information

Session id: The Self-Managing Database: Guided Application and SQL Tuning

Session id: The Self-Managing Database: Guided Application and SQL Tuning Session id: 40713 The Self-Managing Database: Guided Application and SQL Tuning Lead Architects Benoit Dageville Khaled Yagoub Mohamed Zait Mohamed Ziauddin Agenda SQL Tuning Challenges Automatic SQL Tuning

More information

Oracle Database Performance Tuning, Benchmarks & Replication

Oracle Database Performance Tuning, Benchmarks & Replication Oracle Database Performance Tuning, Benchmarks & Replication Kapil Malhotra kapil.malhotra@software.dell.com Solutions Architect, Information Management Dell Software 2 11/29/2013 Software Database Tuning

More information

Oracle SQL & PL SQL Course

Oracle SQL & PL SQL Course Oracle SQL & PL SQL Course Complete Practical & Real-time Training Job Support Complete Practical Real-Time Scenarios Resume Preparation Lab Access Training Highlights Placement Support Support Certification

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

SQL Gone Wild: Taming Bad SQL the Easy Way (or the Hard Way) Sergey Koltakov Product Manager, Database Manageability

SQL Gone Wild: Taming Bad SQL the Easy Way (or the Hard Way) Sergey Koltakov Product Manager, Database Manageability SQL Gone Wild: Taming Bad SQL the Easy Way (or the Hard Way) Sergey Koltakov Product Manager, Database Manageability Oracle Enterprise Manager Top-Down, Integrated Application Management Complete, Open,

More information

Contents Contents Introduction Basic Steps in Query Processing Introduction Transformation of Relational Expressions...

Contents Contents Introduction Basic Steps in Query Processing Introduction Transformation of Relational Expressions... Contents Contents...283 Introduction...283 Basic Steps in Query Processing...284 Introduction...285 Transformation of Relational Expressions...287 Equivalence Rules...289 Transformation Example: Pushing

More information

Oracle. Exam Questions 1Z Oracle Database 11g Release 2: SQL Tuning Exam. Version:Demo

Oracle. Exam Questions 1Z Oracle Database 11g Release 2: SQL Tuning Exam. Version:Demo Oracle Exam Questions 1Z0-117 Oracle Database 11g Release 2: SQL Tuning Exam Version:Demo 1.You ran a high load SQL statement that used an index through the SQL Tuning Advisor and accepted its recommendation

More information

RNDr. Michal Kopecký, Ph.D. Department of Software Engineering, Faculty of Mathematics and Physics, Charles University in Prague

RNDr. Michal Kopecký, Ph.D. Department of Software Engineering, Faculty of Mathematics and Physics, Charles University in Prague seminář: Administrace Oracle (NDBI013) LS2017/18 RNDr. Michal Kopecký, Ph.D. Department of Software Engineering, Faculty of Mathematics and Physics, Charles University in Prague Database structure Database

More information

Data about data is database Select correct option: True False Partially True None of the Above

Data about data is database Select correct option: True False Partially True None of the Above Within a table, each primary key value. is a minimal super key is always the first field in each table must be numeric must be unique Foreign Key is A field in a table that matches a key field in another

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

Databases IIB: DBMS-Implementation Exercise Sheet 13

Databases IIB: DBMS-Implementation Exercise Sheet 13 Prof. Dr. Stefan Brass January 27, 2017 Institut für Informatik MLU Halle-Wittenberg Databases IIB: DBMS-Implementation Exercise Sheet 13 As requested by the students, the repetition questions a) will

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

Oracle Syllabus Course code-r10605 SQL

Oracle Syllabus Course code-r10605 SQL Oracle Syllabus Course code-r10605 SQL Writing Basic SQL SELECT Statements Basic SELECT Statement Selecting All Columns Selecting Specific Columns Writing SQL Statements Column Heading Defaults Arithmetic

More information

Oracle Database 12c: Performance Management and Tuning

Oracle Database 12c: Performance Management and Tuning Oracle University Contact Us: +43 (0)1 33 777 401 Oracle Database 12c: Performance Management and Tuning Duration: 5 Days What you will learn In the Oracle Database 12c: Performance Management and Tuning

More information

Database statistics gathering: Synopsis

Database statistics gathering: Synopsis Database statistics gathering: Synopsis Introduction It is known that having proper database statistics is crucial for query optimizer. Statistics should properly describe data within the database. To

More information

SQL Interview Questions

SQL Interview Questions SQL Interview Questions SQL stands for Structured Query Language. It is used as a programming language for querying Relational Database Management Systems. In this tutorial, we shall go through the basic

More information

Implementing Table Operations Using Structured Query Language (SQL) Using Multiple Operations. SQL: Structured Query Language

Implementing Table Operations Using Structured Query Language (SQL) Using Multiple Operations. SQL: Structured Query Language Implementing Table Operations Using Structured Query Language (SQL) Using Multiple Operations Show Only certain columns and rows from the join of Table A with Table B The implementation of table operations

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

Parser: SQL parse tree

Parser: SQL parse tree Jinze Liu Parser: SQL parse tree Good old lex & yacc Detect and reject syntax errors Validator: parse tree logical plan Detect and reject semantic errors Nonexistent tables/views/columns? Insufficient

More information

Introduction. Assessment Test. Chapter 1 Introduction to Performance Tuning 1. Chapter 2 Sources of Tuning Information 33

Introduction. Assessment Test. Chapter 1 Introduction to Performance Tuning 1. Chapter 2 Sources of Tuning Information 33 Contents at a Glance Introduction Assessment Test xvii xxvii Chapter 1 Introduction to Performance Tuning 1 Chapter 2 Sources of Tuning Information 33 Chapter 3 SQL Application Tuning and Design 85 Chapter

More information

Oracle Tuning Pack. Table Of Contents. 1 Introduction. 2 Installation and Configuration. 3 Documentation and Help. 4 Oracle SQL Analyze

Oracle Tuning Pack. Table Of Contents. 1 Introduction. 2 Installation and Configuration. 3 Documentation and Help. 4 Oracle SQL Analyze Oracle Tuning Pack Readme Release 2.1.0.0.0 for Windows February 2000 Part No. A76921-01 Table Of Contents 1 Introduction 2 Installation and Configuration 3 Documentation and Help 4 Oracle SQL Analyze

More information

Optimizer with Oracle Database 12c Release 2 O R A C L E W H I T E P A P E R J U N E

Optimizer with Oracle Database 12c Release 2 O R A C L E W H I T E P A P E R J U N E Optimizer with Oracle Database 12c Release 2 O R A C L E W H I T E P A P E R J U N E 2 0 1 7 Table of Contents Introduction 1 Adaptive Query Optimization 2 Optimizer Statistics 13 Optimizer Statistics

More information

Oracle PL/SQL - 12c & 11g [Basic PL/SQL & Advanced PL/SQL]

Oracle PL/SQL - 12c & 11g [Basic PL/SQL & Advanced PL/SQL] Chapter Overview of PL/SQL Programs Control Statements Using Loops within PLSQL Oracle PL/SQL - 12c & 11g [Basic PL/SQL & Advanced PL/SQL] Table of Contents Describe a PL/SQL program construct List the

More information

5. Single-row function

5. Single-row function 1. 2. Introduction Oracle 11g Oracle 11g Application Server Oracle database Relational and Object Relational Database Management system Oracle internet platform System Development Life cycle 3. Writing

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

Query Processing & Optimization

Query Processing & Optimization Query Processing & Optimization 1 Roadmap of This Lecture Overview of query processing Measures of Query Cost Selection Operation Sorting Join Operation Other Operations Evaluation of Expressions Introduction

More information

Query Processing and Query Optimization. Prof Monika Shah

Query Processing and Query Optimization. Prof Monika Shah Query Processing and Query Optimization Query Processing SQL Query Is in Library Cache? System catalog (Dict / Dict cache) Scan and verify relations Parse into parse tree (relational Calculus) View definitions

More information

THE DBMS_STATS PACKAGE

THE DBMS_STATS PACKAGE SQL TUNING WITH STATISTICS Wolfgang Breitling, Centrex Consulting Corporation This paper looks at the DBMS_STATS package and how it can be used beyond just the gathering of statistics in the tuning effort,

More information

Architettura Database Oracle

Architettura Database Oracle Architettura Database Oracle Shared Pool La shared pool consiste di: Data dictionary: cache che contiene informazioni relative agli oggetti del databse, lo storage ed i privilegi Library cache: contiene

More information

IT100: Oracle Administration

IT100: Oracle Administration IT100: Oracle Administration IT100 Rev.001 CMCT COURSE OUTLINE Page 1 of 8 Training Description: Introduction to Oracle Administration and Management is a five-day course designed to provide Oracle professionals

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

20461: Querying Microsoft SQL Server 2014 Databases

20461: Querying Microsoft SQL Server 2014 Databases Course Outline 20461: Querying Microsoft SQL Server 2014 Databases Module 1: Introduction to Microsoft SQL Server 2014 This module introduces the SQL Server platform and major tools. It discusses editions,

More information

Ensuring Optimal Performance. Vivek Sharma. 3 rd November 2012 Sangam 2012

Ensuring Optimal Performance. Vivek Sharma. 3 rd November 2012 Sangam 2012 Ensuring Optimal Performance Vivek Sharma 3 rd November 2012 Sangam 2012 Who am I? Around 12 Years using Oracle Products Certified DBA versions 8i Specializes in Performance Optimization COE Lead with

More information

Course Contents of ORACLE 9i

Course Contents of ORACLE 9i Overview of Oracle9i Server Architecture Course Contents of ORACLE 9i Responsibilities of a DBA Changing DBA Environments What is an Oracle Server? Oracle Versioning Server Architectural Overview Operating

More information

Using Oracle STATSPACK to assist with Application Performance Tuning

Using Oracle STATSPACK to assist with Application Performance Tuning Using Oracle STATSPACK to assist with Application Performance Tuning Scenario You are experiencing periodic performance problems with an application that uses a back-end Oracle database. Solution Introduction

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

Oracle Database 12c Performance Management and Tuning

Oracle Database 12c Performance Management and Tuning Course Code: OC12CPMT Vendor: Oracle Course Overview Duration: 5 RRP: POA Oracle Database 12c Performance Management and Tuning Overview In the Oracle Database 12c: Performance Management and Tuning course,

More information

Projects. Corporate Trainer s Profile. CMM (Capability Maturity Model) level Project Standard:- TECHNOLOGIES

Projects. Corporate Trainer s Profile. CMM (Capability Maturity Model) level Project Standard:- TECHNOLOGIES Corporate Trainer s Profile Corporate Trainers are having the experience of 4 to 12 years in development, working with TOP CMM level 5 comapnies (Project Leader /Project Manager ) qualified from NIT/IIT/IIM

More information

Learning Objectives : This chapter provides an introduction to performance tuning scenarios and its tools.

Learning Objectives : This chapter provides an introduction to performance tuning scenarios and its tools. Oracle Performance Tuning Oracle Performance Tuning DB Oracle Wait Category Wait AWR Cloud Controller Share Pool Tuning 12C Feature RAC Server Pool.1 New Feature in 12c.2.3 Basic Tuning Tools Learning

More information

Principles of Data Management

Principles of Data Management Principles of Data Management Alvin Lin August 2018 - December 2018 Structured Query Language Structured Query Language (SQL) was created at IBM in the 80s: SQL-86 (first standard) SQL-89 SQL-92 (what

More information

ORACLE 12C NEW FEATURE. A Resource Guide NOV 1, 2016 TECHGOEASY.COM

ORACLE 12C NEW FEATURE. A Resource Guide NOV 1, 2016 TECHGOEASY.COM ORACLE 12C NEW FEATURE A Resource Guide NOV 1, 2016 TECHGOEASY.COM 1 Oracle 12c New Feature MULTITENANT ARCHITECTURE AND PLUGGABLE DATABASE Why Multitenant Architecture introduced with 12c? Many Oracle

More information

DB2 SQL Tuning Tips for z/os Developers

DB2 SQL Tuning Tips for z/os Developers DB2 SQL Tuning Tips for z/os Developers Tony Andrews IBM Press, Pearson pic Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Paris Madrid Cape Town Sydney

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

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

Institute of Aga. Network Database LECTURER NIYAZ M. SALIH

Institute of Aga. Network Database LECTURER NIYAZ M. SALIH 2017 Institute of Aga Network Database LECTURER NIYAZ M. SALIH Database: A Database is a collection of related data organized in a way that data can be easily accessed, managed and updated. Any piece of

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