1-8. 트랜잭션 분석 / CRUD 분석

민성·2022년 4월 2일
0
post-thumbnail

1. 트랜잭션 (Transaction)

  • 논리적 기능을 수행하기 위한 작업 단위

  • 한꺼번에 모두 수행되어야 할 일련의 연산들

  • DB 시스템에서 병행 제어 및 회복 작업 시 처리되는 작업의 논리적 단위

  • 시스템이 응답하기 위한 상태 변환 과정의 작업 단위


2. 트랜잭션의 특성

  1. 원자성 (Atomicity)
    DB에 모두 반영되도록 완료(Commit)되든지, 전혀 반영되지 않도록 복귀(Rollback)되어야 함

  2. 일관성 (Consistency)
    실행을 성공적으로 완료하면 언제나 일관성 있는 DB 상태로 변환함

  3. 독립성, 격리성, 순차성 (Isolatioin)
    동시에 병행 실행되는 경우 어느 하나의 트랜잭션 실행 중 다른 연산이 끼어들 수 없음

  4. 영속성, 지속성 (Durability)
    완료된 트랜잭션의 결과는 시스템이 고장나도 영구적으로 반영되어야 함

3. CRUD 분석

  • 프로세스와 테이블 간 CRUD 매트릭스를 만들어서 트랜잭션 분석

  • 트랜잭션이 몰리는 테이블 파악 가능
    ⇒ 디스크 구성 시 유용하게 활용 가능

3-1. CRUD 매트릭스

  • 2차원 형태의 표

  • 행(Row)에는 프로세스, 열(Column)에는 테이블, 행 + 열이 만나는 위치는 프로세스가 테이블에 발생시키는 변화 표시
    ⇒ 프로세스 - 데이터 간 관계 분석하는 분석표

  • 트랜잭션이 테이블에 수행하는 작업 검증

  • 복수의 변화를 줄 때는 C > D > U > R 의 우선순위를 적용하여 한 가지만 적음
    (활용 목적에 따라 모두 기입 가능)


4. 트랜잭션 분석

  • 테이블에 저장되는 데이터의 양 유추 (CRUD 매트릭스를 기반으로)
    ⇒ DB의 용량 산정 및 구조의 최적화 목적

  • 프로세스가 과도하게 접근하는 테이블 확인 가능 → 집중 접근 테이블을 여러 디스크에 분산 배치
    ⇒ 디스크 입 / 출력 향상을 통한 성능 향상

profile
mdalss0113@gmail.com

0개의 댓글

관련 채용 정보