신지덤

  1. 신기술
    1. 신기술

ACID / BASE

개념
- 데이터베이스 트랜잭션이 안전하게 수행된다는 것을 보장하기 위한 성질 

I. ACID

     데이터베이스 트랜잭션이 안전하게 수행된다는 것을 보장하기 위한 성질 
         1) Atomicity (원자성) : 트랜잭션과 관련된 작업들이 모두 수행되었는지 모두실행되지 않았는지를 보장하는 것
         2) Consistency (일관성) : 트랜잭션이 실행을 성공적으로 완료하면 언제나 일관성 있는 데이터베이스 상태로 유지하는 것
         3) Isolation (고립성) : 트랜잭션 수행 시 다른 트랜잭션의 연산 작업이 끼어들지 못하도록 보장하는 것
         4) Durability (지속성) : 성공적으로 수행된 트랜잭션은 영원히 반영되어야 하는것

II. BASE : ACID와 대조적으로 가용성과 성능을 중시하는 특성을 가진 분산 시스템의 특성
         1) Basically Available : 가용성을 중시, Optimistic Locking 및 큐 사용
                                     : 다수의 실패에도 가용성을 보장, 다수의 스토리지에 복사본 저장
         2) Soft-State : 노드의 상태는 외부에서 전송된 정보를 통해 결정됨
                           : 분산 노드 간 업데이트는 데이터가 노드에 도달한 시점에 갱신
         3) Eventually Consistent : 일시적으로 비일관적인 상태가 되어도 일정시간 후에는 일관성이 있는 상태가 되는 성질

 

III. BASE속성과 ACID속성의 비교
         속성              BASE                                 ACID 
    적용분야             NOSQL                              RDBMS
    범위                   시스템 전체에 대한 특성      트랜잭션에 한정
    일관성측면         약한 일관성                        강한 일관성
    중점사항            Availability                         ‘Commit’에 집중
    시스템측면         성능에 초점                        엄격한 데이터관리
    효율성              쿼리디자인이 중요                테이블 디자인이 중요


 

댓글