1. 트랜잭션 정의
- 데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야 할 일련의 연산들
- 병행 제어 및 회복 작업 시 처리되는 작업의 논리적 단위로 사용됨
- 사용자가 시스템에 대한 서비스 요구 시 시스템이 응답하기 위한 상태 변환 과정의 작업 단위로 사용됨
2. ⭐ 트랜잭션의 상태

| 활동(Active) | 트랜잭션이 실행 중인 상태 |
| 실패(Failed) | 트랜잭션 실행에 오류가 발생하여 중단된 상태 |
| 철회(Aborted) | 트랜잭션이 비정상적으로 종료되어 Rollback연산을 수행한 상태 |
| 부분 완료(Partially Committed) | 트랜잭션을 모두 성공적으로 실행한 후 Commit 연산이 실행되기 직전인 상태 |
| 완료(Committed) | 트랜잭션을 모두 성공적으로 실행한 후 Commit 연산을 실행한 후의 상태 |
3. ⭐ 트랜잭션의 특성
데이터 무결성(Integrity)를 보장하기 위해 트랜잭셩이 가져야할 특성
- Atomicity(원자성)
- 데이터베이스에 모두 반영되도록 완료(Commit)되든지 아니면 전혀 반영되지 않도록 복구(Rollback)되어야 함
- 트랜잭션 내의 모든 명령은 반드시 완벽히 수행되어야 함
- 모두 완벽히 수행되지 않고 어느 하나라도 오류가 발생하면 트랜잭션 전부가 취소되어야 함
- Consistency(일관성)
- 트랜잭션이 그 실행을 성공적으로 완료하면 언제나 일관성 있는 데이터베이스 상태로 변환
- 트랜잭션 수행 전과 수행 완료 유의 상태가 동일해야 함
- Isolation(독립성, 격리성, 순차성)
- 하나의 트랜잭션 실행 중에 다른 트랜잭션의 연산이 끼어들 수 없음
- 수행 중인 트랜잭션은 완전히 완료될 때까지 다른 트랜잭션에서 수행결과 참조 불가
- Durability(영속성, 지속성)
- 성공적으로 완료된 트랜잭션의 결과는 시스템이 고장나더라도 영구적으로 반영
4. ⭐ CURD 분석
- Create, Read, Update, Delete
- 테이블에 발생되는 트랜잭션의 주기별 발생 횟수를 파악하고 연관된 테이블들을 분석하면 테이블에 저장되는 데이터 양을 유추
- 트랜잭션이 몰리는 테이블을 파악할 수 있어 디스크 구성 시 유용한 자료로 활용
- 외부 프로세스 트랜잭션의 부하가 집중되는 데이터베이스 채널을 파악하고 분산시킨으로 연결 지연이나 타임아웃 오류 방지
5. CRUD 매트릭스
- 2차원 형태의 표
- 행에는 프로세스, 열에는 테이블
- 행과 열이 만나는 위치에는 프로세스가 테이블에 발생시키는 변화를 표시하는 업무 프로세스와 데이터 간 상관 분석표
- 프로세스의 트랜잭셩이 테이블에 수행하는 작업을 검증
- 복수의 변화를 줄때 'C > D > U > R'
- CRUD 중 어느 것도 적히지 않은 행이나 열, C나 R이 없는 열을 확인하여 불필요하거나 누락된 테이블 또는 프로세스 찾기
ex)
| 프로세스\테이블 | 회원 | 상품 | 주문 | 주문목록 | 제조사 |
| 신규 회원 등록 | C | ||||
| 회원정보 변경 | R,U | ||||
| 주문 요청 | R | R | C | C | |
| 주문 변경 | R | R,U | |||
| 주문 취소 | R,D | R,D | |||
| 상품 등록 | C | C,R | |||
| 상품정보 변경 | R,U | R,U |
6. 트랜잭션 분석
- CRUD 매트릭스를 기반으로 트랜잭션 양을 분석하여 테이블에 저장되는 데이터의 양을 유추하고 DB용량을 산정해 DB구조를 최적화하는 것
- 업무 개발 담당자가 수행
- 프로세스가 과도하게 접근하는 테이블을 확인하여 여러 디스크에 배치함으로써 디스크 입 · 출력 분산을 통항 성능 향상
7. 트랜잭션 분석서
- 단일 프로세스와 CRUD 매트릭스를 이용해 작성
- 단위 프로세스 : 업무를 발생시키는 가장 작은 단위의 프로세스
- CRUD 연산 : 프로세스의 트랜잭션이 데이터베이스 테이블에 영향을 주는 연산
- 테이블명, 컬럼명 : 프로세스가 접근하는 데이터베이스 테이블명, 컬럼명 (테이블명.컬럼명)
- 테이블 참조 횟수 : 프로세스가 테이블을 참조하는 횟수
- 트랜잭션 수 : 주기별로 수행되는 트랜잭션 횟수
- 발생 주기 : 연, 분기, 월, 일, 시간 등 트랜잭션 횟수를 측정하기 위한 발생 주기
📖 Reference
2023 시나공 정보처리기사 필기 : 네이버 도서
네이버 도서 상세정보를 제공합니다.
search.shopping.naver.com
728x90
반응형
'Certificate > 정보처리기사' 카테고리의 다른 글
| [3과목 데이터베이스 구축] 물리 데이터베이스 설계 - 095. ⭐ 뷰 (View) 설계 (0) | 2025.11.18 |
|---|---|
| [3과목 데이터베이스 구축] 물리 데이터베이스 설계 - 094. ⭐ 인덱스 (Index) 설계 (0) | 2025.11.18 |
| [3과목 데이터베이스 구축] 물리 데이터베이스 설계 - 092. 데이터베이스 저장 공간 설계 (0) | 2025.11.18 |
| [3과목 데이터베이스 구축] 물리 데이터베이스 설계 - 091. 사전 조사 분석 (0) | 2025.11.18 |
| [3과목 데이터베이스 구축] 논리 데이터베이스 설계 - 090. ⭐ 시스템 카탈로그 (System Catalog) (0) | 2025.11.18 |