Anatomy of a SQL Tuning Session
|
|
|
- Brandon Reynolds
- 10 years ago
- Views:
Transcription
1 Anatomy of a SQL Tuning Session Wolfgang Breitling Copyright 2009 Centrex Consulting Corporation. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising and promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works must be obtained from Centrex Consulting.
2 Who am I Independent consultant since 1996 specializing in Oracle and Peoplesoft setup, administration, and performance tuning Member of the Oaktable Network 30+ years in database management DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle Oracle since 1993 (7.0.12) OCP certified DBA - 7, 8, 8i, 9i Mathematics major from University of Stuttgart 2
3 Using the R-Method in SQL Tuning Logical extension of TCF with the availability of v$sql_plan_statistics in 9i and up At the session level Set statistics_level = all Set _rowsource_execution_statistics = true At the sql level Use GATHER_PLAN_STATISTICS hint 3
4 The SQL SELECT BUSINESS_UNIT, VOUCHER_ID, BANK_SETID, BANK_CD, BANK_ACCT_KEY, NAME1, INVOICE_ID, GROSS_AMT, TXN_CURRENCY_CD, TO_CHAR(SCHEDULED_PAY_DT,'YYYY-MM-DD'), PYMNT_HOLD, PYMNT_HOLD_REASON, APPR_STATUS, EXPRESS_PAY, VENDOR_ID FROM PS_VCHR_HLD_VW A WHERE '12345' IN ( SELECT X.OPERATING_UNIT FROM PS_DISTRIB_LINE X WHERE A.VOUCHER_ID = X.VOUCHER_ID AND A.BUSINESS_UNIT = X.BUSINESS_UNIT) 4
5 Baseline Id Operation Name A-Time NESTED LOOPS 08: NESTED LOOPS OUTER 07: NESTED LOOPS 04: TABLE ACCESS BY INDEX ROWID PS_PYMNT_VCHR_XREF 04: INDEX SKIP SCAN PSBPYMNT_VCHR_XREF TABLE ACCESS BY INDEX ROWID PS_VENDOR INDEX UNIQUE SCAN PS_VENDOR TABLE ACCESS BY INDEX ROWID PS_VCH_APPR_DTL 02: INDEX UNIQUE SCAN PS_VCH_APPR_DTL TABLE ACCESS BY INDEX ROWID PS_VOUCHER 01: INDEX UNIQUE SCAN PS_VOUCHER 01: INDEX RANGE SCAN PSCDISTRIB_LINE Access= "A"."BUSINESS_UNIT"="B"."BUSINESS_UNIT" AND "A"."VOUCHER_ID"="B"."VOUCHER_ID 12 Access= "X"."OPERATING_UNIT"='12345' AND "X"."BUSINESS_UNIT"=:B1 AND "X"."VOUCHER_ID"=:B2 5
6 Baseline Id Operation Name Starts Rows NESTED LOOPS NESTED LOOPS OUTER 1 284,029 3 NESTED LOOPS 1 284,029 4 TABLE ACCESS BY INDEX PS_PYMNT_VCHR_XREF 1 284,029 5 INDEX SKIP SCAN PSBPYMNT_VCHR_XREF 1 476,577 6 TABLE ACCESS BY INDEX PS_VENDOR 284, ,029 7 INDEX UNIQUE SCAN PS_VENDOR 284, ,029 8 TABLE ACCESS BY INDEX PS_VCH_APPR_DTL 284, ,931 9 INDEX UNIQUE SCAN PS_VCH_APPR_DTL 284, , TABLE ACCESS BY INDEX PS_VOUCHER 284, INDEX UNIQUE SCAN PS_VOUCHER 284, INDEX RANGE SCAN PSCDISTRIB_LINE 284,
7 Baseline Id Operation Name Starts Rows NESTED LOOPS NESTED LOOPS OUTER 1 284,029 3 NESTED LOOPS 1 284,029 4 TABLE ACCESS BY INDEX PS_PYMNT_VCHR_XREF 1 284,029 5 INDEX SKIP SCAN PSBPYMNT_VCHR_XREF 1 476,577 6 TABLE ACCESS BY INDEX PS_VENDOR 284, ,029 7 INDEX UNIQUE SCAN PS_VENDOR 284, ,029 8 TABLE ACCESS BY INDEX PS_VCH_APPR_DTL 284, ,931 9 INDEX UNIQUE SCAN PS_VCH_APPR_DTL 284, , TABLE ACCESS BY INDEX PS_VOUCHER 284, INDEX UNIQUE SCAN PS_VOUCHER 284, INDEX RANGE SCAN PSCDISTRIB_LINE 284,
8 Using Scalar Subquery SELECT A.BUSINESS_UNIT, A.VOUCHER_ID, C.NAME1, D.EXPRESS_PAY, B.BANK_SETID, B.BANK_CD, B.BANK_ACCT_KEY FROM PS_VOUCHER A, PS_PYMNT_VCHR_XREF B, PS_VENDOR C, PS_VCH_APPR_DTL D WHERE A.BUSINESS_UNIT = B.BUSINESS_UNIT AND A.VOUCHER_ID = B.VOUCHER_ID AND C.SETID = B.REMIT_SETID AND C.VENDOR_ID = B.REMIT_VENDOR AND B.BUSINESS_UNIT = D.BUSINESS_UNIT(+) AND B.VOUCHER_ID = D.VOUCHER_ID(+) 8
9 Using Scalar Subquery SELECT A.BUSINESS_UNIT, A.VOUCHER_ID, C.NAME1, (select D.EXPRESS_PAY D.EXPRESS_PAY, PS_VCH_APPR_DTL from PS_VCH_APPR_DTL D D where AND B.BUSINESS_UNIT = = D.BUSINESS_UNIT(+) AND B.VOUCHER_ID = = D.VOUCHER_ID) D.VOUCHER_ID(+) EXPRESS_PAY, B.BANK_SETID, B.BANK_CD, B.BANK_ACCT_KEY FROM PS_VOUCHER A, PS_PYMNT_VCHR_XREF B, PS_VENDOR C WHERE A.BUSINESS_UNIT = B.BUSINESS_UNIT AND A.VOUCHER_ID = B.VOUCHER_ID AND C.SETID = B.REMIT_SETID AND C.VENDOR_ID = B.REMIT_VENDOR 9
10 Using Scalar Subquery SELECT A.BUSINESS_UNIT, A.VOUCHER_ID, (select C.NAME1 from PS_VENDOR C where C.SETID = B.REMIT_SETID AND C.VENDOR_ID = B.REMIT_VENDOR) NAME1, (select D.EXPRESS_PAY from PS_VCH_APPR_DTL D where B.BUSINESS_UNIT = D.BUSINESS_UNIT AND B.VOUCHER_ID = D.VOUCHER_ID) EXPRESS_PAY, B.BANK_SETID, B.BANK_CD, B.BANK_ACCT_KEY FROM PS_VOUCHER A, PS_PYMNT_VCHR_XREF B WHERE A.BUSINESS_UNIT = B.BUSINESS_UNIT AND A.VOUCHER_ID = B.VOUCHER_ID 10
11 Subquery Factoring* with PS_VCHR_HLD_VW AS ( SELECT A.BUSINESS_UNIT, A.VOUCHER_ID FROM PS_VOUCHER A, PS_PYMNT_VCHR_XREF B ) SELECT BUSINESS_UNIT, VOUCHER_ID, BANK_SETID, BANK_CD, BANK_ACCT_KEY, NAME1, INVOICE_ID, GROSS_AMT, TXN_CURRENCY_CD, TO_CHAR(SCHEDULED_PAY_DT,'YYYY-MM-DD'), PYMNT_HOLD, PYMNT_HOLD_REASON, APPR_STATUS, EXPRESS_PAY, VENDOR_ID FROM PS_VCHR_HLD_VW F WHERE '12345' IN ( SELECT X.OPERATING_UNIT FROM PS_DISTRIB_LINE X WHERE F.VOUCHER_ID = X.VOUCHER_ID AND F.BUSINESS_UNIT = X.BUSINESS_UNIT) * aka Common Table Expression ( CTE ) 11
12 Plan with Scalar Subqueries Id Operation Name A-Time TABLE ACCESS BY INDEX ROWID PS_VENDOR INDEX UNIQUE SCAN PS_VENDOR TABLE ACCESS BY INDEX ROWID PS_VCH_APPR_DTL INDEX UNIQUE SCAN PS_VCH_APPR_DTL NESTED LOOPS 07: TABLE ACCESS BY INDEX ROWID PS_PYMNT_VCHR_XREF 06: INDEX SKIP SCAN PSBPYMNT_VCHR_XREF TABLE ACCESS BY INDEX ROWID PS_VOUCHER 01: INDEX UNIQUE SCAN PS_VOUCHER 01: INDEX RANGE SCAN PSCDISTRIB_LINE Access= "A"."BUSINESS_UNIT"="B"."BUSINESS_UNIT" AND "A"."VOUCHER_ID"="B"."VOUCHER_ID" 9 Filter= IS NOT NULL 10 Access= "X"."OPERATING_UNIT"= '12345' AND "X"."BUSINESS_UNIT"=:B1 AND "X"."VOUCHER_ID"=:B2 12
13 Convert in SQ to Join with PS_VCHR_HLD_VW AS ( SELECT A.BUSINESS_UNIT, A.VOUCHER_ID FROM PS_VOUCHER A, PS_PYMNT_VCHR_XREF B ) SELECT BUSINESS_UNIT, VOUCHER_ID, BANK_SETID, BANK_CD, BANK_ACCT_KEY, NAME1, INVOICE_ID, GROSS_AMT, TXN_CURRENCY_CD, TO_CHAR(SCHEDULED_PAY_DT,'YYYY-MM-DD'), PYMNT_HOLD, PYMNT_HOLD_REASON, APPR_STATUS, EXPRESS_PAY, VENDOR_ID FROM MI_VCHR_HLD_VW F, PS_DISTRIB_LINE X WHERE X.OPERATING_UNIT = '12345' AND F.VOUCHER_ID = X.VOUCHER_ID AND F.BUSINESS_UNIT = X.BUSINESS_UNIT 13
14 Plan after Unnest Id Operation Name A-Time TABLE ACCESS BY INDEX ROWID PS_VENDOR INDEX UNIQUE SCAN PS_VENDOR TABLE ACCESS BY INDEX ROWID PS_VCH_APPR_DTL INDEX UNIQUE SCAN PS_VCH_APPR_DTL NESTED LOOPS 01: NESTED LOOPS 01: TABLE ACCESS BY INDEX ROWID PS_PYMNT_VCHR_XREF INDEX SKIP SCAN PSBPYMNT_VCHR_XREF TABLE ACCESS BY INDEX ROWID PS_VOUCHER 01: INDEX UNIQUE SCAN PS_VOUCHER INDEX RANGE SCAN PSCDISTRIB_LINE access("b"."pymnt_id"=' ') filter("b"."pymnt_id"=' ') 10 - access("a"."business_unit"="b"."business_unit" AND "A"."VOUCHER_ID"="B"."VOUCHER_ID") 11 - access("x"."operating_unit"='12345' AND "A"."BUSINESS_UNIT"="X"."BUSINESS_UNIT" AND "A"."VOUCHER_ID"="X"."VOUCHER_ID") 14
15 Plan after Unnest Id Operation Name Starts Rows TABLE ACCESS BY INDEX PS_VENDOR INDEX UNIQUE SCAN PS_VENDOR TABLE ACCESS BY INDEX PS_VCH_APPR_DTL INDEX UNIQUE SCAN PS_VCH_APPR_DTL NESTED LOOPS NESTED LOOPS 1 10,099 7 TABLE ACCESS BY INDEX PS_PYMNT_VCHR_XREF 1 284,029 8 INDEX SKIP SCAN PSBPYMNT_VCHR_XREF 1 476,577 9 TABLE ACCESS BY INDEX PS_VOUCHER 284,029 10, INDEX UNIQUE SCAN PS_VOUCHER 284, , INDEX RANGE SCAN PSCDISTRIB_LINE 10,
16 Transitive Closure with PS_VCHR_HLD_VW AS ( SELECT A.BUSINESS_UNIT, B.BUSINESS_UNIT, B.VOUCHER_ID A.VOUCHER_ID FROM PS_VOUCHER A, PS_PYMNT_VCHR_XREF B ) SELECT BUSINESS_UNIT, VOUCHER_ID, BANK_SETID, BANK_CD, BANK_ACCT_KEY, NAME1, INVOICE_ID, GROSS_AMT, TXN_CURRENCY_CD, TO_CHAR(SCHEDULED_PAY_DT,'YYYY-MM-DD'), PYMNT_HOLD, PYMNT_HOLD_REASON, APPR_STATUS, EXPRESS_PAY, VENDOR_ID FROM MI_VCHR_HLD_VW F, PS_DISTRIB_LINE X WHERE X.OPERATING_UNIT = '39002' AND F.VOUCHER_ID = X.VOUCHER_ID AND F.BUSINESS_UNIT = X.BUSINESS_UNIT 16
17 Plan after Transitive Closure Id Operation Name A-Time TABLE ACCESS BY INDEX ROWID PS_VENDOR 00: INDEX UNIQUE SCAN PS_VENDOR 00: TABLE ACCESS BY INDEX ROWID PS_MI_VCH_APPR_DTL 00: INDEX UNIQUE SCAN PS_MI_VCH_APPR_DTL 00: NESTED LOOPS 00: NESTED LOOPS 00: TABLE ACCESS BY INDEX ROWID PS_PYMNT_VCHR_XREF 00: INDEX SKIP SCAN PSBPYMNT_VCHR_XREF 00: INDEX RANGE SCAN PSCDISTRIB_LINE 00: TABLE ACCESS BY INDEX ROWID PS_VOUCHER 00: INDEX UNIQUE SCAN PS_VOUCHER 00: access("b"."pymnt_id"=' ') filter("b"."pymnt_id"=' ') 9 - access("x"."operating_unit"='12345' AND "B"."BUSINESS_UNIT"="X"."BUSINESS_UNIT" AND "B"."VOUCHER_ID"="X"."VOUCHER_ID") 11 - access("a"."business_unit"="b"."business_unit" AND "A"."VOUCHER_ID"="B"."VOUCHER_ID") 17
18 10g Outline dbms_xplan.display[_cursor](,,'outline [other options]') Outline Data /*+ BEGIN_OUTLINE_DATA IGNORE_OPTIM_EMBEDDED_HINTS ALL_ROWS "PSBPYMNT_VCHR_XREF") "PS_PYMNT_VCHR_XREF") "PS_VOUCHER") "PSCDISTRIB_LINE") "PS_VCH_APPR_DTL") "PS_VENDOR") END_OUTLINE_DATA */ 18
19 Query Block Names SELECT FROM VCHR_HLD_VW F, PS_DISTRIB_LINE X WHERE F.VOUCHER_ID = X.VOUCHER_ID AND F.BUSINESS_UNIT = X.BUSINESS_UNIT AND X.OPERATING_UNIT = '12345' SELECT A.BUSINESS_UNIT, A.VOUCHER_ID, (select C.NAME1 from PS_VENDOR C where C.SETID = B.REMIT_SETID AND C.VENDOR_ID = B.REMIT_VENDOR) NAME1, (select D.EXPRESS_PAY from PS_VCH_APPR_DTL D where B.BUSINESS_UNIT = D.BUSINESS_UNIT AND B.VOUCHER_ID = D.VOUCHER_ID) EXPRESS_PAY, B.BANK_SETID, B.BANK_CD, B.BANK_ACCT_KEY FROM PS_VOUCHER A, PS_PYMNT_VCHR_XREF B WHERE A.BUSINESS_UNIT = B.BUSINESS_UNIT AND A.VOUCHER_ID = B.VOUCHER_ID Query Block Name / Object Alias 1 - SEL$2 / C@SEL$2 2 - SEL$2 / C@SEL$2 3 - SEL$3 / D@SEL$3 4 - SEL$3 / D@SEL$3 5 - SEL$16C51A SEL$16C51A37 / X@SEL$4 8 - SEL$16C51A37 / B@SEL$1 9 - SEL$16C51A37 / B@SEL$ SEL$16C51A37 / A@SEL$ SEL$16C51A37 / A@SEL$1 19
20 Add Hints with PS_VCHR_HLD_VW AS () SELECT /*+ PSCDISTRIB_LINE) PS_PYMNT_VCHR_XREF) PS_VOUCHER) PS_VCH_APPR_DTL) PS_VENDOR) */ BUSINESS_UNIT, VOUCHER_ID, BANK_SETID, BANK_CD, BANK_ACCT_KEY, NAME1, INVOICE_ID, GROSS_AMT, TXN_CURRENCY_CD, TO_CHAR(SCHEDULED_PAY_DT,'YYYY-MM-DD'), PYMNT_HOLD, PYMNT_HOLD_REASON, APPR_STATUS, EXPRESS_PAY, VENDOR_ID FROM MI_VCHR_HLD_VW F, PS_DISTRIB_LINE X WHERE X.OPERATING_UNIT = '12345' AND F.VOUCHER_ID = X.VOUCHER_ID AND F.BUSINESS_UNIT = X.BUSINESS_UNIT 20
21 Plan with Hints Id Operation Name A-Time TABLE ACCESS BY INDEX ROWID PS_VENDOR INDEX UNIQUE SCAN PS_VENDOR TABLE ACCESS BY INDEX ROWID PS_VCH_APPR_DTL INDEX UNIQUE SCAN PS_VCH_APPR_DTL NESTED LOOPS NESTED LOOPS INDEX RANGE SCAN PSCDISTRIB_LINE TABLE ACCESS BY INDEX ROWID PS_PYMNT_VCHR_XREF INDEX RANGE SCAN PS_PYMNT_VCHR_XREF TABLE ACCESS BY INDEX ROWID PS_VOUCHER INDEX UNIQUE SCAN PS_VOUCHER access("x"."operating_unit"='12345') 8 - filter(("b"."pymnt_id"=' ' AND )) 9 - access("b"."business_unit"="x"."business_unit" AND "B"."VOUCHER_ID"="X"."VOUCHER_ID") 11 - access("a"."business_unit"="b"."business_unit" AND "A"."VOUCHER_ID"="B"."VOUCHER_ID") 21
22 Plan with Hints Id Operation Name Starts Rows TABLE ACCESS BY INDEX PS_VENDOR INDEX UNIQUE SCAN PS_VENDOR TABLE ACCESS BY INDEX PS_VCH_APPR_DTL INDEX UNIQUE SCAN PS_VCH_APPR_DTL NESTED LOOPS NESTED LOOPS INDEX RANGE SCAN PSCDISTRIB_LINE TABLE ACCESS BY INDEX PS_PYMNT_VCHR_XREF INDEX RANGE SCAN PS_PYMNT_VCHR_XREF TABLE ACCESS BY INDEX PS_VOUCHER INDEX UNIQUE SCAN PS_VOUCHER
23 Compare to Baseline (~9 min) Id Operation Name Starts Rows NESTED LOOPS NESTED LOOPS OUTER 1 284,029 3 NESTED LOOPS 1 284,029 4 TABLE ACCESS BY INDEX PS_PYMNT_VCHR_XREF 1 284,029 5 INDEX SKIP SCAN PSBPYMNT_VCHR_XREF 1 476,577 6 TABLE ACCESS BY INDEX PS_VENDOR 284, ,029 7 INDEX UNIQUE SCAN PS_VENDOR 284, ,029 8 TABLE ACCESS BY INDEX PS_VCH_APPR_DTL 284, ,931 9 INDEX UNIQUE SCAN PS_VCH_APPR_DTL 284, , TABLE ACCESS BY INDEX PS_VOUCHER 284, INDEX UNIQUE SCAN PS_VOUCHER 284, INDEX RANGE SCAN PSCDISTRIB_LINE 284,
24 Techniques Used Scalar Subqueries Subquery Factoring Transitive Closure Un-nesting Convert in Subquery to Join Hints 24
25 Information Used dbms_xplan.display_cursor Rowsource Timing Information Rowsource Starts and Actual Rows Access and Filter Predicates Outline Index Definitions Application Knowledge 25
26 Wolfgang Breitling Centrex Consulting Corp.
Fallacies of the Cost Based Optimizer
Fallacies of the Cost Based Optimizer Wolfgang Breitling [email protected] Who am I Independent consultant since 1996 specializing in Oracle and Peoplesoft setup, administration, and performance tuning
D B M G Data Base and Data Mining Group of Politecnico di Torino
Politecnico di Torino Database Management System Oracle Hints Data Base and Data Mining Group of Politecnico di Torino Tania Cerquitelli Computer Engineering, 2014-2015, slides by Tania Cerquitelli and
SQL Server Query Tuning
SQL Server Query Tuning A 12-Step Program By Thomas LaRock, Technical Evangelist and Head Geek Confio Software 4772 Walnut Street, Suite 100 Boulder, CO 80301 www.confio.com Introduction Query tuning is
Oracle Database 11g: SQL Tuning Workshop
Oracle University Contact Us: + 38516306373 Oracle Database 11g: SQL Tuning Workshop Duration: 3 Days What you will learn This Oracle Database 11g: SQL Tuning Workshop Release 2 training assists database
D B M G Data Base and Data Mining Group of Politecnico di Torino
Database Management Data Base and Data Mining Group of [email protected] A.A. 2014-2015 Optimizer objective A SQL statement can be executed in many different ways The query optimizer determines
An Oracle White Paper May 2011. The Oracle Optimizer Explain the Explain Plan
An Oracle White Paper May 2011 The Oracle Optimizer Explain the Explain Plan Introduction... 1 The Execution Plan... 2 Displaying the Execution plan... 3 What is Cost... 8 Understanding the execution plan...
MOC 20461C: Querying Microsoft SQL Server. Course Overview
MOC 20461C: Querying Microsoft SQL Server Course Overview This course provides students with the knowledge and skills to query Microsoft SQL Server. Students will learn about T-SQL querying, SQL Server
Oracle Database 11g: SQL Tuning Workshop Release 2
Oracle University Contact Us: 1 800 005 453 Oracle Database 11g: SQL Tuning Workshop Release 2 Duration: 3 Days What you will learn This course assists database developers, DBAs, and SQL developers to
PERFORMANCE TUNING FOR PEOPLESOFT APPLICATIONS
PERFORMANCE TUNING FOR PEOPLESOFT APPLICATIONS 1.Introduction: It is a widely known fact that 80% of performance problems are a direct result of the to poor performance, such as server configuration, resource
Execution plans and tools
Execution plans and tools Dawid Wojcik Execution plans Execution plan Text or graphical representation of steps Oracle server takes to execute specific SQL Execution plan is a tree in which every node
Oracle Database: SQL and PL/SQL Fundamentals
Oracle University Contact Us: 1.800.529.0165 Oracle Database: SQL and PL/SQL Fundamentals Duration: 5 Days What you will learn This course is designed to deliver the fundamentals of SQL and PL/SQL along
Informix SQL Performance Tuning Tips
Informix SQL Performance Tuning Tips Jeff Filippi Integrated Data Consulting, LLC Session: B12 Tuesday, April 28, 2009 04:40 05:40 Session: B12 Informix SQL Performance Tuning Tips Jeff Filippi Integrated
PeopleSoft Query Training
PeopleSoft Query Training Overview Guide Tanya Harris & Alfred Karam Publish Date - 3/16/2011 Chapter: Introduction Table of Contents Introduction... 4 Navigation of Queries... 4 Query Manager... 6 Query
Introduction to Querying & Reporting with SQL Server
1800 ULEARN (853 276) www.ddls.com.au Introduction to Querying & Reporting with SQL Server Length 5 days Price $4169.00 (inc GST) Overview This five-day instructor led course provides students with the
Oracle Database: SQL and PL/SQL Fundamentals NEW
Oracle University Contact Us: + 38516306373 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
Execution Plans: The Secret to Query Tuning Success. MagicPASS January 2015
Execution Plans: The Secret to Query Tuning Success MagicPASS January 2015 Jes Schultz Borland plan? The following steps are being taken Parsing Compiling Optimizing In the optimizing phase An execution
Oracle Database: SQL and PL/SQL Fundamentals
Oracle University Contact Us: +966 12 739 894 Oracle Database: SQL and PL/SQL Fundamentals Duration: 5 Days What you will learn This Oracle Database: SQL and PL/SQL Fundamentals training is designed to
Advanced Oracle SQL Tuning
Advanced Oracle SQL Tuning Seminar content technical details 1) Understanding Execution Plans In this part you will learn how exactly Oracle executes SQL execution plans. Instead of describing on PowerPoint
SQL Tuning Proven Methodologies
SQL Tuning Proven Methodologies V.Hariharaputhran V.Hariharaputhran o Twelve years in Oracle Development / DBA / Big Data / Cloud Technologies o All India Oracle Users Group (AIOUG) Evangelist o Passion
Oracle 11g PL/SQL training
Oracle 11g PL/SQL training Course Highlights This course introduces students to PL/SQL and helps them understand the benefits of this powerful programming language. Students learn to create PL/SQL blocks
MySQL for Beginners Ed 3
Oracle University Contact Us: 1.800.529.0165 MySQL for Beginners Ed 3 Duration: 4 Days What you will learn The MySQL for Beginners course helps you learn about the world's most popular open source database.
Oracle Database 10g: Program with PL/SQL
Oracle University Contact Us: Local: 1800 425 8877 Intl: +91 80 4108 4700 Oracle Database 10g: Program with PL/SQL Duration: 5 Days What you will learn This course introduces students to PL/SQL and helps
SQL Server. 2012 for developers. murach's TRAINING & REFERENCE. Bryan Syverson. Mike Murach & Associates, Inc. Joel Murach
TRAINING & REFERENCE murach's SQL Server 2012 for developers Bryan Syverson Joel Murach Mike Murach & Associates, Inc. 4340 N. Knoll Ave. Fresno, CA 93722 www.murach.com [email protected] Expanded
Introducing Microsoft SQL Server 2012 Getting Started with SQL Server Management Studio
Querying Microsoft SQL Server 2012 Microsoft Course 10774 This 5-day instructor led course provides students with the technical skills required to write basic Transact-SQL queries for Microsoft SQL Server
Querying Microsoft SQL Server
Course 20461C: Querying Microsoft SQL Server Module 1: Introduction to Microsoft SQL Server 2014 This module introduces the SQL Server platform and major tools. It discusses editions, versions, tools used
FHE DEFINITIVE GUIDE. ^phihri^^lv JEFFREY GARBUS. Joe Celko. Alvin Chang. PLAMEN ratchev JONES & BARTLETT LEARN IN G. y ti rvrrtuttnrr i t i r
: 1. FHE DEFINITIVE GUIDE fir y ti rvrrtuttnrr i t i r ^phihri^^lv ;\}'\^X$:^u^'! :: ^ : ',!.4 '. JEFFREY GARBUS PLAMEN ratchev Alvin Chang Joe Celko g JONES & BARTLETT LEARN IN G Contents About the Authors
MTCache: Mid-Tier Database Caching for SQL Server
MTCache: Mid-Tier Database Caching for SQL Server Per-Åke Larson Jonathan Goldstein Microsoft {palarson,jongold}@microsoft.com Hongfei Guo University of Wisconsin [email protected] Jingren Zhou Columbia
The Sins of SQL Programming that send the DB to Upgrade Purgatory Abel Macias. 1 Copyright 2011, Oracle and/or its affiliates. All rights reserved.
The Sins of SQL Programming that send the DB to Upgrade Purgatory Abel Macias 1 Copyright 2011, Oracle and/or its affiliates. All rights reserved. Who is Abel Macias? 1994 - Joined Oracle Support 2000
Execution Strategies for SQL Subqueries
Execution Strategies for SQL Subqueries Mostafa Elhemali, César Galindo- Legaria, Torsten Grabs, Milind Joshi Microsoft Corp With additional slides from material in paper, added by S. Sudarshan 1 Motivation
Instant SQL Programming
Instant SQL Programming Joe Celko Wrox Press Ltd. INSTANT Table of Contents Introduction 1 What Can SQL Do for Me? 2 Who Should Use This Book? 2 How To Use This Book 3 What You Should Know 3 Conventions
DBMS / Business Intelligence, SQL Server
DBMS / Business Intelligence, SQL Server Orsys, with 30 years of experience, is providing high quality, independant State of the Art seminars and hands-on courses corresponding to the needs of IT professionals.
Querying Microsoft SQL Server 2012
Course 10774A: Querying Microsoft SQL Server 2012 Length: 5 Days Language(s): English Audience(s): IT Professionals Level: 200 Technology: Microsoft SQL Server 2012 Type: Course Delivery Method: Instructor-led
Oracle SQL. Course Summary. Duration. Objectives
Oracle SQL Course Summary Identify the major structural components of the Oracle Database 11g Create reports of aggregated data Write SELECT statements that include queries Retrieve row and column data
Advanced Query for Query Developers
for Developers This is a training guide to step you through the advanced functions of in NUFinancials. is an ad-hoc reporting tool that allows you to retrieve data that is stored in the NUFinancials application.
Database Programming with PL/SQL: Learning Objectives
Database Programming with PL/SQL: Learning Objectives This course covers PL/SQL, a procedural language extension to SQL. Through an innovative project-based approach, students learn procedural logic constructs
SQL SELECT Query: Intermediate
SQL SELECT Query: Intermediate IT 4153 Advanced Database J.G. Zheng Spring 2012 Overview SQL Select Expression Alias revisit Aggregate functions - complete Table join - complete Sub-query in where Limiting
ICAB4136B Use structured query language to create database structures and manipulate data
ICAB4136B Use structured query language to create database structures and manipulate data Release: 1 ICAB4136B Use structured query language to create database structures and manipulate data Modification
Course ID#: 1401-801-14-W 35 Hrs. Course Content
Course Content Course Description: This 5-day instructor led course provides students with the technical skills required to write basic Transact- SQL queries for Microsoft SQL Server 2014. This course
Course 10774A: Querying Microsoft SQL Server 2012
Course 10774A: Querying Microsoft SQL Server 2012 About this Course This 5-day instructor led course provides students with the technical skills required to write basic Transact-SQL queries for Microsoft
Course 10774A: Querying Microsoft SQL Server 2012 Length: 5 Days Published: May 25, 2012 Language(s): English Audience(s): IT Professionals
Course 10774A: Querying Microsoft SQL Server 2012 Length: 5 Days Published: May 25, 2012 Language(s): English Audience(s): IT Professionals Overview About this Course Level: 200 Technology: Microsoft SQL
Querying Microsoft SQL Server 20461C; 5 days
Lincoln Land Community College Capital City Training Center 130 West Mason Springfield, IL 62702 217-782-7436 www.llcc.edu/cctc Querying Microsoft SQL Server 20461C; 5 days Course Description This 5-day
ORACLE 9I / 10G / 11G / PL/SQL COURSE CONTENT
ORACLE 9I / 10G / 11G / PL/SQL COURSE CONTENT INTRODUCTION: Course Objectives I-2 About PL/SQL I-3 PL/SQL Environment I-4 Benefits of PL/SQL I-5 Benefits of Subprograms I-10 Invoking Stored Procedures
How to Create Dashboards. Published 2014-08
How to Create Dashboards Published 2014-08 Table of Content 1. Introduction... 3 2. What you need before you start... 3 3. Introduction... 3 3.1. Open dashboard Example 1... 3 3.2. Example 1... 4 3.2.1.
SQL Query Performance Tuning: Tips and Best Practices
SQL Query Performance Tuning: Tips and Best Practices Pravasini Priyanka, Principal Test Engineer, Progress Software INTRODUCTION: In present day world, where dozens of complex queries are run on databases
Oracle White Paper June 2013. Optimizer with Oracle Database 12c
Oracle White Paper June 2013 Optimizer with Oracle Database 12c Disclaimer The following is intended to outline our general product direction. It is intended for information purposes only, and may not
Query tuning by eliminating throwaway
Query tuning by eliminating throwaway This paper deals with optimizing non optimal performing queries. Abstract Martin Berg ([email protected]) Server Technology System Management & Performance Oracle
Business Intelligence Extensions for SPARQL
Business Intelligence Extensions for SPARQL Orri Erling (Program Manager, OpenLink Virtuoso) and Ivan Mikhailov (Lead Developer, OpenLink Virtuoso). OpenLink Software, 10 Burlington Mall Road Suite 265
Useful Business Analytics SQL operators and more Ajaykumar Gupte IBM
Useful Business Analytics SQL operators and more Ajaykumar Gupte IBM 1 Acknowledgements and Disclaimers Availability. References in this presentation to IBM products, programs, or services do not imply
Course 20461C: Querying Microsoft SQL Server Duration: 35 hours
Course 20461C: Querying Microsoft SQL Server Duration: 35 hours About this Course This course is the foundation for all SQL Server-related disciplines; namely, Database Administration, Database Development
Saskatoon Business College Corporate Training Centre 244-6340 [email protected] www.sbccollege.ca/corporate
Microsoft Certified Instructor led: Querying Microsoft SQL Server (Course 20461C) Date: October 19 23, 2015 Course Length: 5 day (8:30am 4:30pm) Course Cost: $2400 + GST (Books included) About this Course
Oracle Database 12c: Introduction to SQL Ed 1.1
Oracle University Contact Us: 1.800.529.0165 Oracle Database 12c: Introduction to SQL Ed 1.1 Duration: 5 Days What you will learn This Oracle Database: Introduction to SQL training helps you write subqueries,
University System of Georgia
University System of Georgia Asset Management Tip Sheet Asset Management Flows below are visual process flows for the Interface and AM Transaction processing. Please refer to the AM Monthly Checklist and/or
MOC 20461 QUERYING MICROSOFT SQL SERVER
ONE STEP AHEAD. MOC 20461 QUERYING MICROSOFT SQL SERVER Length: 5 days Level: 300 Technology: Microsoft SQL Server Delivery Method: Instructor-led (classroom) COURSE OUTLINE Module 1: Introduction to Microsoft
Efficient Data Access and Data Integration Using Information Objects Mica J. Block
Efficient Data Access and Data Integration Using Information Objects Mica J. Block Director, ACES Actuate Corporation [email protected] Agenda Information Objects Overview Best practices Modeling Security
SQL Server. 1. What is RDBMS?
SQL Server 1. What is RDBMS? Relational Data Base Management Systems (RDBMS) are database management systems that maintain data records and indices in tables. Relationships may be created and maintained
Top 25+ DB2 SQL Tuning Tips for Developers. Presented by Tony Andrews, Themis Inc. [email protected]
Top 25+ DB2 SQL Tuning Tips for Developers Presented by Tony Andrews, Themis Inc. [email protected] Objectives By the end of this presentation, developers should be able to: Understand what SQL Optimization
Querying Microsoft SQL Server 2012
Querying Microsoft SQL Server 2012 MOC 10774 About this Course This 5-day instructor led course provides students with the technical skills required to write basic Transact-SQL queries for Microsoft SQL
Querying Microsoft SQL Server (20461) H8N61S
HP Education Services course data sheet Querying Microsoft SQL Server (20461) H8N61S Course Overview In this course, you will learn the technical skills required to write basic Transact-SQL (T-SQL) queries
Creating Reports Crystal Clear
Creating Reports Crystal Clear Presented by: Robert Acosta - Senior Client Support Co-Presenter: Praveen Maturi - Support Manager Agenda Why Crystal Reports? Planning a Report Report Access ECD vs Company
Duration Vendor Audience 5 Days Oracle End Users, Developers, Technical Consultants and Support Staff
D80198GC10 Oracle Database 12c SQL and Fundamentals Summary Duration Vendor Audience 5 Days Oracle End Users, Developers, Technical Consultants and Support Staff Level Professional Delivery Method Instructor-led
Universe Best Practices Session Code: 806
Universe Best Practices Session Code: 806 Alan Mayer Solid Ground Technologies, Inc. Agenda Introduction Ground Rules Classes and Objects Joins Hierarchies Parameters Performance Linking Security Conclusion
AV-005: Administering and Implementing a Data Warehouse with SQL Server 2014
AV-005: Administering and Implementing a Data Warehouse with SQL Server 2014 Career Details Duration 105 hours Prerequisites This career requires that you meet the following prerequisites: Working knowledge
PEOPLESOFT VOUCHER TABLES IN THE DATA WAREHOUSE
PEOPLESOFT VOUCHER TABLES IN THE DATA WAREHOUSE These are the commonly used and most useful fields from these tables. Access returns values rather than descriptions. Translations are listed below. * =
In this session, we use the table ZZTELE with approx. 115,000 records for the examples. The primary key is defined on the columns NAME,VORNAME,STR
1 2 2 3 In this session, we use the table ZZTELE with approx. 115,000 records for the examples. The primary key is defined on the columns NAME,VORNAME,STR The uniqueness of the primary key ensures that
Querying Microsoft SQL Server Course M20461 5 Day(s) 30:00 Hours
Área de formação Plataforma e Tecnologias de Informação Querying Microsoft SQL Introduction This 5-day instructor led course provides students with the technical skills required to write basic Transact-SQL
SQL Server Query Tuning
SQL Server Query Tuning Klaus Aschenbrenner Independent SQL Server Consultant SQLpassion.at Twitter: @Aschenbrenner About me Independent SQL Server Consultant International Speaker, Author Pro SQL Server
Chapter 9 Joining Data from Multiple Tables. Oracle 10g: SQL
Chapter 9 Joining Data from Multiple Tables Oracle 10g: SQL Objectives Identify a Cartesian join Create an equality join using the WHERE clause Create an equality join using the JOIN keyword Create a non-equality
Programming with SQL
Unit 43: Programming with SQL Learning Outcomes A candidate following a programme of learning leading to this unit will be able to: Create queries to retrieve information from relational databases using
Oracle Database 11g: New Features for Administrators 15-1
Oracle Database 11g: New Features for Administrators 15-1 Oracle Database 11g: New Features for Administrators 15-2 SQL Monitoring The real-time SQL monitoring feature on Oracle Database 11g enables you
Oracle Database: Develop PL/SQL Program Units
Oracle University Contact Us: 1.800.529.0165 Oracle Database: Develop PL/SQL Program Units Duration: 3 Days What you will learn This Oracle Database: Develop PL/SQL Program Units course is designed for
Using AS/400 Database Monitor To Identify and Tune SQL Queries
by Rick Peterson Dale Weber Richard Odell Greg Leibfried AS/400 System Performance IBM Rochester Lab May 2000 Page 1 Table of Contents Introduction... Page 4 What is the Database Monitor for AS/400 tool?...
Oracle Database: SQL and PL/SQL Fundamentals NEW
Oracle University Contact Us: 001-855-844-3881 & 001-800-514-06-97 Oracle Database: SQL and PL/SQL Fundamentals NEW Duration: 5 Days What you will learn This Oracle Database: SQL and PL/SQL Fundamentals
Module 1: Getting Started with Databases and Transact-SQL in SQL Server 2008
Course 2778A: Writing Queries Using Microsoft SQL Server 2008 Transact-SQL About this Course This 3-day instructor led course provides students with the technical skills required to write basic Transact-
Performance Tuning for the JDBC TM API
Performance Tuning for the JDBC TM API What Works, What Doesn't, and Why. Mark Chamness Sr. Java Engineer Cacheware Beginning Overall Presentation Goal Illustrate techniques for optimizing JDBC API-based
Web Development using PHP (WD_PHP) Duration 1.5 months
Duration 1.5 months Our program is a practical knowledge oriented program aimed at learning the techniques of web development using PHP, HTML, CSS & JavaScript. It has some unique features which are as
Best Practices for DB2 on z/os Performance
Best Practices for DB2 on z/os Performance A Guideline to Achieving Best Performance with DB2 Susan Lawson and Dan Luksetich www.db2expert.com and BMC Software September 2008 www.bmc.com Contacting BMC
Writing Queries Using Microsoft SQL Server 2008 Transact-SQL
Course 2778A: Writing Queries Using Microsoft SQL Server 2008 Transact-SQL Length: 3 Days Language(s): English Audience(s): IT Professionals Level: 200 Technology: Microsoft SQL Server 2008 Type: Course
Oracle 10g PL/SQL Training
Oracle 10g PL/SQL Training Course Number: ORCL PS01 Length: 3 Day(s) Certification Exam This course will help you prepare for the following exams: 1Z0 042 1Z0 043 Course Overview PL/SQL is Oracle's Procedural
Query Optimization in Oracle 12c Database In-Memory
Query Optimization in Oracle 12c Database In-Memory Dinesh Das *, Jiaqi Yan *, Mohamed Zait *, Satyanarayana R Valluri, Nirav Vyas *, Ramarajan Krishnamachari *, Prashant Gaharwar *, Jesse Kamp *, Niloy
ENHANCEMENTS TO SQL SERVER COLUMN STORES. Anuhya Mallempati #2610771
ENHANCEMENTS TO SQL SERVER COLUMN STORES Anuhya Mallempati #2610771 CONTENTS Abstract Introduction Column store indexes Batch mode processing Other Enhancements Conclusion ABSTRACT SQL server introduced
Oracle EXAM - 1Z0-117. Oracle Database 11g Release 2: SQL Tuning. Buy Full Product. http://www.examskey.com/1z0-117.html
Oracle EXAM - 1Z0-117 Oracle Database 11g Release 2: SQL Tuning Buy Full Product http://www.examskey.com/1z0-117.html Examskey Oracle 1Z0-117 exam demo product is here for you to test the quality of the
SQL Performance Hero and OMG Method vs the Anti-patterns. Jeff Jacobs Jeffrey Jacobs & Associates [email protected]
SQL Performance Hero and OMG Method vs the Anti-patterns Jeff Jacobs Jeffrey Jacobs & Associates [email protected] Survey Says DBAs Developers Architects Heavily non-oracle development shop Concerned
Oracle Database 11 g Performance Tuning. Recipes. Sam R. Alapati Darl Kuhn Bill Padfield. Apress*
Oracle Database 11 g Performance Tuning Recipes Sam R. Alapati Darl Kuhn Bill Padfield Apress* Contents About the Authors About the Technical Reviewer Acknowledgments xvi xvii xviii Chapter 1: Optimizing
LearnFromGuru Polish your knowledge
SQL SERVER 2008 R2 /2012 (TSQL/SSIS/ SSRS/ SSAS BI Developer TRAINING) Module: I T-SQL Programming and Database Design An Overview of SQL Server 2008 R2 / 2012 Available Features and Tools New Capabilities
... IBM AIX with Oracle Database performance: a beginner s guide
IBM AIX with Oracle Database performance: a beginner s guide........ Francisco Martín Riccio Chávez In collaboration with the IBM Oracle International Competency Center July 18, 2012 Copyright IBM Corporation,
1Z0-117 Oracle Database 11g Release 2: SQL Tuning. Oracle
1Z0-117 Oracle Database 11g Release 2: SQL Tuning Oracle To purchase Full version of Practice exam click below; http://www.certshome.com/1z0-117-practice-test.html FOR Oracle 1Z0-117 Exam Candidates We
TWO TYPES OF HISTOGRAMS
HISTOGRAMS - MYTHS AND FACTS Wolfgang Breitling, Centrex Consulting Corporation i This paper looks at some common misconceptions about histograms. The hope is that the paper and the facts on histograms
The Database is Slow
The Database is Slow SQL Server Performance Tuning Starter Kit Calgary PASS Chapter, 19 August 2015 Randolph West, Born SQL Email: [email protected] Twitter: @rabryst Basic Internals Data File Transaction Log
Querying Microsoft SQL Server 2012. Querying Microsoft SQL Server 2014 20461D. Course 10774A: Course Det ails. Co urse Outline
Course 10774A: Querying Microsoft SQL Server 2012 20461D Querying Microsoft SQL Server 2014 Course Det ails Co urse Outline M o d ule 1: Intr o d uctio n to M icro so ft SQL Ser ver 2012 This module introduces
Safe Harbor Statement
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 a commitment
Business Intelligence Tutorial: Introduction to the Data Warehouse Center
IBM DB2 Universal Database Business Intelligence Tutorial: Introduction to the Data Warehouse Center Version 8 IBM DB2 Universal Database Business Intelligence Tutorial: Introduction to the Data Warehouse
Optimizing Your Database Performance the Easy Way
Optimizing Your Database Performance the Easy Way by Diane Beeler, Consulting Product Marketing Manager, BMC Software and Igy Rodriguez, Technical Product Manager, BMC Software Customers and managers of
Oracle Database Security
breaking through barriers to progress By Raman Jathar an award winning '2004 Future 50 Company' 18650 W. Corporate Drive Suite 120 Brookfield, WI 53045 262.792.0200 Database Security Lately, database security
PATROL From a Database Administrator s Perspective
PATROL From a Database Administrator s Perspective September 28, 2001 Author: Cindy Bean Senior Software Consultant BMC Software, Inc. 3/4/02 2 Table of Contents Introduction 5 Database Administrator Tasks
SQL Performance for a Big Data 22 Billion row data warehouse
SQL Performance for a Big Data Billion row data warehouse Dave Beulke dave @ d a v e b e u l k e.com Dave Beulke & Associates Session: F19 Friday May 8, 15 8: 9: Platform: z/os D a v e @ d a v e b e u
Would-be system and database administrators. PREREQUISITES: At least 6 months experience with a Windows operating system.
DBA Fundamentals COURSE CODE: COURSE TITLE: AUDIENCE: SQSDBA SQL Server 2008/2008 R2 DBA Fundamentals Would-be system and database administrators. PREREQUISITES: At least 6 months experience with a Windows
Writing Queries Using Microsoft SQL Server 2008 Transact-SQL
Lincoln Land Community College Capital City Training Center 130 West Mason Springfield, IL 62702 217-782-7436 www.llcc.edu/cctc Writing Queries Using Microsoft SQL Server 2008 Transact-SQL Course 2778-08;
Database Application Developer Tools Using Static Analysis and Dynamic Profiling
Database Application Developer Tools Using Static Analysis and Dynamic Profiling Surajit Chaudhuri, Vivek Narasayya, Manoj Syamala Microsoft Research {surajitc,viveknar,manojsy}@microsoft.com Abstract
