62 lines
4.4 KiB
HTML
62 lines
4.4 KiB
HTML
|
<?xml version="1.0" encoding="UTF-8"?>
|
||
|
<!DOCTYPE html
|
||
|
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||
|
<html lang="en-us" xml:lang="en-us">
|
||
|
<head>
|
||
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||
|
<meta name="security" content="public" />
|
||
|
<meta name="Robots" content="index,follow" />
|
||
|
<meta http-equiv="PICS-Label" content='(PICS-1.1 "http://www.icra.org/ratingsv02.html" l gen true r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true r (n 0 s 0 v 0 l 0) "http://www.classify.org/safesurf/" l gen true r (SS~~000 1))' />
|
||
|
<meta name="DC.Type" content="reference" />
|
||
|
<meta name="DC.Title" content="Reactive approach to tuning" />
|
||
|
<meta name="abstract" content="To perform reactive tuning, build a prototype of the proposed application without any indexes and start running some queries or build an initial set of indexes and start running the application to see what gets used and what does not. Even with a smaller database, the slow running queries will become obvious very quickly." />
|
||
|
<meta name="description" content="To perform reactive tuning, build a prototype of the proposed application without any indexes and start running some queries or build an initial set of indexes and start running the application to see what gets used and what does not. Even with a smaller database, the slow running queries will become obvious very quickly." />
|
||
|
<meta name="DC.Relation" scheme="URI" content="rzajqindexstrat.htm" />
|
||
|
<meta name="copyright" content="(C) Copyright IBM Corporation 1998, 2006" />
|
||
|
<meta name="DC.Rights.Owner" content="(C) Copyright IBM Corporation 1998, 2006" />
|
||
|
<meta name="DC.Format" content="XHTML" />
|
||
|
<meta name="DC.Identifier" content="rzajqreact" />
|
||
|
<meta name="DC.Language" content="en-us" />
|
||
|
<!-- All rights reserved. Licensed Materials Property of IBM -->
|
||
|
<!-- US Government Users Restricted Rights -->
|
||
|
<!-- Use, duplication or disclosure restricted by -->
|
||
|
<!-- GSA ADP Schedule Contract with IBM Corp. -->
|
||
|
<link rel="stylesheet" type="text/css" href="./ibmdita.css" />
|
||
|
<link rel="stylesheet" type="text/css" href="./ic.css" />
|
||
|
<title>Reactive approach to tuning</title>
|
||
|
</head>
|
||
|
<body id="rzajqreact"><a name="rzajqreact"><!-- --></a>
|
||
|
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
|
||
|
<h1 class="topictitle1">Reactive approach to tuning</h1>
|
||
|
<div><p>To perform reactive tuning, build a prototype of the proposed application
|
||
|
without any indexes and start running some queries or build an initial set
|
||
|
of indexes and start running the application to see what gets used and what
|
||
|
does not. Even with a smaller database, the slow running queries will become
|
||
|
obvious very quickly.</p>
|
||
|
<div class="section"><p>The reactive tuning method is also used when trying to understand
|
||
|
and tune an existing application that is not performing up to expectations.
|
||
|
Using the appropriate debugging and monitoring tools, which are described
|
||
|
in the next section, the database feedback messages that will tell basically
|
||
|
three things can be viewed: </p>
|
||
|
<ul><li>Any indexes the optimizer recommends for local selection</li>
|
||
|
<li>Any temporary indexes used for a query</li>
|
||
|
<li>The implementation method(s) that the optimizer has chosen to run the
|
||
|
queries</li>
|
||
|
</ul>
|
||
|
<p>If the database engine is building temporary indexes
|
||
|
to process joins or to perform grouping and selection over permanent tables,
|
||
|
permanent indexes should be built over the same columns to try to eliminate
|
||
|
the temporary index creation. In some cases, a temporary index is built over
|
||
|
a temporary table, so a permanent index will not be able to be built for those
|
||
|
tables. You can use the optimization tools listed in the previous section
|
||
|
to note the creation of the temporary index, the reason the temporary index
|
||
|
was created, and the key columns in the temporary index.</p>
|
||
|
</div>
|
||
|
</div>
|
||
|
<div>
|
||
|
<div class="familylinks">
|
||
|
<div class="parentlink"><strong>Parent topic:</strong> <a href="rzajqindexstrat.htm" title="There are two approaches to index creation: proactive and reactive. As the name implies proactive index creation involves anticipating which columns will be most often used for selection, joining, grouping and ordering; and then building indexes over those columns. In the reactive approach, indexes are created based on optimizer feedback, query implementation plan, and system performance measurements.">Indexing strategy</a></div>
|
||
|
</div>
|
||
|
</div>
|
||
|
</body>
|
||
|
</html>
|