ロストアップデート
更新したのが、なかったことになった状態だよ
データベースの話で出てくるよ
簡単に書くよ
ロストアップデート(英:lost update)とは
今は亡き古代のテクノロジー「アップデート」のこと(嘘)。
本当は
「あれ?俺、確かに更新したはずだよね?何で反映されていないの?」な状態をカッコ付けて言った表現
です。
詳しく書くよ
「ロスト(lost)」+「アップデート(update)」で「ロストアップデート」です。
ロスト(lost)は「ロス(lose)」の過去形ね。
意味は「失われた」です。
アップデート(update)は更新です。
以上を踏まえて
更新したはずの内容が時空の彼方に消え去って更新していないことになっている状態
が「ロストアップデート」です。
ロストアップデートという用語は、主にデータベースの話で出てきます。
……カッコいい名前の割りには、たいしたことを言ってないですね。
例えば、そうですね。
ピヨ太君がデータベースさんに「ケーキを預かっておいて」と命令しました。
これがデータの更新に相当すると思ってください。
同じタイミングでピヨ子さんも「ミカンを預かっておいて」と命令しました。
これもデータの更新に相当します。
データベースさんは不器用です。
同じタイミングでピヨ太君とピヨ子さんから命令されて慌てました。
その結果、うっかりピヨ太君のケーキをピヨ子さんのミカンで潰してしまったのです。
データベースさん、ドジっ子ですね。
まぁ、やってしまったものは仕方ありません。
データベースさんは知らない振りをすることにしました。
ピヨ太君がデータベースさんに「さっき預けたケーキをちょうだい」と言います。
データベースさんは「は?そんなもの預かってないけど?」と知らない振りをしました。
ピヨ太君は「えー!絶対、預けたよー!」と思いましたが、どうしようもありません。
ピヨ太君のやった更新は、なかったことになってしまったのです。
このような状況を指して「ロストアップデート」と言います。
個人的には「更新内容が消えたら、全部『ロストアップデート』って呼べるんじゃないの?」と思っていますけどね。
一般的には、同じデータに対する更新がかち合って、どちらかの更新がなかったことになる状況を指すようです。
例えば、そうですね。
ピヨピヨカンパニーでは、おやつのミカンの在庫数をデータベースで管理しています。
ある日、ピヨ太君はミカンの在庫数が「0」になっているのに気付きました。
これでは、おやつタイムが台無しになります。
ピヨ太君はミカンを買いに行きました。
ピヨ太君がミカンを買いに行っている間にピヨ子さんもミカンの在庫数が「0」になっているのに気付きました。
これでは、おやつタイムが台無しになります。
ピヨ子さんはミカンを買いに行きました。
ピヨ太君はミカンを2つ買ってきました。
自分の分とピヨ子さんの分が1個ずつです。
ピヨ太君は、頭の中で
元々の在庫数「0」+買ってきた個数「2」
の計算をして、ミカンの在庫数を「2」に更新しました。
おっと、ピヨ子さんも帰ってきたようです。
ピヨ子さんはミカンを5つ買ってきました。
自分の分が4個とピヨ太君の分が1個です。
ピヨ子さんは、頭の中で
元々の在庫数「0」+買ってきた個数「5」
の計算をして、ミカンの在庫数を「5」に更新しました。
ピヨ太君もピヨ子さんも自分の働きに満足しています。
さて、ここで考えてみてください。
ミカンは全部で7個あります。
データベースに登録されている在庫数は「5」です。
ミカンを買ってきたとき、ピヨ太君は在庫数を「2」にしました。
分かりやすくするために
元々の在庫数に「2」足した
と表現します。
ミカンを買ってきたとき、ピヨ子さんは在庫数を「5」にしました。
分かりやすくするために
元々の在庫数に「5」足した
と表現します。
正しいのは
1.元々の在庫数は「0」
2.在庫数に「2」足した
3.在庫数に「5」足した
で「7」になることです。
ですが、実際には
1.元々の在庫数は「0」
2.元々の在庫数に「2」足した
3.元々の在庫数に「5」足した(=2がなかったことになった)
で「5」になりました。
2.元々の在庫数に「2」足した
の更新が、なかったことになっています。
このような「更新が衝突して、更新した事実が消えちゃう状態」を指して「ロストアップデート」と表現することが多いようです。
繰り返しになりますが、個人的には「更新内容が消えたら、全部『ロストアップデート』って呼べるんじゃないの?」と思っています。
よく分からない人は「更新したはずの内容が、なくなっちゃった!」な状態なんだな~くらいの理解でOKです。
一言でまとめるよ
まぁ「ロストアップデート」って単語が出てきたら「更新した事実が、なかったことになった状態なんだな~」と お考えください。
おまけ
■訳してみるよ
「lost(ロスト)」は「lose(ルーズ)」の過去形・過去分詞です。
「lose(ルーズ)」の意味は「失う」とか「なくす」とかです。
「update(アップデート)」の意味は「更新する」とかです。
何となく くっつけると
失われた更新
となります。






