ITパスポート対策

システム構成と信頼性

この節には計算問題があります。稼働率の計算は式が2本しかないので、覚えてしまえば確実な得点源になります。

処理をどこで分担するか

まず構成の型を整理します。クライアントサーバシステムは、サービスを提供するサーバと、利用する側のクライアントに役割を分ける方式です。処理をサーバとクライアントで分担します。

シンクライアントは、手元の端末にはほとんど処理をさせず、データも保存しない方式です。処理と保存はサーバ側でまとめて行います。端末が薄い(thin)という意味の名前です。端末を紛失してもデータが残っていないため、情報漏えい対策として採用されます。「シンクライアントは端末側にデータを保存する」という記述は誤りです。

二重化の2つの型

信頼性を上げる代表的な方法が、装置を2組用意する二重化です。名前が似た2つを区別してください。

方式ふだんの動き故障したとき
デュアルシステム2組が同じ処理を並行して行い、結果を照合する故障したほうを切り離して継続する
デュプレックスシステム主系が処理し、従系は待機または別の仕事をする従系に切り替えて継続する

デュアルは「同時に同じことをする」、デュプレックスは「片方が待機する」と覚えます。待機のしかたには、いつでも切り替えられるホットスタンバイと、電源を入れるところから始めるコールドスタンバイがあります。

稼働率の計算

稼働率とは、全体の時間のうちシステムが使えている時間の割合です。使う式は次の2本です。

  • 直列(すべてが動いて初めて全体が動く)のときは、掛け算で a × b
  • 並列(どれか1つ動けば全体が動く)のときは、1 - (1 - a) × (1 - b)

並列の式は、両方が同時に止まる確率を1から引いたものです。意味が分かっていれば装置が3台に増えても対応できます。

稼働率0.9の装置2台で計算してみます。

直列 0.9 × 0.9 = 0.81 並列 1 - (1 - 0.9) × (1 - 0.9) = 1 - 0.01 = 0.99

同じ2台でも、つなぎ方で0.81と0.99に分かれます。直列は必ず元の稼働率より下がり、並列は必ず上がります。この向きを知っていれば、計算する前に明らかにおかしい選択肢を消せます。

稼働率0.9と0.8の組み合わせなら、直列は 0.9 × 0.8 = 0.72、並列は 1 - 0.1 × 0.2 = 0.98 です。

MTBFとMTTRから稼働率を出す

もう1つの出し方が、故障と修理の平均時間から求める方法です。

用語読み方意味
MTBF平均故障間隔故障せずに動き続ける時間の平均
MTTR平均修理時間故障してから直るまでの時間の平均

稼働率は MTBF ÷ (MTBF + MTTR) で求めます。分母は動いていた時間と止まっていた時間の合計、つまり全体の時間です。MTBFが990時間、MTTRが10時間なら 990 ÷ 1000 = 0.99 となります。

分子をMTTRにしてしまうのがよくある誤りです。分子は動いている側のMTBFです。なお、動いていない割合を故障率ではなく不稼働率と呼び、これは 1 - 稼働率 です。

RAID

RAIDは、複数のハードディスクをまとめて1台のように扱い、速度や信頼性を高める技術です。

種類仕組みねらい
RAID0データを分散して書く(ストライピング)速度。信頼性は下がる
RAID1同じデータを2台に書く(ミラーリング)信頼性
RAID5分散して書き、誤り訂正用の情報も分散して持つ速度と信頼性の両立

RAID0だけは信頼性が上がらず、むしろ1台でも壊れると全体が読めなくなる点が問われます。番号が大きいほど高性能というわけではありません。

生田 陸人
ゆめさくエンジニア / 現役ソフトウェアエンジニア
編集 LuaGate編集部