트랜잭션의 개념
데이터베이스의 상태를 변화시키는 하나의 논리적 기능을 수행하는 작업의 단위 또는 한꺼번에 모두 수행되어야 할 일련의 연산들을 의미한다.
- DB 시스템에서 병행 제어 및 회복 작업 시 처리되는 작업의 논리적 단위로 사용됨
- 사용자가 시스템에 대한 서비스 요구 시 시스템이 응답하기 위한 상태 변환 과정의 작업 단위로 사용됨
트랜잭션의 특성 (ACID)
원자성 (Atomicity) : 트랜잭션의 연산은 DB에 모두 반영되도록 완료되거나 아예 반영되지 않아야 함
일관성 (Consistency) : 트랜잭션이 성공적으로 수행되면 언제나 일관성 있는 DB 상태로 변환함
독립성 (Isolation) : 트랜잭션이 병행 실행되는 경우 다른 트랜잭션의 연산이 중간에 끼어들 수 없음
지속성, 영속성 (Durability) : 성공한 트랜잭션 결과는 시스템이 고장나도 영구적으로 반영되어야 함
CRUD 분석 기법
프로세스와 테이블 간에 CRUD 매트릭스를 만들어 트랜잭션을 분석하는 기법을 말한다.
CRUD 매트릭스
행에는 프로세스를 기재하고 열에는 테이블을 기재하여 2차원 형태의 표로 표현한다.
- 행과 열이 만나는 위치에서는 프로세스가 테이블에 발생 시키는 변화를 표시함
- 트랜잭션이 테이블에 수행하는 작업을 검증할 수 있음
- 만약에 행과 열이 만나는 위치에 여러 프로세스가 겹친다면 ‘C > D > U > R’의 우선순위를 기준으로 한 가지만 적어야 함
이때, 활용 목적에 따라 모두 기록될 수 있음 - CRUD 매트릭스가 완성된 이후 CRUD 중 어느 것도 적히지 않은 행이나 열, C나 R이 없는 열을 확인하여 불필요하거나 누락된 테이블 및 프로세스를 찾을 수 있음
트랜잭션 분석 기법
CRUD 매트릭스를 기반으로 테이블에 발생하는 트랜잭션 양을 분석하여 테이블에 저장되는 데이터의 양을 유추하고 이를 근거로 DB의 용량 산정 및 구조의 최적화를 목적으로 한다.
- 업무 개발 담당자가 진행함
- 프로세스가 과도하게 접근하는 테이블을 확인할 수 있고, 이를 통해 집중 접근 테이블을 여러 디스크에 분산 배치하여 디스크 입-출력 향상을 통한 성능 향상을 가져올 수 있음
트랜잭션 분석서
단위 프로세스와 CRUD 매트릭스를 이용하여 작성한다.
- 구성 요소 : 단위 프로세스, CRUD 연산, 테이블명, 컬럼명, 테이블 참조 횟수, 트랜잭션 수, 발생 주기 등
'Certificate > 정보처리기사' 카테고리의 다른 글
[정보처리산업기사 실기] Section 10. OSI 참조 모델 요약 (0) | 2022.08.16 |
---|---|
[정보처리산업기사 실기] Section 09. 인터넷 요약 (0) | 2022.08.12 |
[정보처리산업기사 실기] Section 07. 관계형 데이터베이스의 구조 / 관계형 데이터 모델 요약 (0) | 2022.08.11 |
[정보처리산업기사 실기] Section 06. E-R(개체 -관계) 모델 요약 (0) | 2022.08.11 |
[정보처리산업기사 실기] Section 05. 데이터베이스 설계 요약 (0) | 2022.08.10 |