Return-Path: <root@fatcity.cts.com>
Received: from newsfeed.cts.com (newsfeed.cts.com [209.68.248.164])
 by naude.co.za (8.11.2/8.11.2) with SMTP id g5E19bx19946
 for <oracle-l@naude.co.za>; Thu, 13 Jun 2002 21:09:37 -0400
Received: from fatcity.UUCP (uucp@localhost)
 by newsfeed.cts.com (8.9.3/8.9.3) with UUCP id KAA44282;
 Thu, 13 Jun 2002 10:07:18 -0700 (PDT)
Received: by fatcity.com (26-Feb-2001/v1.0g-b71/bab) via UUCP id 0047D604; Thu, 13 Jun 2002 09:30:12 -0800
Message-ID: <F001.0047D604.20020613093012@fatcity.com>
Date: Thu, 13 Jun 2002 09:30:12 -0800
To: Multiple recipients of list ORACLE-L <ORACLE-L@fatcity.com>
X-Comment: Oracle RDBMS Community Forum
X-Sender: "Jay Earle (DBA)" <Jay_Earle@smartforce.com>
Sender: root@fatcity.com
Reply-To: ORACLE-L@fatcity.com
Errors-To: ML-ERRORS@fatcity.com
From: "Jay Earle (DBA)" <Jay_Earle@smartforce.com>
Subject: RE: Any Good , Complete Docs , Source , Links on OUTLN ?
Organization: Fat City Network Services, San Diego, California
X-ListServer: v1.0g, build 71; ListGuru (c) 1996-2001 Bruce A. Bergman
Precedence: bulk
Mime-Version: 1.0
Content-Type: multipart/alternative;	boundary="----_=_NextPart_001_01C212F6.8149D6F0"
------_=_NextPart_001_01C212F6.8149D6F0
Content-Type: text/plain;
 charset="iso-8859-1"

Oracle High-Performance SQL Tuning

by Don Burleson
608 pages
ISBN 0-07-219058-2

The following excerpt is from Chapter 13 of this publication.

 

Tuning with Optimizer Plan Stability

This chapter discusses the use of optimizer plan stability in Oracle8i and
shows how you can improve the run-time performance of SQL statements and
also provide a easy method to permanently change the execution plans for SQL
statements. This chapter will cover the following topics:

	Introduction to stored outlines 

	Preparing Oracle for stored outlines 

	How to create and modify a stored outline 

	Managing a stored outline

Introduction to Stored Outlines

The optimizer plan stability feature of Oracle8i has been a long time
coming. The earlier databases such as DB2 and IDMS have had the ability to
store execution plans since the 1980s, and the concept of stored SQL
outlines has had widespread acceptance in the non-Oracle world for decades.

The argument behind optimizer plan stability is that there exists only one
optimal execution plan for any SQL statement, and once located, the
execution plan should never change, even when the CBO statistics or
initialization parameters are changed. Of course, this philosophy is
contrary to the basic tenet of Oracle cost-based optimization, which expects
SQL statements to change execution plans when the characteristics of the
table and index statistics change, or when a change is made to an important
initialization parameter such as sort_area_size or
db_file_multiblock_read_count.

Regardless of philosophy, creating a stable execution plan for Oracle SQL
has two major benefits:

	Change execution plan without touching SQL source code Many
databases have SQL that is dynamically generated (e.g., SAP) or SQL that
resides in unreachable PC libraries. For these types of applications, stored
outlines allow you to change the execution plan for the SQL without the need
to change the SQL source code. 

	Permanent SQL tuning changes Once tuned, optimizer plan stability
allows for SQL statements to always have the same execution plan. There will
be no surprises when a change is made to an important initialization
parameter such as sort_area_size or when the CBO statistics change.

TIP: Stored outlines are great for tuning SQL in database application suites
where the SQL source is not available or cannot be changed. For example, SAP
and PeopleSoft applications products can now have SQL tuning without
touching the source code.

Now that we see the benefits of using stored outlines, let's take a look at
how optimizer plan stability works. When a SQL statement enters Oracle8i,
the database will perform the following actions 

 

 

.

.

.

.

-----Original Message-----
Sent: Thursday, June 13, 2002 12:44 PM
To: Multiple recipients of list ORACLE-L



