2016-06-22 2 views
0

私は既存のビューを調整しようとします。例を投稿してくれないのは残念ですが、問題を再現できませんでした。そして私はその行動を理解できません。 別のビュー(ビューb)とテーブル(テーブルC)に基づくMy View(ビューA)。選択リストでは、これらのいくつかのフィールドといくつかのパッケージ呼び出しが使用されます。 特定のSelectの実行時間は32秒近くです。 私はStatementとstartetを分析してViewを最適化しました。私はビューaで必要としないすべての列をドロップし、ビューbのオーバーヘッドを減らしました。 この後、View aの選択が5秒早くなりました。私は選択を複数回実行して、確実な平均実行時間を得ました。 ほんの数分後、私はStatementを再び動かし、私は32 Secondsを得ました。私はこれを複数回実行しましたが、速くなることはありません。異なるパフォーマンス中にオラクルでビューを選択

このデータベースにはトラフィックがありません。データ量は変更されませんでした。そして、これまでは、合理的な結果を得ることに問題がある最初の声明は、その声明を分析することになります。 最初に見たExplainplanは上手く見えます。フルテーブルスキャンはありません(私はFTSが全体的に悪いとは限りません)。私はなぜexecutetimeがとても不安定であるのか分からないので、Viewを最適化して結果を比較することが難しくなりました。

私はダンプの質問のように聞こえると思いますが、私は問題を見ることができず、次に何をすべきか考えません。

私の悪い英語のためにありがとうと申し訳ありません。

+0

どのSELECT文でもPL/SQL(パッケージ)関数呼び出しはパフォーマンスに悪影響を及ぼす可能性があります。すべてのコールでSQLとPL/SQLのコンテキスト・スイッチングがオーバーヘッドされます。少数の行。 –

答えて

0

不安定な実行時間

1)select文の間でバッファキャッシュをクリーンアップしましたか?

2)状況によっては、result_cacheingを使用して機能やビューを改善することができます。しかし、それがあなたの問題に適用できるかどうかを把握しなければなりませんか? (詳細はresultchaheの長い話題)[http://www.oracle.com/technetwork/articles/datawarehouse/vallath-resultcache-rac-284280.html]

関連する問題