SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けに、EnterpriseZine Day、Security Online Day、DataTechという、3つのイベントを開催しております。それぞれ編集部独自の切り口で、業界トレンドや最新事例を網羅。最新の動向を知ることができる場として、好評を得ています。

直近開催のイベントはこちら!

EnterpriseZine編集部ではイベントを随時開催しております

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けの講座「EnterpriseZine Academy」や、すべてのITパーソンに向けた「新エバンジェリスト養成講座」などの講座を企画しています。EnterpriseZine編集部ならではの切り口・企画・講師セレクトで、明日を担うIT人材の育成をミッションに展開しております。

お申し込み受付中!

アシストお問い合わせの現場から

Oracle Databaseのパフォーマンスダウン発生に備えたV$ビューの定期取得と調査方法


 データベースに一時的なパフォーマンスダウンが発生した場合、調査のためにはパフォーマンスダウンが発生していた当時、つまり、過去のデータベースの情報が必要です。本稿ではパフォーマンスダウンに備えた動的パフォーマンスビュー(V$ビュー)の定期取得方法と、ビューからの調査方法を実際のサポート事例と併せてご紹介します。

Enterprise Editionじゃなくてもパフォーマンスダウンは解決可能

 昨今、企業のビジネスの多くはITで支えられており、データベースの性能低下はビジネスに直接影響を与えます。例えば、ECサイトのバックエンドで稼働するデータベース性能の低下は、ユーザが操作するWeb画面の応答時間が長くなることを意味します。応答時間が2秒以上になると直帰率が上がるとも言われており、データベースのパフォーマンスダウンは売上機会の損失につながる可能性があります。

 アシストのサポートセンターには「処理が遅くなってしまいセッションが滞留した」「本来数分で終わるべき処理が1時間以上かかっても終わらなかった」などのパフォーマンスダウンに関するお問い合わせをいただくことがあります。

 データベースのパフォーマンスダウンは主にメモリ、CPU、I/Oなどのハードウェアのリソース競合か、ロック、ラッチなどのデータベースのリソース競合で起こります。

 具体的に何が原因で処理のパフォーマンスダウンが発生してしまっているのかを確認する情報として、Oracle Databaseでは動的パフォーマンスビュー(V$ビュー)があります。

 V$ビューはデータベースがオープンしている間、セッションやメモリ、ロックの獲得状況といった内部的な情報が継続的に更新される、参照専用の特別なビューです。

 今まさにパフォーマンスダウンが発生中であれば、V$ビューの結果を取得し、ボトルネックの特定を行います。しかし実際のお問い合わせでは、処理が遅延し、滞留していたセッションのKILLや処理実行元のアプリケーションサーバの再起動などでリソースの解放を行い、パフォーマンスダウンが解消してから、発生原因の調査を依頼いただくケースがほとんどです。

 過去のパフォーマンス情報を確認する方法としては、Automatic Workload Repository(AWR)とActive Session History(ASH)があります。これらは自動でパフォーマンス情報を取得しています。ただし、これらの情報を参照するにはEnterprise EditionとDiagnostics Packのオプションライセンスの契約が必要です。

 これらの契約がない環境で過去のパフォーマンス情報を得るには、AWRに代わるSTATSPACKの導入やASHに代わるV$ビューの定期情報取得など、ユーザ側での事前準備が必要です。

 パフォーマンスダウンに関するトラブルのお問い合わせのうち、ライセンスごとの解決率を示しているのが図1です。

図1.ライセンスごとのパフォーマンストラブル解決率
図1.ライセンスごとのパフォーマンストラブル解決率

 ここで言う「解決」とは、処理遅延の原因がどこにあったのか(ロック競合、リソース不足など)の特定までを指します。その後のチューニングまでは含んでいないにもかかわらず、パフォーマンス情報の有無で解決率に2倍以上の差があります。

 過去のパフォーマンス情報が取得できていない場合、遅延処理を実行していたセッションの状態などが確認できません。該当時間帯のログファイルにエラーや警告などのメッセージが出力されているようなケースを除いて、多くのケースでは推測での調査しか行えないため、解決率が低くなっています。

 言い換えればAWRやASHが利用できない環境でも、STATSPACKやV$ビューの定期取得を行うことで解決率をライセンス所持環境に近いレベルまで上げることができます。そこで今回はパフォーマンスダウンのトラブルに備えたV$ビューの定期取得方法と、取得した情報を使用した調査方法をご紹介します。

次のページ
パフォーマンスダウンのトラブル調査に必要なV$ビュー

この記事は参考になりましたか?

  • Facebook
  • Twitter
  • Pocket
  • note
アシストお問い合わせの現場から連載記事一覧

もっと読む

この記事の著者

大野 高志(オオノ タカシ)

 株式会社アシスト サービス事業部 サポートセンター アシスト入社後、Oracle Databaseのサポート業務に従事。現在はサポート業務の傍ら、未解決のトラブルを一つでも多く減らせるよう、サポートセンターに蓄積されている調査のノウハウを社内外に伝える活動を行っている。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

EnterpriseZine(エンタープライズジン)
https://enterprisezine.jp/article/detail/9677 2017/09/22 15:31

Job Board

AD

おすすめ

アクセスランキング

アクセスランキング

イベント

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けに、EnterpriseZine Day、Security Online Day、DataTechという、3つのイベントを開催しております。それぞれ編集部独自の切り口で、業界トレンドや最新事例を網羅。最新の動向を知ることができる場として、好評を得ています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング