第 3 章 クエリと削除の最適化
パフォーマンス&チューニング・ガイド 39
• ENABLED_ORDERED_PUSHDOWN_INSERTION - クエリ・オプティ
マイザが、ジョイン・オプティマイザによって選択されたプッシュダウ
ン・ジョイン用のセミジョイン述部に追加する方法を制御します。それら
のセミジョインによって間接的に影響を受ける可能性のある中間のジョ
インを再分析します。通常は、このオプションを変更しないでください。
• IN_SUBQUERY_PREFERENCE - IN サブクエリを処理するためのアル
ゴリズムの選択を制御します。このオプションは、主に内部用として設計
されているため、経験のあるデータベース管理者のみが使用してください。
• INDEX_PREFERENCE - クエリ処理に使用するインデックスを設定し
ます。Sybase IQ オプティマイザは、通常最適なインデックスを使用して、
ローカルな WHERE 句 の述部など、1 つの IQ インデックスの範囲内で処
理できる操作を実行します。このオプションは、テスト目的にオプティマ
イザの選択を無効にするために使用します。通常の使用の際はこのオプ
ションの値を変更しないでください。
• JOIN_PREFERENCE - ジョインを処理するときのアルゴリズムの選択を
制御します。このオプションは、主に内部用として設計されているため、経
験のあるデータベース管理者のみが使用してください。
• JOIN_SIMPLIFICATION_THRESHOLD - ジョイン・オプティマイザの単
純化が適用される前にジョインされるテーブルの最小数を制御します。通
常は、この値を変更する必要はありません。
• MAX_HASH_ROWS - クエリ・オプティマイザがハッシュ・アルゴリズ
ムを使用するときに考慮する最大ロー数の推測値を設定します。デフォル
トは、1,250,000 のローです。たとえば、2 つのテーブル間にジョインがあ
り、両方のテーブルからジョインに入力されるロー数がこのオプションで
設定された値を超えると、オプティマイザはハッシュ・ジョインを選択肢
から外します。TEMP_CACHE_MEMORY_MB がユーザあたり 50 MB を
超えるシステムの場合は、このオプションにさらに大きな値を設定します。
• MAX_JOIN_ENUMERATION - オプティマイザの単純化が適用された後
で、ジョイン順のために最適化するテーブルの最大数を設定します。通常
は、このオプションを設定する必要はありません。
述部ヒントの設定
Sybase IQ は、選択性、有用性、インデックス設定、実行モードなどの述部単
位のヒントを指定できるヒント文字列をサポートします。
選択性は他の 3 つのクエリ最適化と組み合わせて設定できます。
• インデックス設定オプションに相当する機能の設定
• 有用性の設定 ( 述部の順序付け )
•1 つ以上の述部の遅延