<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Oracle - Concepts et Exemples &#187; High water mark</title>
	<atom:link href="https://blog.developpez.com/pachot/tag/high-water-mark/feed/" rel="self" type="application/rss+xml" />
	<link>https://blog.developpez.com/pachot</link>
	<description>Les fonctionalités et concepts d&#039;Oracle à partir de traductions et de démos</description>
	<lastBuildDate>Sun, 03 Apr 2016 20:36:21 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.1.42</generator>
	<item>
		<title>Différence entre SHRINK SPACE et SHRINK SPACE COMPACT</title>
		<link>https://blog.developpez.com/pachot/shrink_table/</link>
		<comments>https://blog.developpez.com/pachot/shrink_table/#comments</comments>
		<pubDate>Thu, 25 Jul 2013 08:02:16 +0000</pubDate>
		<dc:creator><![CDATA[pachot]]></dc:creator>
				<category><![CDATA[MicroLearning]]></category>
		<category><![CDATA[High water mark]]></category>
		<category><![CDATA[shrink]]></category>

		<guid isPermaLink="false">http://blog.developpez.com/pachot/?p=587</guid>
		<description><![CDATA[ALTER TABLE &#8230; SHRINK SPACE permet de: déplacer les lignes vers le début de la table lorsqu&#8217;il y a de l&#8217;espace libre dans les blocs abaisser le High Water Mark pour ne plus aller lire les blocks vidés (lors d&#8217;un &#8230; <a href="https://blog.developpez.com/pachot/shrink_table/">Lire la suite <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>ALTER TABLE &#8230; SHRINK SPACE permet de:</p>
<ol>
<li>déplacer les lignes vers le début de la table lorsqu&rsquo;il y a de l&rsquo;espace libre dans les blocs</li>
<li>abaisser le High Water Mark pour ne plus aller lire les blocks vidés (lors d&rsquo;un full table scan) et pour libérer les extents qui sont au dessus.</li>
</ol>
<p>La première opération doit déplacer les lignes, donc elle nécessite &lsquo;enable row movement&rsquo;. Elle peut être longue (les lignes sont déplacées une par une, avec maintenance des index, comme un delete+insert) mais elle est totalement online (comme un delete+insert).</p>
<p>La deuxième peut poser un problème lorsqu&rsquo;il y a des sessions concurrentes.<br />
D&rsquo;une part parce qu&rsquo;un verrou exclusif est posé, d&rsquo;autre part avec le risque que les requêtes en cours sur la table se plantent avec un &lsquo;ORA-10632: Invalid rowid&rsquo;.</p>
<p>Pour diminuer la plage de maintenance, il est possible de faire cela en 2 temps:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">ALTER TABLE ... SHRINK SPACE COMPACT</div></div>
<p>pour faire tout le travail long de l&rsquo;étape 1 &#8211; totalement online</p>
<p>Puis, lorsqu&rsquo;il n&rsquo;y a plus d&rsquo;activité concurrente:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">ALTER TABLE ... SHRINK SPACE</div></div>
<p>qui sera plus rapide puisque le déplacement des lignes a déjà été fait.</p>
<p><ins datetime="2013-09-30T08:55:05+00:00">La <a href="http://ora-demo.pachot.net/shrink_table.html" title="demo" target="_blank">demo</a> montre les erreurs possibles et les verrous posés.</ins></p>
<p>Il ne faut pas oublier non plus que dès que les stats seront calculées, des plans d&rsquo;exécution pourront changer. Le nombre de BLOCKS de la table sera plus faible (favorise les FULL TABLE SCAN) et les CLUSTERING_FACTOR des index peuvent être moins bons (défavorise les accès par index).</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
