
DUAL - 日本エクセム株式会社 Oracle 技術情報
目次[非表示]
- 1.基本情報
- 2.分析事例
- 2.1.DUALテーブル実行過多解決
- 2.2.X$ DUAL vs DUAL
基本情報
Oracleにより自動生成されたDummyテーブルです。SYSスキーマに存在しますが、DUALという名前で、すべてのユーザーが使用することができます。ユーザー計算やユーザー関数を使用する場合に便利であり、select1 from dual;を実行して、WASのDBとの接続を確認するために使用されることもあります。
分析事例
DUALテーブル実行過多解決
Oracleのパフォーマンス監視/分析ソリューションであるマックスゲージのPerformance Analysisを通じて日中のログを確認して見ましょう。
図のように1分間特定のセッションがグループ化された結果、Execution回数が毎分22万回以上で表示され、DUALテーブルの繰り返し使用が発生しています。SQL実行回数過多の問題は、Loop Queryを単一のSQLに変更することが望ましいのです。特に、上記のようにDUAL表について繰り返し実行する場合には、DUALテーブルのルックアップの負荷を減少させるためにSYS.X$ DUALを利用する方法があります。DUAL表を多く参照する環境に便利に使うことができます。