「押さえておきたいWeb知識」で検索お願いします!

[Web用語] ACID特性とは? 分かりやすく解説します!

1.ACID特性とは?

ACID特性とはAtomicity、Consistency、Isolation、Durabilityという4つの概念の頭文字を取った言葉です。

これはトランザクション処理を行う際にDBMSが保証してくれるもので、ACIDという言葉を理解すると、DBMSがどれだけ丁寧にデータを取り扱っているかがわかります。




2.解説

Atomicity(原子性)では、トランザクション内の処理はすべての処理が実行されるか、もしくはすべての処理が行われないか、どちらかであることが保証されます。

トランザクション処理結果を反映させた際に一部の処理を反映し損ねてしまうようなことがあると、そのデータベースはAtomicityをもっていないことになります。

Consistency(整合性)は、データの整合性が常に保たれていることを保証します。

RDBでは保存するデータに制約を持たせることができます。

Isolation(独立性)は、複数のトランザクションが同時にデータを扱っている際に、それぞれのトランザクション内でデータが独立していることを保証します。

Durability(永続性)はトランザクションが終了した時点でその変更が失われることがなくなることを保証します。

例えば、メモリ上だけにデータが保持されるmemcachedというデータベースでは稼働中にサーバの電源を落とすとデータは失われます。

これは永続性のあるデータとは言えません。

Durabilityを満たすにはハードディスクなどの永続性のあるデバイスに記憶し、障害時にバックアップやログからデータを復旧できるなど永続時にそのデータを利用できることを保障する必要があります。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です