- 트랜잭션 작업 처리 결과가 항상 일관성이 있어야한다
- 우리가 원하는 정의에 데이터가 일치 해야한다
- 예를들어, 배민에서 일관성은 사람들이 주문하는건 재고의 양을 넘으면 안된다라는 규칙이 있고 이를 무조건 지키게 하는것이 일관성
- 일관성은 디비가 지키는게 아님!!! 애플리케이션에서 지켜야 하는 것!
- 디비도 가능은 할 거 같은데 겁나복잡할듯
if(shop.fullfillmentCount < 3000){
throw Exception();
//예외던지면 롤백이 되니 일관성이 지켜지는 것!
}- 허용된 방식으로만 데이터를 변경해야 하는 것 의미
- 데이터베이스에 기록된 모든 데이터는 여러 조건, 규칙에 따라 유효해야 한다
- 예상되는 데이터와 값이 다른 것
- 읽을 때 0 이어야하는데 1999 인것