応用情報技術者 2009年 春期 午後 問04
災害復旧対策(ディザスタリカバリ)に関する次の記述を読んで、設問1〜4に答えよ。
R社の基幹システムは、システムセンタに設置されたセンタシステムと全国に配置された端末から構成されている。センタシステムと端末とはネットワークで接続されていて、予約管理を中心としたオンライン業務に用いられる。センタシステムでは、在庫や予約などのデータをもち、排他制御などのトランザクション管理を伴う並行処理を実行する。端末では端末で行われた予約などの業務の履歴データをもっている。オンライン業務を行う時間は毎日5時から23時までである。
災害が発生してセンタシステムが使用不能になると、R社だけでなく顧客などの関係者にも多大な影響と損害が及ぶおそれがある。そこで、システムセンタの災害対策として、現在のシステムセンタ(以下、メインセンタという)のほかに、遠隔地にバックアップ用のシステムセンタ(以下、バックアップセンタという)を設けることになった。メインセンタとバックアップセンタとの間は専用線で接続する。システムの構成を図に示す。
メインセンタが被災して使用不能になった場合には、端末の接続先をバックアップセンタに切り替えて、バックアップセンタのセンタシステムを使って業務を再開させる。

災害復旧対策における目標とする復旧のレベルの指標として、復旧時間目標(RTO:Recovery Time Objective)及び復旧時点目標(RPO:Recovery Point Objective)を用いる。
・RTO
RTOは、メインセンタが使用不能になった時(以下、という)からバックアップセンタにおいて業務が再開されるまでにかかる時間の目標を表す。RTOが短いほど復旧のレベルは高いが、実現に要するコストも高くなる。
このシステムでは、RTOを24時間とする。バックアップセンタにあらかじめ必要なハードウエアとソフトウエアを準備し、必要なデータをメインセンタから適時専用線経由でバックアップセンタにコピーしておくことで、目標のRTOを実現する。
・RPO
RPOは、データをにどれだけ近い時刻の状態に復旧できるかの目標をとの時間差で表す。RPOがaほど復旧のレベルは高いが、実現に要するコストも高くなる。
このシステムでは、次の三つのレベルについて検討する。
レベル1:RPOを0とする。すなわち、メインセンタで処理したデータはすべて引き継いで、再開する。
レベル2:RPOを数分程度とする。すなわち、t0の数分前までに処理したデータは引き継いで、再開する。
レベル3:RPOを24時間とする。すなわち、t0の24時間前までに処理したデータは引き継いで、再開する。
なお、RPOがレベルb以外の場合では、データ復旧の目標としている時点からまでに行われた処理については処理内容が失われてしまうので、別途何らかの対応策を検討しておくことが望ましい。例えば、このシステムでは、cがもつデータを読み出して対応することも、一つの方法として考えられる。
〔データのコピー方式〕
このシステムでは、夜間のオンライン業務休止時間帯に、必要なファイルをファイル伝送によって一括してバックアップセンタにコピーすることができる。
メインセンタにおけるオンライン業務のトランザクション処理で更新されるデータは、表に示すいずれの方式を用いて、レコード更新時にバックアップセンタにコピーすることができる。どちらの方式のコピーでも更新の順序性は保たれ、コピーされたデータを使用して、バックアップセンタにおいてオンライン業務のデータが回復可能である。

