메뉴 건너뛰기

bysql.net

1. 트랜잭션 동시성 제어

2010.05.31 08:50

실천하자 조회 수:8631

DBMS의 일관성 주구현

  • 오라클 : Undo 데이터 이용
  • 타 DBMS : Lock 사용

          ☞ Lock 사용이 적어 오라클이 타DBMS에 비하여 동시성 기능↑


1. 동시성 제어  (다중 사용자 환경일수록 동시성 제어 중요↑)

  • 동시성 제어 : 동시에 실행되는 트랜잭션 수를 최대화하면서도 입력, 수정, 삭제, 검색 시 데이터의 무결성이 유지될 수 있도록 하는 것
  • 동시성(Concurrency) : 다중 사용자가 같은 데이터를 동시에 액세스
  • 일관성(Consistency) : 자신이 발생시킨 변경 사항과 다른 트랜잭션의 변경 사항을 포함해 일관성 있는 상태로 데이터 제공
  • 동시성과 일관성의 관계 - 트레이드(Trade-off) 오프 관계
    • 동시성을 높이기 위해 Lock을 최소화 하면 읽기 일관성 유지의 어려움 발생
    • 일관성을 높이기 위해 Lock을 많이 사용하면 동시성일 떨어짐


2. 트랜잭션이란?

    All or Nothing : 모두 처리 아니면 모두 무효화

  • 특징 (ACID)
    • 원자성(Atomicity) : 더 이상 분해가 불가능한 업무의 최소단위
    • 일관성(Consistency) 트랜잭션 실행 완료 시 일관성 있는 데이터베이스 상태로 변환 (모순 X)
    • 격리성(Isolation) : 트랜잭션 실행 중 생성하는 연산의 중간 결과에 다른 트랜잭션이 접근 불가
    • 영속성(Durability) : 트랜잭션 실행 완료 시 결과는 데이터베이스에 영속적으로 저장

트랜잭션 처리결과가 데이터의 일관성을 유지하기 위해 직렬화 장치 필요 ☞ Lock

번호 제목 글쓴이 날짜 조회 수
67 Front Page file 운영자 2010.05.17 154865
66 4. Prefetch file balto 2010.07.10 28434
65 5. 오라클 Lock file 휘휘 2010.06.07 26365
64 2. DB 버퍼 캐시 file 휘휘 2010.05.24 21916
63 3. SQL 트레이스 file balto 2010.06.06 21175
62 1. 기본 아키텍처 [1] file 휘휘 2010.05.23 19899
61 2. 트랜잭션 수준 읽기 일관성 file 휘휘 2010.06.07 19567
60 5. Undo file 토시리 2010.05.31 18650
59 11. Shared Pool file 실천하자 2010.05.31 18511
58 9. Static vs. Dynamic SQL [1] balto 2010.07.04 18343
57 4. Array Processing 활용 file 휘휘 2010.07.05 18238
56 1 장. 오라클 아키텍처 운영자 2010.05.20 17842
55 5. Fetch Call 최소화 file 휘휘 2010.07.05 16839
54 9. ASH(Active Session History) 실천하자 2010.06.14 15606
53 2. SQL 처리과정 file 휘휘 2010.06.28 15340
52 3. 버퍼 Lock [1] 휘휘 2010.05.24 15225
51 1. Explain Plan 실천하자 2010.06.06 14663
50 6. 바인드 변수의 부작용과 해법 file 실천하자 2010.06.28 14662
49 8. PL/SQL 함수 호출 부하 해소 방안 토시리 2010.07.11 14023
48 7. Result 캐시 휘휘 2010.07.19 12969