インデックスのヒント
ディスクのキャッシュ
ディスク・キャッシュとは、ディスク・ブロックのコピーを一時的に格納する ために、オペレーティング・システムによって使用されるメモリです。ファイ ル・システムに基づくディスクの読み書きは、通常、すべてディスク・キャッ シュを通じて行われます。アプリケーションから見ると、ディスク・キャッ シュによる読み書きは、すべて実際のディスク操作と同等です。
オペレーティング・システムは、固定された方法と動的方法を使用してディス ク・キャッシュにメモリを割り付けます。固定された割り当てでは、あらかじ め規定されたメモリ量が使用されます。通常、10 ~ 15% のメモリが割り当て られます。オペレーティング・システムは通常、LRU ( 一番最後に使用された ) アルゴリズムを使用してこの作業領域を管理します。動的割り付けでは、オペ レーティング・システムが実行中にディスク・キャッシュの割り付けを決定し ます。これによって、できるだけ多くのメモリを有効に使用して、実際のメモ リの需要とディスクのデータの必要性のバランスを保ちます。
インデックスのヒント
以下の項では、インデックスの選択と管理に関するヒントについて説明します。 詳細については、『Sybase IQ システム管理ガイド』の「第 6 章 Sybase IQ イン デックスの使用」を参照してください。
正しいインデックス・タイプの選択
カラム・データに適したインデックス・タイプを選択することが重要です。 Sybase IQ は、いくつかのインデックスを自動的に設定します。具体的には、射 影を最適化するデフォルト・インデックスをすべてのカラムに設定し、 UNIQUE、PRIMARY KEYS、FOREIGN KEYS に HG インデックスを設定しま す。これらのインデックスはいくつかの目的には役立ちますが、特定のクエリ をできるだけ迅速に処理するには別のインデックスが必要となります。カラム に設定できるインデックス・タイプが複数ある場合、Sybase IQ は最適なイン デックス・タイプを選択します。
Sybase IQ のクエリ・オプティマイザには、クエリの 1 つまたは複数のカラム に追加のインデックスがあるとオプティマイザに有効な場合にメッセージを 生成するインデックス・アドバイザという機能があります。インデックス・ア ドバイザをアクティブにするには、INDEX_ADVISOR オプションを ON に設 定します。メッセージはクエリ・プランの一部として出力されます。クエリ・ プランが有効になっていない場合は、メッセージ・ログ (.iqmsg) に単独のメッ セージとして出力されます。出力の形式は OWNER.TABLE.COLUMN となり ます。詳細については、『Sybase IQ リファレンス・マニュアル』の「データ ベース・オプション」の「INDEX_ADVISOR オプション」を参照してください。
138 | Sybase IQ |