組織の利益=個人の利益
個人の目指す成長の解像度を上げる
この記事は自分用の備忘録です。
最新アップデートだ!楽しみだなー!
オンラインゲームをしていた頃、いつもアップデートを楽しみにしていた
アップデートが完了すると新コンテンツの争奪戦が始まる
そして、大体バグっているのでメンテナンスとなる
せっかく手に入れたレアドロップアイテムが‥ない!?
深刻なバグの場合はロールバックされるのである
お詫びの回復アイテムが運営から送られていたりする
全体チャットが阿鼻叫喚となる
オンラインゲームでのロールバックとは
やったことを取り消すこと
ただ、データベースの場合はちょっと考え方が違う
データベースにおけるロールバックとは
やりかけのトランザクション処理を取り消すことを指すことが多い
ACID特性のAである原子性「すべて完了するか、何も行わないか」を保証する
ここ勘違いしやすい
データを元に戻すものは「リストア」と呼ぶことが多いらしい
取り消すのではなく、一旦戻ってやり直したい時は?
ロールフォワードを使う
ロールフォワードとは
何か障害が起きた時にバックアップデータを使って無事な状態に戻し
ログを確認しながら直前まで戻すこと
ハードウェアの故障やディスク破損など、物理的にデータベースが壊れた時に使うらしい
そういう障害を「媒体障害」という
ロールバックとロールフォワードについてのまとめ
項目 | ロールバック | ロールフォワード |
---|---|---|
操作の対象 | 未完了の操作(やりかけの状態) | 完了した操作や更新済みデータ |
実行タイミング | エラーや異常終了時 | 障害復旧後 |
目的 | 一貫性の確保、不完全な変更の取消 | データの復元、正常状態の再構築 |
主な使用場面 | データベースのトランザクション処理、アプリケーションの異常終了 | バックアップからの復元、ログ適用によるデータの再作成 |
データの影響 | 変更前の状態に戻る(やりかけの操作が消える) | 変更内容を反映して復元(完了した操作が戻る) |
感想
バックアップは怠ってはならない 絶対に
参考