Database: Difference between revisions
Jump to navigation
Jump to search
(Created page with "== Overview == Database 원론 내용 정리 == Transaction == 데이터 베이스 내에서 한꺼번에 수행되어야 할 일련의 연산. 전부 동작되거나, 전...") |
|||
Line 3: | Line 3: | ||
== Transaction == | == Transaction == | ||
데이터 베이스 내에서 한꺼번에 수행되어야 할 일련의 연산. 전부 동작되거나, 전부 | 데이터 베이스 내에서 한꺼번에 수행되어야 할 일련의 연산. 즉, 연산이 전부 동작되거나, 전부 안되거나해야 한다. | ||
* 한꺼번에 완료가 된 경우에는 성공적인 종료 후, COMMIT : 이 경우, 모든 작업 결과는 데이터베이스에 반영되게 된다. | * 한꺼번에 완료가 된 경우에는 성공적인 종료 후, COMMIT : 이 경우, 모든 작업 결과는 데이터베이스에 반영되게 된다. | ||
Line 25: | Line 25: | ||
: 데이터를 다시 로드하고 트랜젝션을 재생하여 원래 트랜젝션이 수행된 후의 상태로 데이터를 돌릴 수 있어야 한다. | : 데이터를 다시 로드하고 트랜젝션을 재생하여 원래 트랜젝션이 수행된 후의 상태로 데이터를 돌릴 수 있어야 한다. | ||
다음의 예를 보자. | |||
<pre> | |||
카드하나를 들고서 은행 인출기 앞으로 간다. | |||
1. 카드를 넣는다. | |||
2. 어떤거래를 할지 선택을하고 | |||
3. 비밀번호를 눌러 인증을 받고 | |||
4. 거래를 완료한다. | |||
이 네가지 과정을 묶어서 트랜잭션이라고 한다. | |||
</pre> | |||
거래까지 완료됬으면 COMMIT | |||
중간에 비밀번호를 틀리거나, 인증을 받았는데 거래를 취소하거나 하는 일이 발생해서 처음으로 돌아갈경우에는 ROLLBACK 이라고 한다. | |||
== See also == | |||
* http://121202.tistory.com/17 - [DB용어] 트랜잭션( transaction ) 이란 ? | |||
[[category:programming]] | [[category:programming]] |
Revision as of 09:03, 11 December 2015
Overview
Database 원론 내용 정리
Transaction
데이터 베이스 내에서 한꺼번에 수행되어야 할 일련의 연산. 즉, 연산이 전부 동작되거나, 전부 안되거나해야 한다.
- 한꺼번에 완료가 된 경우에는 성공적인 종료 후, COMMIT : 이 경우, 모든 작업 결과는 데이터베이스에 반영되게 된다.
- 취소가 된 경우에는 비정상적인 종료 후, ROLLBACK : 이 경우, 모든 작업 결과는 취소되며, 데이터베이스에 반영되지 않는다.
Properties
- 원자성(Atomicity)
- 분리할 수 없는 하나의 단위로 작업은 모두 완료되거나 모두 취소 되어야 한다.
- 일관성(Consistency)
- 사용되는 모든 데이터는 일관되어야 한다.
- 격리성(Isolation)
- 접근하고 있는 데이터는 다른 트랜젝션으로부터 격리되어야 한다.
- 트랜젝션이 진행되기 전과 완료된 후에는 상태를 볼 수 있지만, 트랜젝션이 진행되는 중간의 데이터를 볼 수는 없다.
- 영속성(Durability)
- 트랜잭셕이 정상 종료되면 그 결과를 시스템에 영구적으로 적용되어야 한다.
- 순차성(Sequentiality)
- 데이터를 다시 로드하고 트랜젝션을 재생하여 원래 트랜젝션이 수행된 후의 상태로 데이터를 돌릴 수 있어야 한다.
다음의 예를 보자.
카드하나를 들고서 은행 인출기 앞으로 간다. 1. 카드를 넣는다. 2. 어떤거래를 할지 선택을하고 3. 비밀번호를 눌러 인증을 받고 4. 거래를 완료한다. 이 네가지 과정을 묶어서 트랜잭션이라고 한다.
거래까지 완료됬으면 COMMIT
중간에 비밀번호를 틀리거나, 인증을 받았는데 거래를 취소하거나 하는 일이 발생해서 처음으로 돌아갈경우에는 ROLLBACK 이라고 한다.
See also
- http://121202.tistory.com/17 - [DB용어] 트랜잭션( transaction ) 이란 ?