〔オンライン業務で更新するデータ〕
本システムのオンライン業務で更新するデータには、在庫や予約などの業務データと、それらをシステム障害時などに回復するための更新ログがある。
オンライン業務中に業務データが破壊された場合でも、業務開始時点など当日内のチェックポイントにおける業務データ全体のコピーと、それ以降の更新ログがあれば、業務データを回復することができる。このことを利用すれば、オンラインでバックアップセンタへコピーすることが必要なデータを、オンライン業務で更新する全データよりも減らすことができる。
設問1:
本文中のa〜cに入れる適切な字句を答えよ。
模範解答
a:短い
b:1
c:端末
解説
解答の論理構成
-
a の決定
- 引用:“RPOは、データをにどれだけ近い時刻の状態に復旧できるかの目標をとの時間差で表す。RPOがaほど復旧のレベルは高いが、実現に要するコストも高くなる。”
- との差が小さいほど最新のデータで復旧できるためレベルが高いと分かります。差が小さい状態を表す語は「短い」です。
- よって a = “短い”。
-
b の決定
- 引用:
- “レベル1:RPOを0とする。すなわち、メインセンタで処理したデータはすべて引き継いで、再開する。”
- “なお、RPOがレベルb以外の場合では、データ復旧の目標としている時点からまでに行われた処理については処理内容が失われてしまう…”
- 処理内容が失われないのは “メインセンタで処理したデータはすべて引き継ぐ” と記されている “レベル1” のみです。
- よって b = “1”。
- 引用:
-
c の決定
- 引用:“端末では端末で行われた予約などの業務の履歴データをもっている。”
- また、“例えば、このシステムでは、cがもつデータを読み出して対応することも、一つの方法として考えられる。” とあるため、失われた処理を補う候補は履歴データを保持している装置です。
- 該当するのは “端末” です。
- よって c = “端末”。
誤りやすいポイント
- 「RPOが短いほど復旧レベルが高い」を “小さい” や “少ない” と表現してしまう。設問は “字句” を求めるため “短い” が正答です。
- “レベル1=0時間だからデータが欠損する” と誤読し、b を “2” や “3” としてしまうミス。文中の “すべて引き継いで” を見落とさないこと。
- c で “センタシステムのバックアップ装置” などと書いてしまう。端末自身が履歴を保持しているという冒頭の記述を確認すること。
FAQ
Q: RTO と RPO の違いを簡潔に整理すると?
A: RTO は “システムを再稼働させるまでの時間” の目標、RPO は “どこまで最新のデータを保てるか” の目標です。前者はサービス停止時間、後者はデータ損失許容時間と言い換えられます。
A: RTO は “システムを再稼働させるまでの時間” の目標、RPO は “どこまで最新のデータを保てるか” の目標です。前者はサービス停止時間、後者はデータ損失許容時間と言い換えられます。
Q: 非同期コピー(方式B)は災害時に危険では?
A: “コピーは数十秒以内に完了する” とあり、RPO を “数分程度” とするレベル2には十分適合します。完全同期による性能低下とコストを天秤に掛けて選択します。
A: “コピーは数十秒以内に完了する” とあり、RPO を “数分程度” とするレベル2には十分適合します。完全同期による性能低下とコストを天秤に掛けて選択します。
Q: 端末の履歴データを利用する際の注意点は?
A: 端末側で保持しているのは “履歴” であり、センタ側データとの二重化整合やセキュリティ確保が不可欠です。収集手順と照合ロジックを事前に整備しておく必要があります。
A: 端末側で保持しているのは “履歴” であり、センタ側データとの二重化整合やセキュリティ確保が不可欠です。収集手順と照合ロジックを事前に整備しておく必要があります。
関連キーワード: RTO, RPO, 同期コピー, 非同期コピー, 災害復旧
設問2:
表に示す方式A、Bについて、オンライン業務用のシステムの性能に対する影響に関する適切な記述を、それぞれ解答群の中から選び、記号で答えよ。ただし、コピー処理に必要なCPUや外部記憶制御装置の性能は十分であるものとする。
解答群
ア:トランザクションの処理時間はあまり変わらない。
イ:トランザクションの処理時間は、コピーにかかる時間の分だけ増える。同時並行処理数を増やせば、スループットを維持することができる。
ウ:トランザクションの処理時間は、コピーにかかる時間の分だけでなく、排他制御に伴うほかのトランザクションによる更新データのコピー待ち時間までもが待ち時間として増える可能性がある。同時並行処理数を増やすだけでは、スループットを維持できない可能性がある。
模範解答
A:ウ
B:ア
解説
解答の論理構成
-
方式Aの特徴を整理
- 表の記述より
「方式A」「同期コピー」:
「トランザクション処理におけるデータ更新処理は、更新データのコピーが完了するのを待ってから次の処理に進む。」 - つまり各更新が“コピー完了待ち”の分だけ遅延します。さらに並行トランザクションは排他制御で同一レコードを待つことがあり、この待ち時間も連鎖的に増大します。
- 解答群で同じ内容を述べているのは「ウ」
「…コピーにかかる時間の分だけでなく、排他制御に伴うほかのトランザクションによる更新データのコピー待ち時間…スループットを維持できない可能性…」。
- 表の記述より
-
方式Bの特徴を整理
- 表の記述より
「方式B」「非同期コピー」:
「トランザクション処理におけるデータ更新処理は、更新データのコピーが完了するのを待たずに次の処理に進む。コピーは数十秒以内に完了する。」 - コピーはバックグラウンドで行われるため、トランザクション自体の処理時間はほぼ変わりません。
- 解答群で該当するのは「ア」
「トランザクションの処理時間はあまり変わらない。」
- 表の記述より
-
よって
- 方式A → 「ウ」
- 方式B → 「ア」
誤りやすいポイント
- 「コピーは数十秒以内に完了する」を“十分短いから同期でも大差ない”と誤読し、方式Aも「ア」と答えてしまう。待ち合わせ有無が本質です。
- スループット低下をスレッド増加で必ず吸収できると考えがちですが、排他制御とリソース競合を忘れると方式Aの影響を過小評価します。
- RTO・RPOの文脈と混同して、性能より可用性の観点で選択肢を判断してしまう。
FAQ
Q: 同期コピーでもネットワークやストレージが高速なら影響は無視できますか?
A: 待ち時間が“ゼロに近い”ほど影響は小さくなりますが、排他制御でロックを保持する時間が増える事実は残ります。高頻度更新系では依然としてスループット悪化のリスクがあります。
A: 待ち時間が“ゼロに近い”ほど影響は小さくなりますが、排他制御でロックを保持する時間が増える事実は残ります。高頻度更新系では依然としてスループット悪化のリスクがあります。
Q: 非同期コピーはデータ破壊時に不整合が起きませんか?
A: 数十秒以内の未コピー分は失われる可能性があるため、RPO要件(問題文の「レベル2」など)と照合し、ジャーナル適用や再実行など追加策を講じるのが一般的です。
A: 数十秒以内の未コピー分は失われる可能性があるため、RPO要件(問題文の「レベル2」など)と照合し、ジャーナル適用や再実行など追加策を講じるのが一般的です。
Q: “同時並行処理数を増やせばスループットを維持できる”はまったく誤り?
A: リソースに余裕がありロック競合が少ないワークロードでは有効ですが、更新集中型ではロック保持時間の延伸が支配的になり方式Aでは限界があります。
A: リソースに余裕がありロック競合が少ないワークロードでは有効ですが、更新集中型ではロック保持時間の延伸が支配的になり方式Aでは限界があります。
関連キーワード: 同期コピー, 非同期コピー, 排他制御, トランザクション, スループット
設問3:
RPOの各レベルを実現するに当たって、夜間のファイル転送のほかに必要になる更新データのコピー方式を、それぞれ表から選び、A又はBで答えよ。ただし、RPOを実現できるもののうち、オンライン業務用のシステムの性能に最も影響の少ない方式を選ぶものとし、更新データのコピーが必要ない場合は“なし”と答えよ。
模範解答
レベル1:A
レベル2:B
レベル3:なし
解説
解答の論理構成
-
RPOの目標を確認
【問題文】に「RPOは、データをにどれだけ近い時刻の状態に復旧できるかの目標をとの時間差で表す」とあります。
さらに、検討対象は
・「レベル1:RPOを0とする。」
・「レベル2:RPOを数分程度とする。」
・「レベル3:RPOを24時間とする。」
です。 -
コピー方式の特徴を整理
表「更新データのコピー方式」より
・「A 同期コピー:…更新データのコピーが完了するのを待ってから次の処理に進む。」
・「B 非同期コピー:…コピーは数十秒以内に完了する。」
同期は遅延が大きいが損失ゼロ、非同期は業務遅延が小さく数十秒のギャップを許容します。 -
レベル1(RPO=0)の検討
目標は「」時点までの完全一致。数十秒でもギャップが許されないため、コピーが完了するまで処理を待つ「同期コピー」が必須です。したがって方式「A」。 -
レベル2(RPO=数分)の検討
数十秒の遅れで済む「非同期コピー」で目標達成可能です。オンライン性能への影響が小さい方式を選ぶ規定より、「B」。 -
レベル3(RPO=24時間)の検討
夜間休止時間帯に行う「ファイル伝送によって一括してバックアップセンタにコピー」が既に可能と【問題文】に明記されています。業務時間中の追加コピーは不要なので「なし」。 -
以上より
レベル1:A
レベル2:B
レベル3:なし
誤りやすいポイント
- 「RPO=0」を“非同期でも数十秒だから十分”と誤解し、Bを選ぶ。同期でなければゼロ秒差は確保できません。
- 「性能影響を最小に」という条件を読み飛ばし、レベル2に対して安全策としてAを選ぶミス。Aは達成できるが余計に性能を損ねます。
- レベル3でも“24時間以内なら非同期コピーで良い”と考え、Bを選んでしまう。本問では夜間一括コピーが既にあるため追加は不要です。
FAQ
Q: 同期コピーは常に最善ですか?
A: データ損失ゼロという点では最善ですが、トランザクション処理がコピー完了まで待たされるためスループットが大幅に低下します。必要なRPOと性能のトレードオフで選択します。
A: データ損失ゼロという点では最善ですが、トランザクション処理がコピー完了まで待たされるためスループットが大幅に低下します。必要なRPOと性能のトレードオフで選択します。
Q: 非同期コピーの「数十秒以内」とRPO「数分程度」の関係は?
A: 「数十秒以内」は「数分程度」より十分に短いので、RPO目標を満たします。余裕がある分、同期より性能への影響が小さいのが利点です。
A: 「数十秒以内」は「数分程度」より十分に短いので、RPO目標を満たします。余裕がある分、同期より性能への影響が小さいのが利点です。
Q: 夜間一括コピーだけで本当に24時間のRPOを満たせますか?
A: 本システムのオンライン業務は「毎日5時から23時まで」です。夜間(23時〜5時)の間に前日の最終状態をバックアップし、次営業日のオンライン開始までにコピーが完了すれば「の24時間前」までのデータが保証され、RPO=24時間を達成できます。
A: 本システムのオンライン業務は「毎日5時から23時まで」です。夜間(23時〜5時)の間に前日の最終状態をバックアップし、次営業日のオンライン開始までにコピーが完了すれば「の24時間前」までのデータが保証され、RPO=24時間を達成できます。
関連キーワード: RPO, RTO, 同期コピー, 非同期コピー, トランザクション
設問4:表の方式Aによって更新データのコピーを行う場合を考える。本システムのピーク時取扱量は、次のとおりである。

