728x90
반응형
데이터 베이스를 이용해서 프로젝트나 공부를 하다보면
데이터 베이스의 여러가지 이점들과 규칙(?)들을 배우게 된다.
공부를 하던 도중 ACID란 키워드가 등장했다.
키워드를 보자마자 아무래도 데이터 베이스의 장점인 무결성을 지키기 위한 키워드가 아닐까 예상했는데,
어느정도 들어맞았다.
원자성은 쉽게 말하면, 내가 어떤 트랜잭션을 처리중일 때, 안전하게 commit이든 rollback이든 완전하게 처리가 되는 능력이다. 원자성이 보장이 되어야 데이터를 입력하는 user와 데이터 베이스간의 데이터가 일치하기 때문이다.
일관성은 트랜잭션이 실행되고나서, 데이터 베이스는 이전과 같은 상태를 유지함을 의미한다. 예컨대 트랜잭션을 처리했다고 데이터 베이스가 뻗어버리거나 하지 않아야함을 의미한다.
독립성은 내가 A라는 트랜잭션을 처리중일 때, 다른 사용자가 내 트랜잭션에 관여할수 없음을 의미한다. 독립성은 내가 트랜잭션을 처리할 때, 다른 사용자의 다른 데이터 접근도 막기때문에 독립성에 대한 제약조건은 설계시 주의가 필요하다.
지속성은 트랜잭션이 실행되면 실행 내역이 DB에 로그로 저장이 되고, 로그가 저장이되면 commit상태로 간주하고 데이터 베이스의 일관성이 유지됨을 의미한다,
728x90
728x90
'DataBase' 카테고리의 다른 글
쿼리 속도 향상을 위한 방법들 (1) | 2021.02.14 |
---|---|
MySQL]The MySQL server is running with the --read-only option so it cannot execute this statement (0) | 2021.02.08 |
Mybatis] MySQL] concat 문자열 검색 (1) | 2021.01.19 |
MySQL] 테이블 복사하기 (0) | 2021.01.19 |
레코드명 번호와 함께 조회하기 (0) | 2020.04.10 |
댓글