Forum Stats

  • 3,724,451 Users
  • 2,244,761 Discussions
  • 7,851,017 Comments

Discussions

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Categories

ADB HOL #5-3 : OLTP系処理の実行、自動スケーリングの理解

TakeshiNagakubo-Oracle
TakeshiNagakubo-Oracle Posts: 18 Employee
edited December 2020 in Social Groups

る : チュートリアル : Oracle Cloud Infrastructure を使ってみよう

>ADBコンテンツ一覧に戻る

Oracle Exadataをベースに構成されるAutonomous Database(ADB)は、分析系の処理だけでなく、バッチ処理、OLTP(オンライン・トランザクション)処理といった様々なワークロードに対応可能です。

この章ではOracle Databaseのベンチマークツールとして利用されることの多いSwingbenchを利用し、OLTP処理をATPで動かしてみます。

併せて、データベースの負荷状況に応じて自動的にCPUをスケールさせる、自動スケーリング(Auto Scaling)の動作を確認します。

作業の流れ

  1. Swingbenchをセットアップしよう
  2. Swingbenchのデータを確認しよう
  3. Swingbenchを実行し、OCPUをスケールアップしてみよう

所要時間 : 約50分


1. Swingbenchをセットアップしよう

 

まずはSwingbenchを仮想マシン上にダウンロードし、ベンチマーク・データをADBインスタンス内に生成しましょう。

参考情報)

     http://www.dominicgiles.com/blog/files/c84a63640d52961fc28f750570888cdc-169.html

1. Tera Termを起動し、仮想マシンにopcユーザーでログインします。

2. oracleユーザに切り替えます。

$ sudo su - oracle

3. 作業用ディレクトリに移動します。

$ cd ~/labs/swingbench

4. Swingbenchをダウンロードします。wgetもしくはcurlコマンドをご利用ください。(数分程度かかります。)

$ wget http://www.dominicgiles.com/swingbench/swingbenchlatest.zip   もしくは$ curl http://www.dominicgiles.com/swingbench/swingbenchlatest.zip -o swingbenchlatest.zip

5. 展開します。

$ unzip swingbenchlatest.zip

6. (必要に応じて)念のためSQL*Plusでログインできることを確認します。

$ export TNS_ADMIN=/home/oracle/labs/wallets$ sqlplus admin/Welcome12345#@atp01_tpSQL> exit

7.  データ生成用のスクリプトを編集・実行します。

7-1. vi で 1install.sh を開き、内容を確認、必要に応じて編集ください。特に以下に示した赤字の箇所に誤りがないかご注意ください。

$ vi 1install.sh

【1install.shの内容 】

#!/bin/sh./swingbench/bin/oewizard -cf ~/labs/wallets/Wallet_atp01.zip \     -cs atp01_tp \     -ts DATA \     -dbap Welcome12345# \     -dba admin \     -u soe \     -p Welcome12345# \     -async_off \     -scale 5 \     -hashpart \     -create \     -cl \     -v

7-2. ファイルに実行権限を付与します。

$ chmod +x 1install.sh

7-3. スクリプトを実行し、データを生成します。

$  nohup ./1install.sh &

     ADBインスタンス内にSOEスキーマが作成され、その中にSwingbenchで利用するオブジェクト、データが作成されます。     データ増幅処理の処理時間短縮化のために、出来ればOCPU数は多めに設定ください。(状況に依存しますが、OCPU=4の場合、2、30分程度。)     またデータ生成には多少なり時間を要するため、nohupコマンドを利用します。こうすることで、仮想マシンとのネットワーク通信が万が一切断されたとしても、仮想マシン上で本スクリプトの実行を継続することが可能です。

7-4. 実行状況の確認します。

$ tail -f nohup.out

7-5.  以下のようにSchema Created が表示されたらデータ増幅の処理は完了です。CTRL + C で nohupコマンドを終了してください。

pastedImage_7png


2. Swingbenchのデータを確認しよう


