トランザクション処理とは
相互依存の関係にある複数の処理を1つの処理単位にまとめて、矛盾なく処理すること。データベースにおいて、処理の一貫性を持たせるために、複数の処理を1つの処理として実行して管理する仕組みで、データの整合性を保つための要素の1つ。
システムで障害が発生し、1つの処理を途中で終了すると、データの処理に矛盾が起こり、致命的なトラブルになる。例えば、データベース上での注文処理では、注文テーブルに注文数を入力すると、在庫テーブルから該当の商品の在庫数から同じ数だけマイナスする、という2つの処理をまとめて一連の処理とする。
1つ目の注文テーブルへの入力処理の後、2つ目の在庫テーブルから在庫数をマイナスする処理の前に障害が起きた場合、1つ目の処理だけが終了し、2つ目の処理が途中で終わってしまうため、矛盾が発生しデータベースの整合性がとれなくなる。「障害が起きた場合」は注文テーブルへの入力を取り消す処理、「障害が起きなかった場合」は一連の正常処理を行う、というように事前にシステムのトラブルを想定し、常にデータの整合性を保つための処理を行うことをトランザクション処理という。
トランザクション処理には、「ACID特性」と呼ばれる「原子性(Atomicity)」「一貫性(Consistency)」「独立性(Isolation)」「永続性(Durability)」の4つの特性が標準規格によって決められている。