Lock Escalation (락 에스컬레이션) in Oracle

1. Lock Escalation 개요 Lock Escalation(락 에스컬레이션) 은 데이터베이스에서 트랜잭션이 획득한 잠금(Lock)의 범위가 증가하여 더 큰 범위를 잠그는 과정을 의미합니다.즉, 많은 개별 행(row) 잠금을 유지하는 대신, 일정 임계치를 초과하면 테이블 … Read more

Write Ahead Logging (WAL)

Oracle의 Write-Ahead Logging (WAL) Oracle에서는 Write-Ahead Logging (WAL) 개념이 Redo Log와 Undo Log를 통해 구현됩니다. WAL은 데이터를 디스크의 데이터 파일에 기록하기 전에, 먼저 로그(redo log)에 기록하는 기법으로, 장애 발생 시 … Read more

클러스터 테이블(Clustered Table)

클러스터 테이블(Clustered Table)은 데이터가 물리적으로 클러스터링되어 저장되는 방식으로, 관련 데이터가 동일한 디스크 블록에 가깝게 저장되도록 하는 데이터베이스 테이블 유형입니다. 이를 통해 특정 쿼리 성능을 최적화할 수 있습니다. 1. 클러스터 테이블 … Read more

오라클(Oracle) Index Scan 종류

오라클(Oracle)에서 Index Scan은 인덱스를 활용하여 데이터를 조회하는 방식이며, 다양한 방식으로 수행될 수 있습니다. 주요 Index Scan의 종류는 다음과 같습니다. 1. Index Unique Scan 2. Index Range Scan 3. Index Full … Read more

MVCC(Multi-Version Concurrency Control, 다중 버전 동시성 제어)

다중 버전 동시성 제어(MVCC, Multi-Version Concurrency Control)는 데이터베이스 시스템에서 동시성을 관리하는 기법으로, 트랜잭션이 동시에 실행될 때 읽기 작업과 쓰기 작업이 충돌하지 않도록 여러 개의 데이터 버전을 유지하는 방식입니다. 🔹 MVCC의 … Read more

비관적 동시성 제어 (Pessimistic Concurrency Control) vs 낙관적 동시성 제어 (Optimistic Concurrency Control)

트랜잭션 동시성 제어 방식에는 크게 비관적 동시성 제어(Pessimistic Concurrency Control, PCC)와 낙관적 동시성 제어(Optimistic Concurrency Control, OCC) 두 가지가 있습니다. 각각의 방식은 동시성 문제를 해결하는 접근 방식이 다릅니다. ※ 참고로 … Read more

트랜잭션 동시성 제어 (Transaction Concurrency Control)

트랜잭션 동시성 제어는 다수의 트랜잭션이 동시에 실행될 때 데이터의 일관성을 유지하고, 데이터 충돌을 방지하는 기술입니다. 이를 통해 데이터베이스 무결성을 보장하고, 병렬 처리 성능을 극대화할 수 있습니다. 1. 동시성 문제 여러 … Read more

팬텀 충돌(Phantom Conflict)

팬텀 충돌(Phantom Conflict, 팬텀 문제, Phantom Read)은 트랜잭션이 동일한 조건으로 여러 번 조회할 때, 다른 트랜잭션이 중간에 데이터를 삽입하거나 삭제하여 결과가 달라지는 현상을 의미합니다. 이는 반복 가능한 읽기(Repeatable Read) 수준에서도 … Read more

오라클 Lock (트랜젝션 동시성 제어)

오라클에서 Lock(잠금)은 여러 사용자가 동시에 같은 데이터에 접근할 때 데이터의 무결성을 보장하고 경합을 방지하기 위해 적용되는 메커니즘입니다. 오라클 Lock은 크게 DML Lock, DDL Lock, System Lock, 그리고 Latch(래치) 및 내부 … Read more