次にセットアップしたデータに問題がないか確認します。

1. Tera Termを起動し、仮想マシンにログインします。

2. oracleユーザに切り替えます。

$ sudo su - oracle

3. 作業用ディレクトリに移動します。

$ cd ~/labs/swingbench

4. vi で 2-1check.sh を開き、内容を確認、必要に応じて編集ください。

$ vi 2-1check.sh

【2-1check.shの内容 】

1つ目の処理:val 生成したオブジェクト数を確認します。

2つ目の処理:stats 統計情報を取得しています。Autonomous Databaseでは統計情報を自動取得していますが、ここではSwingbenchのセットアップマニュアルに従い実行しています。

3つ目の処理:各表の件数を確認しています。

#!/bin/sh./swingbench/bin/sbutil -soe -cf ~/labs/wallets/Wallet_atp01.zip \     -cs atp01_tp -u soe -p Welcome12345# \     -val./swingbench/bin/sbutil -soe -cf ~/labs/wallets/Wallet_atp01.zip \     -cs atp01_medium -u soe -p Welcome12345# \       -stats./swingbench/bin/sbutil -soe -cf ~/labs/wallets/Wallet_atp01.zip \       -cs atp01_medium -u soe -p Welcome12345# \     -tables

5. ファイルに実行権限を付与します。

$ chmod +x 2-1check.sh

6. スクリプトを実行し、実行結果を確認します。(統計情報の再取得も実施しているため数分程度かかります。)

$  ./2-1check.sh

以下のように表示されればOKです。

pastedImage_1png

7. ファイルに実行権限し、実行します。負荷がけ用のパラメータを調整しています。(特にエラー等が出なければOKです。)

$ chmod +x 2-2pre.sh$ ./2-2pre.sh


3. Swingbenchを実行し、OCPUをスケールアップしてみよう


それではベンチマークツールを動かしてみましょう。OCPUをオンラインでスケールアップできること、スケールアップの前後でTPS(秒間のトランザクション数)を比較し、TPSが向上することを確認しましょう。

1. 後続のシナリオのために、一旦、OCPU数を1に設定しておきます。

    必要に応じてを参照ください。
pastedImage_0png

1. 作業用ディレクトリに移動します。(引き続き、oracleユーザで作業します)

$ cd ~/labs/swingbench

2. vi で 3execute.sh を開き、内容を確認・編集してください。特に以下に示した赤字の箇所に誤りがないかご注意ください。

$ vi 3execute.sh

【3execute.shの内容 】

#!/bin/sh./swingbench/bin/charbench -c ~/labs/swingbench/swingbench/configs/SOE_Server_Side_V2.xml \         -cf ~/labs/wallets/Wallet_atp01.zip \         -cs atp01_tp -u soe -p Welcome12345# \         -v users,tpm,tps,vresp \         -intermin 0 \         -intermax 0 \         -min 0 \         -max 0 \         -uc 64 \         -di SQ,WQ,WA

3. ファイルに実行権限を付与し、実行します。

$ chmod +x 3execute.sh$ ./3execute.sh

以下のように表示されればOKです。

pastedImage_0png

左から4列目のTPS(秒間のトランザクション数)の数字に着目ください。

1分程度待って安定した時点での値を、この後の比較のためにメモしておいてください。

4. OCPU数を1から2に増やしてください。

pastedImage_2png

     Swingbenchは動いたままオンラインでOCPUをスケールアップできること、スケールアップ後にTPSが向上していることが確認できればOKです。

5. 自動スケーリング(AutoScaling)を有効にするために、自動スケーリングにチェックを入れ、更新をクリックください。

pastedImage_3png

     ここでもSwingbenchは動いたままオンラインで有効化できること、またTPSが向上していることが確認できればOKです。

6. Swingbenchをするために、Enterキーを押すと終了されます。

pastedImage_4png

以上で、この章の作業は終了です。

次の章にお進みください。

Sign In or Register to comment.