- ベストアンサー
CPU使用率について
CPU使用率についての質問です。 HP-UX環境(CPU:2、Memory:4G)で、バッチ処理を行なう予定です。 データベースはオラクルです。できるだけCPU使用率を高めたい(効率よくCPUを使わせたい)のですが、このような場合に調整できるオラクルのパラメータはありますでしょうか?オラクルバージョンは9.2です。 また、もしなければどのような方法があげられますでしょうか。 ご教授ください。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
そのような状況ならどんどん多重化して良いんじゃないですか 私なんかチューニングはボトルネックが顕在化してからと思っているほうなんで。 ただし、多重化してもCPU使用率や全体のバッチ終了時間など何も変わらないのならどこかにボトルネックがあるでしょうからその時に考えましょう
その他の回答 (3)
- ossan_hiro
- ベストアンサー率66% (88/132)
コマンドによってはディスクIO待ちがうまく取得できない場合があるので注意してください。 OSの状況だけでチューニングするは難しいと思います。yakkiidaさんもアドバイスしていますがstatspackや統計情報等からオラクルの状態も確認するのをお勧めします。 DB_FILE_MULTIBLOCK_READ_COUNT等の初期化パラメータ等は高速全索引スキャンを行う場合有効ですが、実行計画によって効果がない場合もあります。 p.s. できればエディション(Standerd又はEnterprise)の情報も提示したほうがいいと思います。
お礼
回答ありがとうございます。 今のところI/O、メモリ、CPUそれぞれ全くボトルネックは発生してません。 CPU使用率を増やす当面の対応としては、多重度を上げてCPU使用率が上げる予定です。
- corgi12kg
- ベストアンサー率51% (28/54)
基本的にyakiidaさんと同意見です >現在の状況ではCPUもメモリもボトルネックはない状況です。 たかだか2CPU環境で上記のような状況自体が APL仕様かSQLがおかしいような気がします。 もしくは根本的なOracle環境設定が不十分なのではないでしょうか? それはさておき、とりあえずバッチ性能を改善するなら ・DB_WRITERS ・db_file_multiblock_read_count ・PGA_AGGREGATE_TARGET でしょうか?
お礼
回答を頂きましてありがとうございました。 説明不足で申し訳なかったですが、現在のパフォーマンスは特に問題ない状況です。CPUの使用率が低い状況だったので、もう少しCPUを使わせる状況にさせたいと思いました。とりあえず、ジョブの多重度を増やしてCPU使用率があがるかどうか確認してみます。URLは今後役に立ちそうです。ありがとうございました。
チューニングは個々に違いますから。この情報だけでは何ともいえません。 SQL統計にはstatspack、OSリソースはglance、買ってなければsarで取得してボトルネックを一つ一つ潰して行くしかありません。 またOracleのチューニングはSQLチューニングが基本と考えておいてください。パラメータチューニングを行うのはその後でしょう(パラメータチューニングが劇的に効果を上げるケースは少ないです)
お礼
回答を頂きありがとうございました。 とりあえず、ジョブの多重度をあげて確認することにしました。 SQLチューニングも必要ですね。参考にさせて頂きます。
補足
yakiidaさん、ご回答ありがとうございます。 現在の状況ではCPUもメモリもボトルネックはない状況です。 説明不足で申し訳ございませんでしたが、詳しく申しますと、 現在のCPU使用率が20%そこそこなので、ジョブの並列度を上げて、 CPUの使用度をもう少し高めて効率よくCPUの使用を行わせたく 思っております。 その際、パラメータ調整も必要になるようでしたら、教えて頂きたい と思い質問させて頂きました。上記の点でなにかご存知でしたら、 教えて頂けると助かります。
お礼
回答ありがとうございました。サイジングチェックの際に、パラメータチューニングは済ませているのですが、実際の作業負荷に応じての調整も必要ですね。CPU使用率を上げる事に関しては、多重度ももちろんDBWRの数なども考慮したいと思います。ありがとうございました。