デュアルシステムとデュプレックスシステムの違い
デュアル
デュアルシステムとデュプレックスシステムの違い
システムを2組用意して故障に備えるとき、2組目をどう使うかで方式が分かれます。デュアルシステムは、2組のシステムで同じ処理を同時に行い、結果を照合する方式です。デュプレックスシステムは、ふだんは主系だけが処理し、主系が故障したら待機系に切り替える方式です。
違いは、もう1組がふだんから同じ処理をしているかどうかです。この違いが、故障したときに処理が止まるかどうかと、かかる費用の差になります。2組にして稼働率がどこまで上がるかは、可用性とSLAの記事の並列構成の式で求められます。
シンプレックスシステムとは
比べる基準になるのは、1組だけで動く構成です。処理を受け持つシステムが1組しかなく、予備を持たない構成をシンプレックスシステムと呼びます。
構成が単純で、費用はいちばん安く済みます。その代わり、システムが故障すると、修理が終わるまで処理が止まります。デュアルシステムとデュプレックスシステムは、どちらもこの弱点を2組目で補う方式です。
デュアルシステムとは
デュアルシステムでは、2組のシステムに同じデータを入れ、同じ処理を同時に行います。2つの結果を照合し、一致したら出力します。結果が食い違えば、どちらかに異常が起きたと分かります。
1組が故障したときは、故障した側を突き止めて切り離します。残った1組は最初から同じ処理をしていたので、引き継ぐ手間がなく、そのまま処理を続けられます。その代わり、2組を常に同じ処理に使うため、2組分の費用がかかります。
次の図は、3つの方式のふだんの処理の流れを並べたものです。デュアルにだけ照合があり、デュプレックスにだけ故障時に使う点線の経路があります。
デュプレックスシステムとは
デュプレックスシステムでは、2組のうち1組だけがふだんの処理をします。処理をする側を主系と呼び、現用系とも呼びます。もう1組は、主系の故障に備えて待つ待機系で、従系とも呼びます。
主系が故障したら、待機系が主系の処理を引き継ぎます。この切り替えが終わるまでの間は、処理が止まります。待機系にふだん別の処理をさせておけば、2組目を遊ばせずに済みます。
故障したときに何が起きるか
3つの方式の違いは、系Aが故障した瞬間にいちばんはっきり出ます。次の図で、方式と場面を選ぶと、それぞれの系の状態と、利用者から見て処理が止まるかどうかが出ます。
- 系A処理中
- 系A故障
- 系A修理中
- 系A処理中
- 系B処理中
- 系A切り離す
- 系B処理中
- 系A修理中
- 系B処理中
- 主系(系A)処理中
- 待機系(系B)待機
- 主系(系A)故障
- 待機系(系B)切り替え中
- 主系(系A)修理中
- 待機系(系B)処理中
最初に出ているのは、デュプレックスで系Aが故障した直後です。デュアルに切り替えると、同じ場面でも処理は止まりません。シンプレックスでは、そのあとの場面でも止まったままです。
待機系の準備の度合い
デュプレックスシステムで処理が止まる時間は、待機系をどこまで準備しておくかで変わります。準備の度合いによって、ホットスタンバイ・ウォームスタンバイ・コールドスタンバイの3つに分けます。
| 方式 | 待機系の | 切り替えの |
|---|---|---|
| ホットスタンバイ | 起動して | 短い |
| ウォームスタンバイ | 一部だけ準備しておく | 中程度 |
| コールドスタンバイ | 電源を | 長い |
準備を進めておくほど切り替えは速くなり、その分だけ費用がかかります。どの方式を選ぶかは、止まってよい時間の目標で決めます。目標から方式を選ぶ考え方は、BCPとDRの記事のスタンバイ方式の節にあります。AWSで待機側のリージョンをどこまで動かしておくかの違いは、AWSのDR戦略の記事で比べています。
違いの一覧
ここまでの違いを、観点ごとに並べます。見分けるときは、もう1組がふだんから同じ処理をしているかどうかを最初に見ます。
| 観点 | デュアル | デュプレックス |
|---|---|---|
| ふだんの | 2組が | 主系だけが |
| 結果の | する | しない |
| 1組が | 切り離して、 | 待機系に |
| 処理が | 止まらずに | 切り替えが |
| もう | 本番の | ふだんは |
| 費用 | 2組分を | 待機系の |
デュアルシステムは、費用をかけて、止まらないことと誤りを見つけられることの両方を得る方式です。デュプレックスシステムは、切り替えの間に止まることを受け入れ、2組目を別の処理にも使える方式です。
稼働率との関係
デュアルもデュプレックスも、2組のうちどちらかが動いていれば処理を続けられます。そのため、稼働率を計算するときは並列構成として扱います。計算式は、可用性とSLAの記事の直列構成と並列構成の節で説明したものと同じです。
例えば、稼働率0.9のシステムが1組だけなら、全体の稼働率は0.9です。2組を並列にすると、2組とも止まる割合は0.1×0.1で0.01になります。全体の稼働率は1−0.01で0.99に上がります。
この計算は、デュプレックスで切り替えにかかる時間を含みません。切り替えの間に止まる時間が長いほど、実際の稼働率はこの値より下がります。
クラスタ・ロードシェアリングとの違い
複数のコンピュータをつなぎ、外から1つのシステムのように見せる構成をクラスタと呼びます。主系と待機系の2台をクラスタとして組み、デュプレックスシステムにすることもあります。
複数のシステムで処理を分け合う方式は、ロードシェアリングシステムと呼びます。1件ごとの処理はどれか1つのシステムが受け持つ点が、同じ処理を2組で行うデュアルシステムと違います。1台が故障しても、残りのシステムで処理を続けられますが、受け持てる量は減ります。処理を分け合う仕組みの具体例が、ロードバランサによる負荷分散です。
主系と待機系に分ける考え方はアクティブ-スタンバイ構成、全部の系で処理する考え方はアクティブ-アクティブ構成とも呼ばれます。デュプレックスシステムは前者に、ロードシェアリングシステムは後者に近い考え方です。
練習問題(全5問)
正解:2組の
デュアルシステムは、
解説記事:デュアルシステムの
正解:デュプレックスシステム
主系と、
解説記事:デュプレックスシステムの
正解:デュアルシステム
デュアルシステムでは、
解説記事:故障した
正解:ホットスタンバイ
ホットスタンバイは、
解説記事:待機系の
正解:0.99
どちらか
解説記事:稼働率との
選んでから「採点する」を押すと、解説つきで答え合わせができます。
参考にした資料
- IPA ITパスポート試験 平成21年度秋期 公開問題(問86。デュアルシステムの説明)
- IPA ITパスポート試験 平成29年度秋期 公開問題(問87。主系と従系からなる方式)