우당탕탕 개발자 되기
트랜잭션(Transaction) 관리 본문
트랜잭션(Transaction)
: 비즈니스에서 쪼개 질 수 없는 하나의 단위 작업
ACID 원칙
| 원자성(Atomicity) | 하나의 트랜잭션은 모두 하나의 단위로 처리되어야 한다. 어떤 트랜잭션이 A와 B 로 구성된다면 항상 A,B 처리결과는 동일한 결과가 되어야 한다. 만약 A는 성공했지만 B 가 실패할 경우 A,B 모두 원상태로 돌아가야한다. 어떤 작업이 잘못되는 경우에는 모든 것이 원상태로 되돌아가야한다. |
| 일관성(Consistency) | 트랜잭션이 성공했다면 데이터베이스의 모든 데이터는 일관성을 유지해야만 한다. 트랜잭션으로 처리된 데이터와 일반 데이터 사이에는 전혀 차이가 없어야한다. |
| 격리(Isolation) | 트랜잭션으로 처리되는 중간에 외부에서의 간섭은 없어야한다. |
| 영속성(Durability) | 트랜잭션이 성공적으로 처리되면, 결과는 영속적으로 보관되어야한다. |
정규화 : 데이터베이스의 저장구조를 효율적으로 관리하기 위해서 하는 작업, 중복된 데이터를 제거해서 데이터 저장의 효율을 올리는 것, 진행시 테이블 수는 증가하고, 테이블의 데이터 양은 줄어든다.
원칙
1) 시간이 흐르면 변경되는 데이터는 기록하지 않는다.
2) 계산이 가능한 데이터는 기록하지 않는다.
3) 누구에게나 정해진 값을 이용하는 경우는 데이터베이스에서 취급하지 않는다.
'Spring' 카테고리의 다른 글
| 웹 어플리케이션의 이해 (0) | 2021.09.08 |
|---|---|
| 파일 업로드 방식 (0) | 2021.03.27 |
| AOP (0) | 2021.03.23 |
| Spring MVC 프로젝트 구성 (0) | 2021.02.11 |
| Spring MVC-Controller(3) (0) | 2021.02.10 |