削除オペレーションの最適化
通常の状況では、評価を遅らせることにメリットはなく、クエリの処理が遅く なるだけです。ただし、これによって次の 4 つの動作のいずれかをクエリ内の もっと後ろに移動できます。
•最適化の前
•初回の「最初のフェッチ」時
•2 回目の「最初のフェッチ」時 ( 相関サブクエリの内部またはネストルー プ・プッシュダウン・ジョインの左側のみ )
•インデックスの不使用 ( 水平処理 )
構文、パラメータ、使用例については、『Sybase IQ リファレンス・マニュアル』 の「第 3 章 SQL 言語の要素」の「ユーザ指定の条件ヒント文字列」を参照し てください。
削除オペレーションの最適化
Sybase IQ は、削除オペレーションを処理するために次の 3 つのアルゴリズム から 1 つを選択します。
•スモール・デリート
スモール・デリートでは、非常に少数のグループからローを削除するとき に最適なパフォーマンスが得られます。通常は、削除するローが 1 つだけ か、HG (High_Group) インデックスを持つカラムに等号述部がある場合に 選択されます。スモール・デリート・アルゴリズムは、HG にランダムに アクセスできます。最悪の場合、I/O はアクセスされるグループの数に比 例します。
•ミッド・デリート
ミッド・デリートでは、いくつかのグループからローを削除するときに最 適なパフォーマンスが得られます。ただし、それらのグループが十分に分 散されているか、十分に少なくて、あまり多くの HG ページがアクセスさ れないことが条件です。ミッド・デリート・アルゴリズムは、HG への順 序付けられたアクセスを提供します。最悪の場合、I/O はインデックス・ ページ数によって制限されます。ミッド・デリートは、削除するレコード のソートという追加的なコストを伴います。
•ラージ・デリート
ラージ・デリートでは、多数のグループからローを削除するときに最適な パフォーマンスが得られます。ラージ・デリートでは、すべてのローが削 除されるまで HG が順番にスキャンされます。最悪の場合、I/O はインデッ クス・ページ数によって制限されます。ラージ・デリートは並列処理です が、並列処理はインデックスの内部構造および削除対象のグループの分散 度によって制限されます。HG カラムの範囲述部を使用して、ラージ・デ リートのスキャン範囲を狭めることができます。
40 | Sybase IQ |