質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.37%
Oracle Database 11g

Oracle DatabaseはRDBMSの商品です。具体的な発売商品として知られているのが、 Oracle9i、Oracle10g、Oracle 11gとOracle 12cです。

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

パフォーマンス

コード効率の向上や計算に関する質問には、このタグを使ってください。

Q&A

解決済

1回答

17341閲覧

OracleのLog_Bufferの調整について

kurori

総合スコア111

Oracle Database 11g

Oracle DatabaseはRDBMSの商品です。具体的な発売商品として知られているのが、 Oracle9i、Oracle10g、Oracle 11gとOracle 12cです。

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

パフォーマンス

コード効率の向上や計算に関する質問には、このタグを使ってください。

0グッド

0クリップ

投稿2016/09/09 02:20

###前提・実現したいこと
初投稿の為、不備があればご指摘ください。

環境情報:
OS:Windows Server 2012 x64
Database:Oracle 11g Standard Edition x64
Tool:SI Objectbrowser 13 x64

Oracle Enterprise Managerの使用許可が下りていませんので、
Oracle Enterprise Managerによる稼働状況の分析が出来ません。

上記環境でLOG_BUFFERの最適なサイズを割り出したいです。

###発生している問題・エラーメッセージ
最大で、1時間で約500MB程度のデータの取込を行っているDBがあります。
定期実行のプログラムも多く、トランザクションの量もかなり多いようで、
SI Object Browserでデータベース情報を確認すると
REDOバッファの空き待機回数が1週間で1000を超える達するケースを確認しています。
(週末に再起動しているようで翌週頭には0になっています...)

そもそも設計の問題のほうが大きいと思うのですが、
まずはOracleのチューニングでパフォーマンス改善を、という話がされ、
空き待機回数の削減を行うように指示を受けましたが、
LOG_BUFFERの調整に難航しております。

お知恵をお貸しください。

###試したこと
データ量に反してREDOログもLOG_BUFFERもデフォルトの設定値のようでしたので、
空き待機回数を減らすために
REDOログファイルのサイズ拡張とLOG_BUFFERのサイズ拡張を行いました。

REDOログファイルのサイズ拡張で大幅に減少させることはできたのですが、
LOG_BUFFERのサイズは下記のオンラインマニュアルにある上限の32MBを設定しましたが、REDOログのサイズ拡張時ほどの効果が得られていません。
https://docs.oracle.com/cd/E16338_01/server.112/b56311/initparams133.htm

###ご相談内容
1.LOG_BUFFERの最適なサイズを割り出すためのSQLは有りませんでしょうか?
2.あるいは、Oracle Enterprise Managerで得られるような解析結果を求めるSQLを組めないでしょうか?

以上、宜しくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

更新が多ければREDOログファイルを大きくするのは有効ですが、LOG_BUFFERのサイズを32MBから変更してもパフォーマンスの改善が期待できるかは難しそうに思えます。
7.4 REDOログ・バッファの構成および使用方法

Standard Edition ではAWRは使えませんから、Statspackでボトルネックを探しましょう。
OTN Japan - Oracleデータベース 性能対策機能 ~ Statspackと...を使いこなす

statspack reportの待機イベント をググればボトルネックを探れるかもしれません。
また、同reportの SQL ordered by ... でCPU, Elapsed などの多い順のSQLが表示されますから、そのSQLが実行されているプログラムを調べましょう。

サポート契約が有効でしたら、Oracle社カスタマ・サポート・センターに問合せましょう。

投稿2016/09/09 10:22

Orlofsky

総合スコア16417

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kurori

2016/09/09 10:47

ご回答ありがとうございます。 LOG_BUFFERの拡張によってパフォーマンスの改善、というのは 確かに厳しいのかもしれませんが、 空き待機回数の削減には繋がると踏んでおりました。 (ご提示頂いたリンク先の「7.4.2 ログ・バッファの統計」の項に記載がありました。 私のLOG_BUFFER拡張 => REDOログも拡張される、というのが捉え方が間違っているかも?) Statspackに関しては初めて知りました。 お教え頂きありがとうございます。 初動としてこの機能で調査するのは非常に有効だと思われますので、 一度、打診してみようと思います。
Orlofsky

2016/09/09 11:01

ググって欲しいのですが、オンラインREDOログサイズの変更は http://qiita.com/sowd/items/6cc6fcaec090df11d6e5 です。パフォーマンス・チューニングはそれなりの能力と経験が必要です。 kuroriさんはOracleの経験は浅いようですので、パフォーマンス・チューニング熟練者の支援を頼んでは?餅は餅屋といいます。
kurori

2016/09/12 00:12

すいません。書き間違いしてますね。 「LOG_BUFFER拡張 => REDOログ」が正しくは「LOG_BUFFER拡張 => REDOログバッファ」でした。 どちらにせよ、おっしゃられる通りでチューニングは今回初めて作業しています。 何とか詳しいメンバーを探して相談してみることにします。 以上、ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問