2024.01.25

#16 サイジング事例

DBサーバーのリソース割り当て適正の確認

目次

開く

     

    今回はDBサーバー更改において、更改後にどの程度のリソース割り当てが適正かを確認したいとの相談を受け、サイジングをおこなった事例をご紹介します。

     

     

    相談内容

    • 更改後のDBサーバーの適正なリソースサイズを確認したい
    • DBサーバーの業務量が10%、20%、30%と増加した場合のリソースサイズの見積りをしたい

     

     

    見積りの前提

    • リソースの見積りを行う基礎データは、vCPU使用率・メモリ使用率と現行DBサーバーの業務量データの相関分析を行い使用率の伸びを基に実施する
    • DBサーバーの業務量データは、Oracleの論理DBアクセス回数(コンシステントGET回数とデータベースGET回数の合計値)を使用する
    • 実行されるSQL文、処理されるデータサイズなどは、現環境のものと変更が無いものとする
    • 業務量増加時の見積りは、10%・20%・30%の増加率で見積りを実施する

     

     

    Oracle業務量の基準値設定

    リソースの見積りを実施する際、ターゲットとなるvCPU使用率とOracle業務量の基準値を設定する必要があるため、現在のvCPU使用率とOracle業務量との相関判定を実施し、vCPU使用率「60%」、Oracle業務量の基準値を「800,000,000回」と設定した。

     

     

     

    techreport_no.16_img01
    techreport_no.16_img01

    vCPU使用率とOracle業務量の関係

     

     

    考察:vCPU

    • 現在、vCPU使用率は、60%程度である。Oracle業務量が増加しない場合は、現行のvCPU割り当て数で問題ないと考えられる
    • 基準とするOracle全体の業務量を800,000,000回とし、増加量を10%・20%・30%とした場合、業務量は以下の値となる
      10%増加→ 880,000,000回
      20%増加→ 960,000,000回
      30%増加→1,040,000,000回
    • 業務量がそれぞれ10%、20%、30%と増加した場合、vCPUの使用率は以下の値となる
      10%増加→65%
      20%増加→70%
      30%増加→75%
    • vCPUの使用率を60%程度とする場合、vCPUの割り当ては下記割り当てとなる。
      0%増加→変更なし
      20%・30%増加→vCPUを「2」増加させる

     

     

    techreport_no.16_img03
    techreport_no.16_img03

    vCPU使用率とOracle業務量の関係

     

     

    考察:メモリ

    Oracle業務量とメモリ使用率に相関関係は認められなかった。業務量増加が無い場合は、現在のメモリ割り当てサイズで問題ないと考えられる。また、Oracle業務量が10%、20%、30%に増加した場合でもメモリ使用率は80%未満で推移すると考えられる(Oracleに割り当てられているメモリ量は一定のため)。

     

     

    techreport_no.16_img02
    techreport_no.16_img02

    ゲストメモリ使用量とOracle業務量の関係

     

     

    キャッシュ関連では、現行割り当てにてバッファキャッシュヒット率は良好な状態であり、Oracle業務量増加につれてヒット率が下がる傾向は確認できない。Oracle業務量基準値を目安に、10%・20%・30%と業務量が増加しても現行割り当てサイズで問題ないと考えられる。

     

     

    techreport_no.16_img05
    techreport_no.16_img05

    バッファキャッシュヒット率とOracle業務量の関係

     

     

    Redoログバッファ待ち時間とOracle業務量との相関関係は認められなかった。業務量が少ないタイミングでも待ちが発生していることから、特定処理が実行された際に発生するものと考えられる。また、この際待機イベント「log file switch completion」が発生している。

     

     

    techreport_no.16_img06
    techreport_no.16_img06

    redoログバッファ待ち時間とOracle業務量の関係

     

     

     

    考察:その他

    その他考察として、Oracleバージョンアップ時にSQL処理のパフォーマンス劣化が確認される場合があるため、以下オプティマイザ関連のパラメータ確認・調整を行うようアドバイスを実施。
    <パラメータ>
    OPTIMIZER_INDEX_COST_ADJ
    OPTIMIZER_INDEX_CACHING
    OPTIMIZER_DYNAMIC_SAMPLING

     

    【まとめ】

    今回は、更改後のDBサーバーの適正なリソース見積り事例を紹介させて頂きました。日頃から収集している各種パフォーマンスデータを利用することで、現在割り当てられているリソース使用状況から更改後の適正なリソース割り当てを判断することが可能となります。また、業務量が増加した場合、どの程度までの業務量であればリソースを増強せずに処理を行えることが可能かを確認することができました。

     

    執筆者

    T.N. 

    営業技術本部 技術サービス統括部 技術サービス1部 部長

    お客様担当SEとして、製品の構築から活用方法までの一連のサポートを担当
    また、お客様環境にて性能問題が発生した際には、製品のアウトプットを利用し、問題解決に向けた調査/提案業務を実施

    ■経歴
    1995年  入社
    1996年  製品テスト等、ES/1シリーズの品質管理業務を担当
    2001年~ 東京でのお客さまサポートを担当

    主にオープン系製品を利用したシステムリソース情報からの性能管理サポートに従事
    近年は、上記に加えAPM製品を利用したユーザー体感レスポンスやアプリケーション視点での性能管理サポートにも従事

    関連記事