家studyをつづってスマートフォン用の表示で見る家studyをつづってIT技術に関することやセキュリティ、ガイドライン等学んだことをつづっていきます。2019-10-14ACID特性と独立性プログラムACID特性とはデータベースの処理では、ある目的をもつ業務処理のひとまとまりのことをトランザクションといいます。ACID特性とは、トランザクション処理において必要とされる4つの要素、Atomicity(原子性)、Consistency(一貫性)、Isolation(独立性)、Durability(永続性)の頭文字で表したものです。実行されないのどちらかでなければならない。一貫性(consistency)トランザクションの終了状態にかかわらず、データベースの整合性が保たれなければならない。独立性に関して、トランザクションが複数実行中の場合は多少なりとも他のトランザクションに影響が出ます。LEVELと言い、以下の4つに分類されます。※直列処理の場合は、独立性は完全に保証されます。UNCOMMITTEDはコミットされていない変更を他のトランザクションから参照できる設定です。トランザクションの分離レベルが低いため、速度は速いです。COMMITTEDは他のトランザクションがコミットしたデータだけを読み込みます。トランザクションの中で一度参照したデータが、同一トランザクション内でもう一度読み込んだときに違う結果を返す可能性があります。READは同一トランザクション内で同じデータを複数読み込んでも同じ結果を返します。そのため、あるトランザクションで読み込んでいるデータを他のトランザクションが更新することを防ぐことができます。更新ではなく行の追加や削除は行うことができます。SERIALIZABLESERIALIZABLE(直列化)はトランザクションが互いに完全に干渉しません。ダーティリードダーティリードは、他のトランザクションがコミット前のデータを読み込むことで発生します。コミット前のデータを読んでしまうと、そのデータがロールバックされた場合に存在しない更新データで処理を行うことになります。ダーティリードのイメージノンリピータブルリード(ファジーリード)ノンリピータブルリードは、同一トランザクション内で同じデータを複数読み込んだ場合に違う結果を返す可能性があります。ファジーリードのイメージファントムリードノンリピータブルリードでは行の更新でしたが、ファントムリードは行の追加や削除をされてしまう可能性があります。行の追加や削除が行われることで、例えば読み込んだ行数を使って処理をしていた場合等に不整合が起きてしまいます。ファントムリードのイメージロストアップデート同じリソースに対して、ロックをかけずに複数のトランザクションが処理を行った場合に、処理結果に不整合が発生する場合があります。言葉の定義があいまいになるときがあるので、マルウェアで使わ...応援ありがとうございます。週間)いろいろとやってみる。(1)検索プロフィールスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。