Chapter 11 in Tom Kyte's Oracle one-on-one Export (start here if you can and
save yourself time) 
Metalink Note 92202.1 How To Specify Hidden Hints in SQL 
Oracle Corporation paper by David McElhoes, Stabilizing Query Performance
With Stored Outlines 
Chapter 10 of the Designing and Tuning for Performance documentation 

Also, just in case you haven't already, try using "Plan Stability" in your
web searches. 

Good luck. 

Tony Aponte 

-----Original Message----- 
<mailto:VIVEK_SHARMA@infosys.com> ] 
Sent: Thursday, June 13, 2002 9:33 AM 
To: Multiple recipients of list ORACLE-L 


-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.com
<http://www.orafaq.com>  
-- 
Author: VIVEK_SHARMA 
  INET: VIVEK_SHARMA@infosys.com 

Fat City Network Services    -- (858) 538-5051  FAX: (858) 538-5051 
San Diego, California        -- Public Internet access / Mailing Lists 
-------------------------------------------------------------------- 
To REMOVE yourself from this mailing list, send an E-Mail message 
to: ListGuru@fatcity.com (note EXACT spelling of 'ListGuru') and in 
the message BODY, include a line containing: UNSUB ORACLE-L 
(or the name of mailing list you want to be removed from).  You may 
also send the HELP command for other information (like subscribing). 


------_=_NextPart_001_01C212F6.8149D6F0
Content-Type: text/html;
 charset="iso-8859-1"

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<TITLE>RE: Any Good , Complete Docs , Source , Links on OUTLN ?</TITLE>