(1)業務データと更新ログの両方の更新データをコピーする場合に、メインセンタとバックアップセンタの間の専用線に必要な伝送速度(Mビット/秒)を求めよ。ただし、データの圧縮は行わず、制御データは無視し、ピーク時の回線の使用率は40%に抑えることとする。
模範解答
50
解説
解答の論理構成
-
更新対象データ量を求める
- 【問題文】「ピーク時トランザクション数 100 件/秒」
- 【問題文】「1トランザクション当たりの平均更新データ量 業務データ 15k バイト」
- 【問題文】「1トランザクション当たりの平均更新データ量 更新ログ 10k バイト」
よって、1トランザクションでコピーすべきデータは
。
-
1秒当たりの転送データ量(バイト値)
。 -
バイトをビットに換算
すなわち 。 -
回線使用率を考慮
- 【問題文】「ピーク時の回線の使用率は40%に抑えることとする。」
必要帯域を とすると
。
- 【問題文】「ピーク時の回線の使用率は40%に抑えることとする。」
-
結論
専用線に必要な伝送速度は 50 Mビット/秒 である。
誤りやすいポイント
- 「kバイト」をそのまま「kビット」と読み違えて8倍し忘れる。
- 回線使用率 40% を逆に掛けてしまい、 Mビット/秒と過少計算する。
- 業務データだけ、または更新ログだけで計算し、合計 25k バイトを使わない。
- 1 k を 1,024 と見なすか 1,000 と見なすか迷うが、本設問は単位換算を厳密に問うていないため、両方を混在させると整合が取れなくなる。
FAQ
Q: 「同期コピー」と「非同期コピー」で計算方法は変わりますか?
A: 帯域計算はコピー完了待ち・待たずの違いに関係なく、コピーする総量で行います。本設問は方式A「同期コピー」を前提としていますが、転送すべきデータ量は同じなので手順は変わりません。
A: 帯域計算はコピー完了待ち・待たずの違いに関係なく、コピーする総量で行います。本設問は方式A「同期コピー」を前提としていますが、転送すべきデータ量は同じなので手順は変わりません。
Q: 回線使用率 40% はなぜ掛け算でなく割り算ですか?
A: 使用率は「実際に流れるデータ量 ÷ 回線能力」で表されます。流量を能力の 40% に抑えるには、能力 = 流量 ÷ 0.40 と逆算する必要があります。
A: 使用率は「実際に流れるデータ量 ÷ 回線能力」で表されます。流量を能力の 40% に抑えるには、能力 = 流量 ÷ 0.40 と逆算する必要があります。
Q: 「k」の値は 1,024 と 1,000 のどちらで計算すべきでしょうか?
A: 情報処理技術者試験の午後問題では、通常 1k バイト=1,000 バイトとしても採点に影響しない構成になっています。本設問でも 1,024 で計算しても結果は 48.8→約50 Mビット/秒となり、整数解「50」に収束します。
A: 情報処理技術者試験の午後問題では、通常 1k バイト=1,000 バイトとしても採点に影響しない構成になっています。本設問でも 1,024 で計算しても結果は 48.8→約50 Mビット/秒となり、整数解「50」に収束します。
関連キーワード: 同期コピー, 帯域設計, トランザクション量, データ転送, 使用率
設問4:表の方式Aによって更新データのコピーを行う場合を考える。本システムのピーク時取扱量は、次のとおりである。

