database.sarang.net
UserID
Passwd
Database
ㆍDBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
DBMS Tutorials 859 게시물 읽기
 News | Q&A | Columns | Tutorials | Devel | Files | Links
No. 859
ACID
작성자
정재익(advance)
작성일
2003-10-22 22:16
조회수
9,652

트랜잭션의 ACID속성

*원자성(atomicity). 하나의 트랜잭션은 연산이 모두 실행되거나, 전혀실행되지 않아야 한다. 예를 들어 , ATM에서 돈을 인출하고 해당하는 고객의 계좌에서 잔액을 변경하는 것은 하나의 원자적 트랜잭션이어야 한다. 돈은 인출되었는데 잔액이 변경되지 않았거나, 잔액은 변경되었는데 돈이 인출되지 않은 상황은 허용되어서는 안된다.


*일관셩(consistency).관리자가 설정한 모든 조건을 데이터가 만족할 때, 데이터베이스는 "일관된 상태(consistent state)"에 있다라고 한다. 예를 들어, 항공기 데이터베이스의 적합한 일관성 조건은 하나의 좌석이 두명의 고객에게 할당될 수 없다는 것이다. 트랜잭션이 수행되는 동안에는 이 조건이 잠시 위반될 수도 있지만, 트랜잭션의 실행이 완료된 후에는 데이터베이스가 모든 일관성 조건을 만족하도록 트랜잭션 관리기가 보장해 주어야 한다.


*고립성(isolation). 둘 이상의 트랜잭션이 병행하여 수행될때, 트랜잭션들이 서로 영향을 미쳐서는 안된다. 즉, 두 트랜잭션이 차례로 실행될 때는 발생하지 않는 영향이 두 트랜잭션이 동시에 수행됨으로 인해 발생되어서는 안된다. 예를 들어 두 여행사 직원이 있으며 항공기 좌석은 하나만 남았다고 가정하자. 이때 두 여행사 직원으로부터 좌석예약 요청중 하나는 거절되어야만 한다. 병행수행된 연산때문에 같은 좌석이 두번 판매되거나 아예 판매가 되지 않아서는 안된다.

*지속성(durablility).트랜잭션의 작업이 완료되면, 시스템 고장이 발생하더라도 결과가 손실되어서는 안된다.

>.< 트랜잭션은 하나의 연산처럼, 모두 순서대로 실행되는것 처럼 보여야 하는 연산들의 그룹을 뜻한다.

 

[Top]
No.
제목
작성자
작성일
조회
864SQL 의 기초 (1)
정재익
2003-10-22
16201
861SQL 에서 Join 이란...
정재익
2003-10-22
19365
860Database system 이란? [1]
정재익
2003-10-22
11329
859ACID
정재익
2003-10-22
9652
780데이터베이스 개론
정재익
2003-06-19
14535
779데이터베이스 연결문자열을 웹에서 분리하자
정재익
2003-06-19
9218
774AIX 4.3 + apache1.3 + tomcat4.1.24 설정 문서
정재익
2003-06-19
11572
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.049초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다