【中学生でもわかるIT用語】シャドウページとは 物語と実際の事例でわかりやすく解説

『サ行』の用語

シャドウページ

① ストーリー性を取り入れた説明: シャドウページとは?

放課後、パソコン部のユウキは先生にデータベースの仕組みについて質問しました。


ユウキ:「先生、データベースで更新する時に、もし途中で停電になったらどうなるんですか?」

先生:「いい質問だね。もしデータが途中で書き換えられた状態で電源が落ちたら、元のデータが壊れてしまう可能性がある。そこで登場するのがシャドウページという仕組みだよ。」

ユウキ:「シャドウページ? それはどんな仕組みなんですか?」

先生:「例えば、君が絵を描いているとしよう。直接キャンバスに描き込むと、失敗した時に消せなくて困ることがあるよね? だから、まず下書きを別の紙に描いて、うまくいったら清書する。これなら、もし間違えても元のキャンバスには影響がないよね。」

ユウキ:「なるほど、それと同じことをデータベースでもやるんですね?」

先生:「そう。データベースで情報を更新するとき、まずはシャドウページ(影のページ)に新しいデータを書き込む。書き込みが完全に終わったら、最後にこのシャドウページを正式なデータページとして反映するんだ。もし途中で電源が落ちても、元のページがそのまま残っているからデータが壊れることはないんだよ。」

ユウキ:「つまり、新しいデータをいきなり上書きせず、コピーを作って安全に更新するってことですね!」

先生:「その通り! ちなみに、似たような技術としてWAL(Write-Ahead Logging)という方法もあるよ。こちらは、データを変更する前にログファイルに記録することで、万が一のトラブルが起きても復旧できる仕組みなんだ。」

ユウキ:「シャドウページはコピーを作る方法、WALは変更履歴を記録する方法ですね! どっちを使うかは、データベースの設計次第なんですね。」


シャドウページの定義:シャドウページとは、データベースの更新時に新しいデータを一時的なページに書き込み、処理が完了したら正式なページとして置き換えることで、データの一貫性を保証する仕組み。障害発生時にデータが破損しないように設計されている。
比較項目シャドウページWAL(Write-Ahead Logging)
仕組み新しいページを作成し、完全に書き換えた後で更新を反映データ変更前にログを記録し、障害時に復元
データの安全性高い(元のページを保護)高い(ログから復旧可能)
書き込みの負荷やや高い低い

② 実際の事例

1. 金融機関でのデータ保護

銀行の取引データは、一度に多くのユーザーが更新を行うため、シャドウページを使ってデータの整合性を維持

例:ATMの取引記録が途中で停止しても、以前のデータが保護されている。

2. クラウドデータベースでの利用

AWSやGoogle Cloudのデータベースでは、障害発生時のデータ保護のためにシャドウページを採用

例:大規模システムでのデータ整合性を保つために、重要な取引データに適用。

3. ソフトウェアアップデート時のデータ保護

ソフトウェアのアップデート時に、データの変更を安全に行うために利用。

例:オンラインゲームのデータ更新時に、シャドウページを利用して安全にバージョン管理。


③ クイズや小テスト

クイズ1  シャドウページの主な目的は何ですか?

A. データベースのパフォーマンスを向上させる

B. データの一貫性と安全性を確保する

C. データの圧縮を行う

クイズ2  シャドウページの仕組みとして正しいのは?

A. 直接データを上書きする

B. 新しいページを作成し、最後に更新を反映する

C. 変更履歴をログに記録する

クイズ3  シャドウページとよく比較される技術は?

A. RAID

B.バックアップストレージ

C. WAL(Write-Ahead Logging)


④ 回答と解説

クイズ1:B. データの一貫性と安全性を確保する
シャドウページは、障害時にもデータを守るための仕組みです。

クイズ2:B. 新しいページを作成し、最後に更新を反映する
元のページを保護しつつ、更新後に切り替える仕組みです。

クイズ3:C. WAL(Write-Ahead Logging)
WALは変更履歴をログに記録し、シャドウページとは異なる方法でデータの安全性を確保します。

タイトルとURLをコピーしました