데이터 아키텍처 & 처리기술 & DBMS/Oracle

SCN(System Commit Number)

anodos 2023. 12. 21. 16:52

Oracle에서 SCN(System Commit Number)은 데이터베이스 내에서 트랜잭션 및 데이터 변경을 추적하는 데 사용되는 중요한 개념입니다. 

 

SCN은 시스템 수준에서 각 트랜잭션의 고유한 순차 번호를 나타내며, 데이터베이스의 무결성과 일관성을 유지하는 데 도움이 됩니다.

다음은 SCN에 대한 주요 특징과 설명입니다:

1. 고유성: 

각 SCN은 유일하게 식별되는 값으로, 특정 시점에서 데이터베이스의 상태를 식별합니다. 모든 데이터 변경 및 트랜잭션은 이러한 SCN을 사용하여 서로 구분됩니다.

2. 트랜잭션 커밋 시 생성: 

SCN은 트랜잭션이 커밋될 때 생성됩니다. 즉, 트랜잭션이 커밋되면 해당 트랜잭션의 SCN이 부여되며, 이 SCN은 트랜잭션의 종료 시점에 적용된 모든 데이터 변경 사항에 대해 유일한 타임스탬프 역할을 합니다.

3.트랜잭션 동시성 제어

SCN은 데이터베이스에서 트랜잭션의 동시성을 제어하는 데 사용됩니다. 여러 트랜잭션이 동시에 데이터베이스에 액세스할 때, SCN은 데이터 일관성 및 격리를 보장합니다.

4. 리소스 체크포인트와 연관:

Oracle 데이터베이스는 SCN을 사용하여 리소스 체크포인트를 관리합니다. 체크포인트는 데이터베이스의 디스크에 기록된 변경 사항을 제어하고, SCN은 이러한 체크포인트를 결정하는 데 사용됩니다.

5. 논리적 및 물리적 복제에서 활용

SCN은 데이터베이스의 논리적 및 물리적 복제에서 사용됩니다. 다른 데이터베이스 간에 변경 사항을 동기화하거나 데이터의 일관성을 유지하는 데에도 SCN이 중요한 역할을 합니다.

6. 갱신된 블록 식별

SCN은 블록의 상태를 추적하고, 변경된 블록에 대한 SCN 정보는 다른 트랜잭션이 해당 블록을 읽을 때 일관성을 유지하도록 도움을 줍니다.

SCN은 Oracle 데이터베이스의 핵심 기능 중 하나로, 데이터베이스 엔진이 트랜잭션 및 데이터의 시간적인 순서를 추적하고 동시성을 관리하는 데 사용됩니다.

반응형