本記事では基本情報技術者試験にも出題されるACID特性について解説しています。目次は以下の通りです。
トランザクション処理とは
ACID特性を知る前にまずトランザクション処理について知る必要があるのでご説明します。トランザクション処理とは、データベースにおける一連の操作を1つの単位としてまとめて扱う処理です。
一連の操作は次のようになります。
1.操作の開始
2.データベースの変更(挿入や更新など)
3.コミット
コミットが終了して初めてトランザクション処理が終了したといえます。例えば銀行振込や商品購入などの処理がトランザクション処理にあたります。
ACID特性とは
ACID特性はデータベースにおけるトランザクション処理の信頼性と一貫性を保証するための基本的な原則です。トランザクション処理について後ほど説明します。ACID特性は以下の4つの特性の頭文字を取ったものです。
・Atomicity(原子性)
・Consistency(一貫性)
・Isolation(独立性)
・Durability(耐久性)
これらの特性が保障されることで、データベースシステムの信頼性が高まります。
Atomicity(原子性)
原子性は、トランザクションが「全て成功する」か「全て失敗する」という性質を持つことを意味します。例えば銀行の振込処理で送金と受け取りのどちらかで問題が起きた場合、両方の処理が元に戻されることになります。
Consistency(一貫性)
一貫性は、トランザクションが開始される前と終了後で、データベースが整合性のある状態であることを保証します。つまりトランザクションが成功すると、データベースはそのトランザクションを通じて定義されたルールに従って正しい状態に保たれます。
Isolation(独立性)
独立性は、複数のトランザクションが同時に実行されても、各トランザクションが他のトランザクションの影響を受けないことを意味します。つまり、並列実行されているトランザクションは、互いに干渉しないように隔離され個別に処理されます。
Durability(耐久性)
耐久性は、トランザクションがコミットされるとデータベースに保存され、システムが故障しても失われることがないという特性です。たとえ電源が切れたりシステムがクラッシュした場合でも、コミットされたデータは確実に保存され、再起動後に復元されます。
まとめ
本記事のポイントを以下にまとめます。
・トランザクション処理とはデータベースにおける一連の操作を1つの単位としてまとめて扱う処理
・ACID特性とはデータベースにおけるトランザクション処理の信頼性と一貫性を保証するための基本的な原則
・ACID特性には原子性、一貫性、独立性、耐久性の4つがある
コメント