概要
情報技術の基礎として理解しておきたいシステム評価指標について、性能指標、キャパシティプランニング、RASIS、信頼性指標、稼働率計算を整理する。
システム評価では、速いか、止まりにくいか、復旧しやすいかを数値で判断する。
用語を覚えるだけでなく、指標が何を測っているかを意識すると計算問題にも対応しやすい。
この記事で扱うこと
- レスポンスタイム、スループット、ターンアラウンドタイムの違い。
- キャパシティプランニングの目的。
- RASIS の5要素。
- MTBF、MTTR、稼働率の意味。
- 直列構成・並列構成の信頼性計算。
理解しておきたい要点
| 分野 | 整理する内容 |
|---|---|
| 性能指標 | 応答時間、処理件数、利用率などの意味。 |
| キャパシティ | 負荷増加を見越した性能・容量計画。 |
| RASIS | 信頼性、可用性、保守性、保全性、安全性。 |
| MTBF/MTTR | 平均故障間隔と平均修理時間の違い。 |
| 稼働率 | 直列・並列構成での計算。 |
システムの性能指標
システムの評価指標とは、性能、信頼性、経済性などの総合的な評価指標のこと。
以下、性能についての指標や手法を示す。
-
レスポンスタイム
システムに要求してから応答(レスポンス)があるまでの時間で、早いレスポンスであることを表す指標。また、システムに要求する準備を開始した時間から応答が完了するまでの時間をターンアラウンドタイムという。
-
例:下記の表の多重度が \(1\) となるジョブ \(A\) ~ \(C\) において、 \(C\) のターンアラウンドタイムを求める。
ジョブ 到着時間 実行時間 \(A\) \(0\) 秒 \(5\) 秒 \(B\) \(2\) 秒 \(6\) 秒 \(C\) \(4\) 秒 \(3\) 秒 \(A\)、\(B\) の到着から実行完了までが \(5 + 6\) \(= 11\) 秒、\(C\) の到着時間が \(= 4\) 秒。
よって、C の待機時間は \(11 - 4\) \(= 7\) 秒、これに \(C\) 実行時間 \(3\) 秒を加えて、\(10\) 秒となる。
-
-
スループット
単位時間あたりの処理可能数で処理性能を表す指標。 -
ベンチマーク
処理速度を計測するための指標で、計測用プログラムの実行結果を基に性能を比較する。- 代表的なベンチマーク
- TPC-C:TPC(トランザクション処理性能評議会)が作成しているオンライントランザクション処理のベンチマーク。
- SPECint:SPEC(標準性能評価法人)が作成している整数演算評価のベンチマーク。
- SPECfp:SPEC(標準性能評価法人)が作成している浮動小数点演算評価のベンチマーク。
- 代表的なベンチマーク
-
モニタリング 実際にシステムを稼働させて、性能を測定する手法。
キャパシティプランニング
キャパシティプランニングとは、ニーズを満たすために必要なシステムリソースの処理能力や数量などを見積もり、最適なシステム構成を計画すること。
- 主な手順
- ワークロード情報の収集
CPU利用率などの測定を行い、コンピュータ資源の利用状況や負荷状況(ワークロード)を収集する。 - サイジング
システムに必要な規模や性能を見通して、サーバー数やCPU性能、ストレージ容量などの構成要素を用意または見積もる。 - 評価/チューニング
サイジングでの見積もりが適切かどうか、テスト環境で評価しチューニングを繰り返す。
※TPCやSPEC等のベンチマークを参考にする場合もある。
- ワークロード情報の収集
RASIS(信頼性の評価項目)
システムの信頼性を総合評価する基準として、以下 \(5\) つの評価項目を基に信頼性を判断するRASISという概念がある。
- Reliability(信頼性)
安全性(故障や障害が発生する可能性の低さ)を表し、指標として次項のMTBFや故障率が用いられる。 - Availability(可用性)
稼働している割合の高さを表し、指標として次項の稼働率が用いられる。 - Serviceability(保守性)
障害発生時のメンテナンスのしやすさ、復旧の速さを表し、指標として次項のMTTRが用いられる。 - Integrity(保全性)
障害発生時や過負荷状態におけるデータ不整合の発生のしにくさや、データの欠陥または消失時の復元率を表し、データ的な一貫性を確保する指標。 - Security(機密性)
情報漏えいや不正侵入などのセキュリティ事故が発生する可能性の低さを表し、セキュリティ事故を防止する指標。
信頼性の指標
代表的な信頼性指標:
-
MTBF(Mean Time Between Failure:平均故障間隔)
故障復旧後から次の故障までにかかる平均時間。 -
MTTR(Mean Time To Repair:平均復旧時間)
故障したシステムの復旧にかかる平均時間。 -
稼働率
ある特定の時間にシステムが稼働している確率。\[ \text{稼働率} = \frac{MTBF}{MTBF + MTTR} \] -
故障率
ある特定の時間にシステムが稼働していない確率。\[ \text{故障率} = 1 - \text{稼働率} \]※ 不稼働率とも呼ばれる。
または、単位時間内に発生する故障の確率。
\[ \text{故障率} = \frac{1}{MTBF} \]
信頼性の計算
信頼性と稼働率の基本的な計算方法。
-
並列システム
機器を並列にしたシステムを指し、少なくとも一つ稼働していれば不稼働(故障状態)とならないため、稼働率は高くなる。二つの機器を並列にしたシステムがあったとき、稼働率をそれぞれ \(a\)、\(b\) とする。
このときの不稼働率は、それぞれ \(1 - a\) と \(1 - b\) となり、稼働率は以下の計算で求められる。
\[ \text{稼働率} = 1 - (1 - a)(1 - b) \] -
直列システム
機器を直列にしたシステムを指し、一つでも不稼働(故障状態)であれば稼働しないため、稼働率は低くなる。それぞれの機器の稼働率を \(a\)、\(b\) としたとき、稼働率は以下の計算で求められる。
\[ \text{稼働率} = a \times b \] -
並列と直列を組み合わせたシステム
次の \(2\) 種類に分類される。- (*1) 直列システム \(A\)、\(B\) と直列システム \(C\) が並列。
- (*2) 直列システム \(A\) と並列システム \(B\)、\(C\) が直列。
このとき、それぞれの稼働率を \(a\)、\(b\)、\(c\) とすると (*1)、(*2) の稼働率は次で求められる。
-
(*1) の稼働率
\[ 1 - (1 - ab)(1 - c) \] -
(*2) の稼働率
\[ a\{1 - (1 - b)(1 - c)\} \] -
例:上記 (*1)、(*2) の稼働率が \(0\) より大きく、\(1\) 未満である場合、どちらの稼働率が高くなるか?
→ (*1) - (*2)の差を求める。\[ = 1 - (1 - ab)(1 - c) - a\{1 - (1 - b)(1 - c)\} \]\[ = c - ac \]\[ = c(1 - a) \]ここで、\(a\)、\(c\) の稼働率は \(0\) より大きく、\(1\) 未満であることが前提。
よって、\(1 - a > 0\)、\(c > 0\) となり、差はプラスであるため、(*2)より、(*1) の稼働率が高くなる。
違いを整理する
| 比較する項目 | 整理するポイント |
|---|---|
| レスポンスタイムとターンアラウンドタイム | 応答開始までか、処理完了までかで異なる。 |
| スループットと性能 | 単位時間あたりの処理量を見る。 |
| 信頼性と可用性 | 故障しにくさと利用できる状態の保ちやすさは別。 |
| MTBFとMTTR | 故障するまでの平均時間と修理にかかる平均時間。 |
| 直列と並列の稼働率 | 直列は全要素が動く必要があり、並列はどれかが動けばよい。 |
実務とのつながり
-
性能指標
Webシステムや業務システムの改善目標を決めるときに使う。 -
キャパシティプランニング
アクセス増加やデータ増加に備えた設計に役立つ。 -
稼働率
SLAや冗長化設計の妥当性を判断する材料になる。
まとめ
- システム評価指標は、性能と信頼性を数値で判断するためのものとなる。
- RASISは、信頼性や可用性などを整理する代表的な観点となる。
- 稼働率は、MTBFとMTTR、またはシステム構成から計算できる。
参考文献
- 瀬戸 美月 (\(2020\)) 『徹底攻略 応用情報技術者教科書』株式会社インプレス