クラスタ化は、表の行を適切に配置してディスク上のその物理順をインデックス内のエントリの順序に 一致させる方法です。
ALTER INDEX zip_ix TO CLUSTER
CREATE CLUSTER INDEX o_date_ix ON orders (order_date ASC)
表を再び順序付けるには、データベース サーバで表をコピーしなければなりません。前の例では、データベース サーバによって表内のすべての行が読み込まれて、インデックスが構成されます。次に、データベース サーバはインデックス エントリを順番に読み込みます。それぞれのエントリごとに、表の一致行が読み込まれて、それが新しい表にコピーされます。新しい表の行が目的の順序になります。この新しい表によって古い表が置き換えられます。
クラスタ化は、表を変更するときに保存されません。新しい行を挿入すると、それらの行は内容に関係なく表の終りに物理的に格納されます。行を更新して、クラスタ列の値を変更すると、行が表内の元の位置に再度書き込まれます。
ALTER INDEX o_date_ix TO CLUSTER
通常、再クラスタ化は、元のクラスタ化よりも時間がかかりません。ほぼクラスタ化されている表の行を読み出すときには、順次走査の場合と同じような入出力効果が得られるためです。
クラスタ化と再クラスタ化には多くの領域と時間が必要です。クラスタ化を一部省くには、適切な順序で最初から表を構成するようにします。