1秒間に処理できるトランザクション (処理のまとまり)の数で、システムの処理能力を示すことがあり、これをTPS (Transactions Per Second = トランザクション/秒) と呼ぶ。 今回の問題は、TPS を求める問題である。運用条件に示された数字を使えば、TPSを計算できる。
特別な公式は、必要ない。
【基本情報技術者試験】平成23年度特別試験・午前
【データベースシステムのTPSを求める】
問19
Web サーバとデータベースサーバ各1台で構成されているシステムがある。次の運用条件の場合、このシステムでは最大何TPS処理できるか。ここで,各サーバの CPU は、1個とする。
(運用条件)
(1)トランザクションは, Webサーバを経由し,データベースサーバでSQLが実行される。(2)Webサーバでは、1トランザクション当たり,CPU時間を1ミリ秒使用する。
(3)データベースサーバでは,1トランザクション当たり, データベースの10データブロックにアクセスするSQLが実行される。1データブロックのアクセスに必要なデータベースサーバのCPU時間は, 0.2ミリ秒である。
(4)CPU使用率の上限は,Webサーバが70%,データベースサーバが80%である。
(5)トランザクション処理は、CPU時間だけに依存し,Webサーバとデータベースサーバは互いに独立して処理を行うものとする。
ア 400 イ 500 ウ 700 エ 1,100
答えを確認する(ここをクリック)
正解は、アです。
このシステムは、1台のWebサーバと1台のデータベースサーバから構成されている。
複数のサーバから構成されたシステムでは、最も遅いサーバの処理能力が、全体の処理能力を決めることになる。
Webサーバの処理能力は、1トランザクション当たり1ミリ秒なので、$\frac{1秒}{1ミリ秒}=1,000TPS$である。 ただし、CPUの使用率の上限が70%なので、実際には$1,000×0.7=700TPS$になる。
データベースサーバでは、1トランザクション当たり10データブロックにアクセスし、1データブロックの処理時間が0.2ミリ秒なので、1トランザクション当たりの処理時間は、$10×0.2=2ミリ秒$である。したがって、データベースサーバの処理能力は、$\frac{1秒}{2ミリ秒}=500TPS$である。
ただし、CPUの使用率の上限が80%なので、実際には$500×0.8=400TPS$になる。Webサーバが700TPSで、データベースサーバが400TPSなので、遅い方の400TPSが、システムの処理能力になる。 正解は、選択肢アとなる。
(参考)情報処理教科書 出るとこだけ!基本情報技術者[科目A][科目B]矢沢久雄 (著)翔泳社


コメント