(2)表の方式Aを必要とするRPOのレベルを実現できる範囲で、オンラインでのコピーと夜間に一括して行うコピーを組み合わせる場合、オンラインでコピーするデータの量を必要最小限にすることのできる適切な組合せを次から選び、記号で答えよ。


模範解答
ウ
解説
解答の論理構成
- 方式Aの特性確認
【問題文】の表で、方式Aは「同期コピー」とされており「トランザクション処理におけるデータ更新処理は、更新データのコピーが完了するのを待ってから次の処理に進む。」とあります。よってコピーが即時反映され、データの欠落が発生しません。 - 達成できるRPOレベル
RPOが「0」である「レベル1:RPOを0とする。」を引用すると、同期コピーであればとの差が0秒にできます。したがって方式Aはレベル1が要求するRPO=0を実現できます。 - オンラインで転送すべき最小データ
同期コピーはピーク時の回線負荷に直結します。そこで【問題文】に「オンライン業務中に業務データが破壊された場合でも、業務開始時点など当日内のチェックポイントにおける業務データ全体のコピーと、それ以降の更新ログがあれば、業務データを回復することができる。」との記述があります。
・チェックポイント時点の「業務データ全体」は夜間に一括コピー可能
・その後の差分を示す「更新ログ」だけを同期コピーすれば、RPO=0で復旧可能 - 選択肢との照合
オンラインで「更新ログ」だけをコピーし、夜間に「業務データ」を一括コピーする組合せは
ウ:オンラインで更新ログ/夜間で業務データ
です。したがって必要最小限のオンライン転送量でRPOレベル1を満たす解答は「ウ」となります。
誤りやすいポイント
- 「同期コピーだから業務データも全部オンラインで送る」と思い込み、アやイを選んでしまう。チェックポイント+更新ログの仕組みを読み落としがちです。
- RPO(データの復旧時点)とRTO(業務再開までの時間)の区別を混同しやすい。今回はRPOの話題であり、RTO=24時間は直接選択肢に影響しません。
- レベル2(数分)とレベル1(0)の違いを、方式A/Bの待ち時間の説明と勘違いしてしまう。方式Aはゼロ遅延でありレベル1専用と考えると整理できます。
FAQ
Q: なぜ「更新ログ」だけでRPO=0になるのですか?
A: 夜間に取得した「業務データ全体のコピー」がいわば基準点(チェックポイント)になります。オンラインで逐次同期された「更新ログ」を順番どおりに適用すると、最後のトランザクションまで再現できるためとの差が0になります。
A: 夜間に取得した「業務データ全体のコピー」がいわば基準点(チェックポイント)になります。オンラインで逐次同期された「更新ログ」を順番どおりに適用すると、最後のトランザクションまで再現できるためとの差が0になります。
Q: 方式B(非同期コピー)でも同じ組合せを取れますか?
A: 方式Bは「コピーは数十秒以内に完了する」とあり、どうしても最新更新分がバックアップセンタに届かない瞬間が残るためRPO=0は保証できません。したがって本設問(方式A前提)とは要件が異なります。
A: 方式Bは「コピーは数十秒以内に完了する」とあり、どうしても最新更新分がバックアップセンタに届かない瞬間が残るためRPO=0は保証できません。したがって本設問(方式A前提)とは要件が異なります。
Q: 夜間に「更新ログ」も再度コピーしなくて良いのですか?
A: 同期コピーで既にバックアップセンタへ転送済みなので、夜間に重複して送る必要はありません。翌日の基準となるチェックポイントを取得するために「業務データ」だけを一括コピーします。
A: 同期コピーで既にバックアップセンタへ転送済みなので、夜間に重複して送る必要はありません。翌日の基準となるチェックポイントを取得するために「業務データ」だけを一括コピーします。
関連キーワード: RPO, RTO, 同期コピー, 更新ログ, チェックポイント


