ACID Properties

トランザクション処理のパイオニアによって頭文字で作られた造語 ACID は、原子性、一貫性、分離性、持続性を意味します。 予測可能な動作を保証するために、すべてのトランザクションがこれらの基本的なプロパティを備えている必要があります。これにより、ミッション クリティカルなトランザクションの役割が、悉無律型の命題として強化されます。

次の一覧には、各 ACID プロパティの定義と説明が含まれています。

原子性

トランザクションが必ず 1 回だけ実行され、アトミックである (すべての作業が完了しているか、いずれの作業も完了していないか) 必要があることを意味します。 トランザクション内の操作は、通常、共通の意図を共有し、相互に依存しています。 これらの操作のサブセットのみを実行すると、システムがトランザクションの全体的な意図を損なう可能性があります。 原子性は、操作のサブセットのみを処理する可能性を排除します。

常に

トランザクションは、データの一貫性を保持し、ある一貫性のある状態のデータを別の一貫性のある状態のデータに変換する必要があります。 整合性を維持する責任の多くは、アプリケーション開発者が担います。

Isolated

トランザクションは分離の単位である必要があります。つまり、同時実行トランザクションは、それぞれがシステムで実行されている唯一のトランザクションであるかのように動作する必要があります。 分離の度合いが高いと同時トランザクションの数が制限される可能性があるため、一部のアプリケーションではスループットを向上させるために分離レベルを低下させます。 詳細については、「 トランザクション分離レベルの構成」を参照してください。

持続性

トランザクションは回復可能である必要があるため、持続性が必須です。 トランザクションがコミットされると、システムは、コミットの直後にコンピューターがクラッシュした場合でも、その更新プログラムが持続されることを保証します。 特殊なログ記録を使用すると、システムの再起動手順でトランザクションに必要な未完了の操作を完了でき、トランザクションを持続性のあるものにできます。