<META content="MSHTML 5.00.3019.2500" name=GENERATOR></HEAD>
<BODY>
<DIV><B><FONT size=5>
<P>Oracle High-Performance SQL Tuning</P></FONT><FONT size=4>
<P>by Don Burleson</B></FONT><BR><B><FONT size=4>608 
pages</B></FONT><BR><B><FONT size=4>ISBN 0-07-219058-2</P></FONT><FONT size=2>
<P>The following excerpt is from Chapter 13 of this publication.</P></B></FONT>
<P>&nbsp;</P><B><FONT size=5>
<P>Tuning with Optimizer Plan Stability</P></B></FONT>
<P>This chapter discusses the use of optimizer plan stability in Oracle8<I>i</I> 
and shows how you can improve the run-time performance of SQL statements and 
also provide a easy method to permanently change the execution plans for SQL 
statements. This chapter will cover the following topics:</P>
<DIR>
<DIR>
<P>Introduction to stored outlines </P>
<P>Preparing Oracle for stored outlines </P>
<P>How to create and modify a stored outline </P>
<P>Managing a stored outline</P></DIR></DIR><B>
<P>Introduction to Stored Outlines</P></B>
<P>The optimizer plan stability feature of Oracle8<I>i</I> has been a long time 
coming. The earlier databases such as DB2 and IDMS have had the ability to store 
execution plans since the 1980s, and the concept of stored SQL outlines has had 
widespread acceptance in the non-Oracle world for decades.</P>
<P>The argument behind optimizer plan stability is that there exists only one 
optimal execution plan for any SQL statement, and once located, the execution 
plan should never change, even when the CBO statistics or initialization 
parameters are changed. Of course, this philosophy is contrary to the basic 
tenet of Oracle cost-based optimization, which expects SQL statements to change 
execution plans when the characteristics of the table and index statistics 
change, or when a change is made to an important initialization parameter such 
as <I>sort_area_size</I> or <I>db_file_multiblock_read_count.</P></I>
<P>Regardless of philosophy, creating a stable execution plan for Oracle SQL has 
two major benefits:</P>
<DIR>
<DIR><B>
<P>Change execution plan without touching SQL source code </B>Many databases 
have SQL that is dynamically generated (e.g., SAP) or SQL that resides in 
unreachable PC libraries. For these types of applications, stored outlines allow 
you to change the execution plan for the SQL without the need to change the SQL 
source code. </P><B>
<P>Permanent SQL tuning changes </B>Once tuned, optimizer plan stability allows 
for SQL statements to always have the same execution plan. There will be no 
surprises when a change is made to an important initialization parameter such as 
<I>sort_area_size</I> or when the CBO statistics change.</P></DIR></DIR><B>
<P>TIP:</B> <I>Stored outlines are great for tuning SQL in database application 
suites where the SQL source is not available or cannot be changed. For example, 
SAP and PeopleSoft applications products can now have SQL tuning without 
touching the source code.</P></I>
<P>Now that we see the benefits of using stored outlines, let's take a look at 
how optimizer plan stability works. When a SQL statement enters Oracle8<I>i,</I> 
the database will perform the following actions </P>
<P>&nbsp;</P>
<P>&nbsp;</P>
<P><SPAN class=831312116-13062002>.</SPAN></P>
<P><SPAN class=831312116-13062002>.</SPAN></P>
<P><SPAN class=831312116-13062002>.</SPAN></P>
<P><SPAN class=831312116-13062002>.</SPAN></P></DIV>
<BLOCKQUOTE style="MARGIN-RIGHT: 0px">
  <DIV align=left class=OutlookMessageHeader dir=ltr><FONT face=Tahoma 
  size=2>-----Original Message-----<BR><B>From:</B> Aponte, Tony 
  [mailto:AponteT@hsn.net]<BR><B>Sent:</B> Thursday, June 13, 2002 12:44 
  PM<BR><B>To:</B> Multiple recipients of list ORACLE-L<BR><B>Subject:</B> RE: 
  Any Good , Complete Docs , Source , Links on OUTLN ?<BR><BR></DIV></FONT><!-- Converted from text/plain format -->
  <P><FONT size=2>Chapter 11 in Tom Kyte's Oracle one-on-one Export (start here 
  if you can and save yourself time)</FONT> <BR><FONT size=2>Metalink Note 
  92202.1 How To Specify Hidden Hints in SQL</FONT> <BR><FONT size=2>Oracle 
  Corporation paper by David McElhoes, Stabilizing Query Performance With Stored 
  Outlines</FONT> <BR><FONT size=2>Chapter 10 of the Designing and Tuning for 
  Performance documentation </FONT></P>
  <P><FONT size=2>Also, just in case you haven't already, try using "Plan 
  Stability" in your web searches.</FONT> </P>
  <P><FONT size=2>Good luck.</FONT> </P>
  <P><FONT size=2>Tony Aponte</FONT> </P>
  <P><FONT size=2>-----Original Message-----</FONT> <BR><FONT size=2>From: 
  VIVEK_SHARMA [<A 
  href="mailto:VIVEK_SHARMA@infosys.com">mailto:VIVEK_SHARMA@infosys.com</A>]</FONT> 
  <BR><FONT size=2>Sent: Thursday, June 13, 2002 9:33 AM</FONT> <BR><FONT 
  size=2>To: Multiple recipients of list ORACLE-L</FONT> <BR><FONT 
  size=2>Subject: Any Good , Complete Docs , Source , Links on OUTLN ?</FONT> 
  </P><BR>
  <P><FONT size=2>-- </FONT><BR><FONT size=2>Please see the official ORACLE-L 
  FAQ: <A href="http://www.orafaq.com">http://www.orafaq.com</A></FONT> 
  <BR><FONT size=2>-- </FONT><BR><FONT size=2>Author: VIVEK_SHARMA</FONT> 
  <BR><FONT size=2>&nbsp; INET: VIVEK_SHARMA@infosys.com</FONT> </P>
  <P><FONT size=2>Fat City Network Services&nbsp;&nbsp;&nbsp; -- (858) 
  538-5051&nbsp; FAX: (858) 538-5051</FONT> <BR><FONT size=2>San Diego, 
  California&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -- Public Internet access 
  / Mailing Lists</FONT> <BR><FONT 
  size=2>--------------------------------------------------------------------</FONT> 
  <BR><FONT size=2>To REMOVE yourself from this mailing list, send an E-Mail 
  message</FONT> <BR><FONT size=2>to: ListGuru@fatcity.com (note EXACT spelling 
  of 'ListGuru') and in</FONT> <BR><FONT size=2>the message BODY, include a line 
  containing: UNSUB ORACLE-L</FONT> <BR><FONT size=2>(or the name of mailing 
  list you want to be removed from).&nbsp; You may</FONT> <BR><FONT size=2>also 
  send the HELP command for other information (like subscribing).</FONT> 
</P></BLOCKQUOTE></BODY></HTML>

------_=_NextPart_001_01C212F6.8149D6F0--
-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- 
Author: Jay Earle (DBA)
  INET: Jay_Earle@smartforce.com

Fat City Network Services    -- (858) 538-5051  FAX: (858) 538-5051
San Diego, California        -- Public Internet access / Mailing Lists
--------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: ListGuru@fatcity.com (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).

