ACID 데이터베이스 모델

ACID는 데이터베이스의 데이터를 보호합니다.

데이터베이스 설계의 ACID 모델은 데이터베이스 이론의 가장 오래되고 중요한 개념 중 하나입니다. 원 자성, 일관성, 격리 및 내구성과 같은 모든 데이터베이스 관리 시스템이 달성해야하는 4 가지 목표를 설정합니다. 이 네 가지 목표 중 어느 것도 충족시키지 못하는 관계형 데이터베이스는 신뢰성있는 것으로 간주 될 수 없습니다. 이러한 특성을 가진 데이터베이스는 ACID를 준수하는 것으로 간주됩니다.

정의 된 ACID

이 특징들을 자세히 살펴 보도록하겠습니다.

ACID가 실제로 어떻게 작동 하는가?

데이터베이스 관리자는 여러 전략을 사용하여 ACID를 시행합니다.

원 자성과 내구성을 강화하는 데 사용되는 하나는 WAL ( Write-Ahead Logging )입니다. 트랜잭션 세부 사항이 다시 실행 및 실행 취소 정보를 모두 포함하는 로그에 처음 기록됩니다. 이렇게하면 데이터베이스 오류가 발생하면 데이터베이스가 로그를 작성하고 그 내용을 데이터베이스의 상태와 비교하십시오.

원 자성과 내구성을 처리하는 데 사용되는 또 다른 방법은 데이터가 수정 될 때 그림자 페이지가 생성되는 그림자 페이징 입니다. 쿼리의 업데이트는 데이터베이스의 실제 데이터가 아닌 섀도 페이지에 기록됩니다. 데이터베이스 자체는 편집이 완료 될 때만 수정됩니다.

또 다른 전략은 2 단계 확약 프로토콜로, 특히 분산 데이터베이스 시스템에서 유용합니다. 이 프로토콜은 데이터를 수정하라는 요청을 커밋 요청 단계와 커밋 단계의 두 단계로 분리합니다. 요청 단계에서 트랜잭션의 영향을받는 네트워크상의 모든 DBMS는 트랜잭션을 수신했음을 확인하고 트랜잭션을 수행 할 수있는 용량을 가져야합니다. 모든 관련 DBMS로부터 확인이 수신되면 데이터가 실제로 수정되는 완료 단계가 완료됩니다.