原始性
(ITの話で出てきた場合は)書き間違いだよ
「原子性」のことだと思うよ
簡単に書くよ
原始性(読:ゲンシセイ)とは
ITの話で出てきた場合は、多分「原子性」の書き間違い。
原子性は
「ここから ここまでワンセット」な処理(トランザクション処理)が持つべき4つの特性のひとつ
であり
「一連の処理は全部やるか全部やらないかの どっちかにしてね!」のこと
です。
詳しく書くよ
順番に見ていきましょう。
まずは予備知識として
・データベース
・トランザクション
・ACID特性
・原子性
について説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。
データベースは「データを入れておく箱」です。
突っ込んで考えると混乱するかもしれません。
何となくのフィーリングで理解してください。
トランザクションは「ここから ここまでワンセット」な処理単位です。
例えば、そうですね。
ピヨ太君がピヨピヨカンパニーに出社するとしましょう。
ピヨ太君はピヨピヨカンパニービルに到着すると
1.私服からスーツに着替える
2.タイムカードを押す
3.コーヒーを飲みながらケーキを食べる
の3つの行動をします。
この3つが、ピヨ太君が出社した状態になるためにやる作業です。
いわば、ピヨ太君の「出社作業」ですね。
出社作業が終わったら、ピヨ太君はピヨ太ママに「ピヨ太です。出社しました」と連絡を入れます。
これでピヨ太君は出社した状態になります。
繰り返しになりますが、ピヨ太君の出社作業は
1.私服からスーツに着替える
2.タイムカードを押す
3.コーヒーを飲みながらケーキを食べる
の3つです。
この3つの行動は、どれか1つでも欠けてはダメです。
すべての行動を一連の流れでやる必要があります。
このような
「ここから ここまでワンセット」な処理単位
がトランザクションです。
小難しい言い方をすると「分割不可な一連の処理」です。
ACID特性は、トランザクション処理が持っているべき4つの特性「Atomicity(原子性)」「Consistency(一貫性)」「Isolation(独立性)」「Durability(永続性)」の頭文字をくっつけた用語です。
詳細が気になる方は、用語「ACID特性」の説明を ご覧ください。
原子性は「ACID特性のひとつで『一連の処理は全部やるか全部やらないかの どっちかにしてね!』な特性」です。
例えば、そうですね。
ピヨ太君がピヨ子さんに100円あげました。
そうすると、ピヨ太君の所持金は100円減ります。
ピヨ子さんの所持金は100円増えます。
これを処理と捉えてみましょう。
1.ピヨ太君の所持金が100円減る
2.ピヨ子さんの所持金が100円増える
の2つの処理はワンセットです。
「ピヨ太君がピヨ子さんに100円あげる」処理はトランザクション処理と言えます。
さて、ここで ちょっと考えてみてください。
ピヨ太君がピヨ子さんに100円あげました。
このとき「ピヨ太君の所持金が100円減る」と「ピヨ子さんの所持金が100円増える」は同時に起こりますよね。
「ピヨ太君の所持金が100円減ったけど、ピヨ子さんの所持金は増えていない」とか「ピヨ太君の所持金は減っていないけど、ピヨ子さんの所持金は100円増えた」とは なりません。
実際に あり得るのは
1.「ピヨ太君の所持金が100円減る」と「ピヨ子さんの所持金が100円増える」を両方やる(ピヨ太君がピヨ子さんに100円あげる)
2.「ピヨ太君の所持金が100円減る」と「ピヨ子さんの所持金が100円増える」を両方やらない(ピヨ太君がピヨ子さんに100円あげない)
のどちらかです。
これが「原子性」です。
原子性は
一連の処理は全部やるか全部やらないかの どっちかにしてね!
な特性です。
データベースに詳しい人は「commit(コミット)」とか「rollback(ロールバック)」とかを知っていますよね。
あれが原子性を保持するための仕組み(のひとつ?)です。
ちなみに、ACID特性には原子性以外に
・一貫性
・独立性
・永続性
があります。
気が向いたら、全部まとめて覚えてあげてください。
以上を踏まえて
ITの話で出てきた場合は、多分「原子性」の書き間違い
が「原始性」です。
そのものズバリな「原始性」という用語もありますけどね。
IT系の話では、そんなに出てこないと思います。
ITの話、特にトランザクションの話で出てきた場合は「原子性」を意図しているはずです。
一言でまとめるよ
まぁ「原始性」って単語が出てきたら「『原子性
(トランザクション処理が持つべき「一連の処理は全部やるか全部やらないかの どっちかにしてね!」な特性)』って書きたいんだろうな~」と お考えください。






