-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
32 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
# 트랜잭션 | ||
데이터베이스 트랜잭션은 데이터베이스 관리 시스템에서 상호작용의 단위이다. 시스템의 특징으로, 성공과 실패가 분명하고 상호 독립적이며, 일관되고 믿을 수 있다는 특징이 있다. | ||
|
||
## 특징 - ACID | ||
위에서 설명한 특징을 풀어서 설명하면 ACID 특징을 보장한다고 할 수 있다. | ||
|
||
### A (Atomicity) | ||
* 원자성 | ||
* 트랜잭션과 관련된 작업들이 부분적으로 실행되다가 중단되지 않는 것을 보장하는 능력. | ||
* 작업이 모두 성공하거나 모두 실패해야한다는 특징이 있다. | ||
### C (Consistency) | ||
* 일관성 | ||
* 트랜잭션이 실행을 성공적으로 완료하면 언제나 일관성 있는 데이터베이스 상태로 유지하는 것. | ||
### I (Isolation) | ||
* 고립성(독립성) | ||
* 트랜잭션 수행 시 다른 트랜잭션의 연산 작업이 끼어들지 못하도록 보장하는 것. | ||
* 성능관련 이슈로 인해 가장 유연성이 있는 제약 조건이다. | ||
### D (Durability) | ||
* 지속성(영구성) | ||
* 성공적으로 수행된 트랙잭션이 영구적으로 반영되도록 하는 것. | ||
|
||
## 트랜잭션의 목적 | ||
사용자가 데이터베이스 완전성(Integrity) 유지를 확신하게 한다. | ||
|
||
### 질문 | ||
* 트랜잭션의 고립성은 어떤식으로 유연하게 조절할 수 있을까? | ||
|
||
### 참고 자료 | ||
* https://ko.wikipedia.org/wiki/%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4_%ED%8A%B8%EB%9E%9C%EC%9E%AD%EC%85%98 | ||
* https://en.wikipedia.org/wiki/ACID | ||
* https://ko.wikipedia.org/wiki/ACID | ||
|