pulpul 日本の試験

システムアーキテクト 概念書 · システム戦略・企画

システムの信頼性と稼働率

信頼性は、システムが故障せずに機能を続ける性質を指す。稼働率(アベイラビリティ)は、システムが利用可能な状態にある時間の割合であり、故障の起こりにくさを表すMTBFと、故障からの復旧に要する時間を表すMTTRから求められる。本単元では、稼働率の式、直列と並列の組み合わせによる計算、待ち行列による待ち時間、故障率曲線の読み方を整理する。

稼働率の式と性質

稼働率は、MTBF ÷(MTBF+MTTR)で求められる。MTBFは故障から次の故障までの平均時間を、MTTRは故障から復旧までの平均時間を表す。したがって、故障が起こりにくくなるか、復旧が速くなるほど稼働率は高まる。過去問では、MTBFとMTTRがともに1.5倍になった場合の稼働率の変化が問われており、両方が同じ倍率で変わると倍率が約分されて稼働率は変わらない。

稼働率の比較では、MTBFとMTTRの比率が重要であり、片方だけが変化するのか、両方が同じ倍率で変化するのかを区別する。

直列と並列の稼働率計算

構成要素の稼働率から全体の稼働率を求めるには、構成の組み合わせを見極める必要がある。すべての要素が稼働しなければならない直列部分では稼働率を掛け合わせ、いずれか一つが稼働すればよい並列の冗長部分では、1から故障率の積を引いて求める。過去問では、アプリケーションサーバとデータベースサーバがそれぞれ2台の構成で、稼働率0.8のときのシステム稼働率が問われている。

それぞれの層は2台の並列構成であり、どちらか1台が稼働すれば層は稼働する。1台の稼働率0.8から層の稼働率は1−(1−0.8)²で0.96となり、アプリケーション層とデータベース層の両方が必要なため、0.96×0.96で約0.92と求められる。負荷分散装置と磁気ディスク装置は故障しないと仮定されているため、この二つは計算に含めない。

判断の際には、直列か並列かを先に整理することが基準になる。各層を1台とみなして0.8×0.8とする誤り、片方の層にだけ冗長性を反映して約0.77とする誤り、片方の層の0.96だけを答えてしまう誤りが典型的である。

待ち行列モデルによる待ち時間の判断

M/M/1の待ち行列モデルでは、利用率ρと平均処理時間Tから、平均待ち時間をρ/(1−ρ)×Tで表せる。この式はサービス時間を含まない平均待ち時間を対象とする。利用率が高まるほど分母の(1−ρ)が小さくなるため、待ち時間は急に増える。

この節の続き

ここまでが冒頭部分です。ログインすると、無料でも1日2節まで全文をお読みいただけます。

アプリでこの節を読む