ACIDとは、信頼性のあるトランザクションシステムの持つべき性質として1970年代後半にジム・グレイが定義した概念で、これ以上分解してはならないという意味の不可分性(英: atomicity)、一貫性(英: consistency)、独立性(英: isolation)、および永続性(英: durability)は、トランザクション処理の信頼性を保証するために求められる性質であるとする考え方である。
この語はその4つの性質を表す英語の単語の頭文字をとって作られた頭字語であり、1983年にアンドレアス・ロイターとテオ・ヘルダーによって提唱された。
概要
データベースにおいては、データに対する一つの論理的操作の事をトランザクションと呼ぶ。ACIDの各性質を銀行での口座間送金を例にして示す。
不可分性(Atomicity)
トランザクションに含まれるタスクが全て実行されるか、あるいは全く実行されないことを保証する性質をいう。アトミック性、原子性とも呼ばれる。
口座Aから口座Bに対し1万円送金する場合を考えたとき、送金操作は次の2操作によって行われる。
口座Aの残高から1万円を引く
口座Bの残高に1万円を加える不可分性が保証されるとは、上の操作1、2が全て行われるか、あるいは全く行われないことを指す。どちらか片方だけが実行された場合、銀行全体の預金残高に矛盾が発生してしまう。
一貫性(Consistency)
日本語では一貫性あるいは整合性とも呼ばれる。トランザクション開始と終了時にあらかじめ与えられた整合性を満たすことを保証する性質を指す。すなわち、データベースのルール…