dポイントプレゼントキャンペーン実施中!

いつもお世話になっております。
10gの2003Serverの環境ですが、ある業務パッケージで用意されているインターフェースにて、COBOLソースで25万件程のテーブルをリードして物理ワークファイルにライトし、更にそのファイルより別のオラクルテーブルにライトを行っているのですが、リードで約2時間、ライトに約5時間もかかってしまいます。試しに一人ずつ(350人×700件=約25万)画面にディスプレイしてみると最初の30分で80人分程処理しておりますが途中から急激に遅くなり一人につき5分以上かかってきます。

当然ながらCOBOLの読み書きするロジックに原因があると思っておりソースを追いかけておりますが、不思議なことに他ユーザーの9iの環境で同アプリを実行するとものの15分程で読み書きが終わってしまいます。データの内容は異なるでしょうが件数的にはほとんど変わりません。
従って、平行してオラクル側でも調査したいのですが、具体的に何をどうすればよいのか、情報が少なくて申し訳ないですが、何かヒントでもいただけないでしょうか?
何卒よろしくお願いします。

A 回答 (5件)

10gではこの処理以外は良好な速度で稼動しているのですかね?



10gと9iの環境で処理時間が劇的に違いすぎる感じですね。
10gと9iは同じマシンではないですよね?
テスト中のCPU、メモリの稼動状況も比較確認してみたほうがよいです。

ホスト的に問題なしであれば、
1.STATSPACKレポートで7時間のうち、主に「何の処理」をしていたか調べる
2.1の結果で改善箇所が明確にならない場合は、SQLトレースを取る
ということをすれば悪い箇所が明確になると思います。
3.2の結果で非常に遅いSQLがあった場合、実行計画を表示して分析する

という流れになるかと思います。
    • good
    • 0
この回答へのお礼

返事遅くなりました。
ご回答どうもありがとうございました。
STATSPACKレポート等勉強してみます。

お礼日時:2009/01/27 23:29

Oracleの情報を収集するのであればstatspackというツールを使って情報収集することができます(参考URLのリンク先を参照のこと)。


ただ、このレポートはOracleに詳しい方がいないと解析は難しいと思います。

9iだと早く10gだと遅いということですが、バージョンの違いのほかにDB構造は同じでしょうか?
メモリの割り当て、REDOログのサイズ、UNDO(ROLLBACK)セグメントのサイズ、一時表領域のサイズ等は同じなのでしょうか?

DB以外にもOSの状況(CPUとかDISKの空き容量とか)も確認したほうがいいと思います。

参考URL:http://otn.oracle.co.jp/skillup/stats_diag/1/ind …
    • good
    • 0
この回答へのお礼

>Oracleの情報を収集するのであればstatspackというツールを使って情報収集することができます(参考URLのリンク先を参照のこと)。
ただ、このレポートはOracleに詳しい方がいないと解析は難しいと思います。

ありがとうございます。一度勉強してみようと思います。

>9iだと早く10gだと遅いということですが、バージョンの違いのほかにDB構造は同じでしょうか?
メモリの割り当て、REDOログのサイズ、UNDO(ROLLBACK)セグメントのサイズ、一時表領域のサイズ等は同じなのでしょうか?

おそらく同一パッケージですので、サイズは同等だと思われます。バージョンに起因しているものではないと考えます。

お礼日時:2009/01/23 01:30

http://www.atmarkit.co.jp/fdb/rensai/orasql04/or …
あたりが参考になるかも。
これでひっかからない時は初期化パラメータ「cursor_sharing」を
「similar」にして再度試してみてください。
これで、負荷の高いSQLをピックアップできると思います。
「EXPLAIN」コマンドで実行計画を取得できるのでは。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます!

よく勉強して一度試してみます。

お礼日時:2009/01/23 01:28

まずはリード、ライトそれぞれの実行計画を取得しましょう。

    • good
    • 0
この回答へのお礼

ご回答ありがとうございます!
ただ、前述のとおりSQL文は一切発行せず、プログラム上でパッケージで用意されているインターフェースにてリード、ライトしているのですが、それでも実行計画を取れるのでしょうか?
もう少し具体的にご教示いただくことは可能でしょうか?
宜しくお願い致します。

お礼日時:2009/01/21 21:58

インデックスが適正か確認してください。


それだけで劇的に変わる可能性はあります。

以上
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました!

お礼日時:2009/01/23 01:32

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!