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

query scn과 block scn의 차이점은?

anodos 2023. 12. 21. 16:55

Oracle 데이터베이스에서 "Query SCN"과 "Block SCN"은 데이터베이스의 내부 동작과 관련된 용어로, 각각 특정 쿼리나 블록의 상태를 나타냅니다.

1. Query SCN (System Commit Number):
   - 정의:

특정 쿼리의 SCN은 쿼리가 실행된 시점의 데이터베이스 상태를 나타내는 것으로, 해당 쿼리에 대한 일관된 데이터 스냅샷을 지정합니다.


   - 활용:

일반적으로 특정 쿼리의 SCN은 데이터의 특정 시간점에서 데이터의 일관성을 유지하고 조회하는 데 사용됩니다. 예를 들어 `AS OF SCN` 구문을 사용하여 과거의 데이터 상태를 조회할 때 사용될 수 있습니다.

2. Block SCN (System Commit Number):
   - **정의:** 

블록의 SCN은 해당 블록이 마지막으로 수정된 시점의 시스템 커밋 넘버를 나타냅니다. 

이는 블록의 상태가 마지막으로 변경된 트랜잭션의 커밋 SCN을 의미합니다.


   - **활용:** 블록 SCN은 데이터베이스 엔진이 블록의 변화를 추적하고, 특정 블록에 대한 변경 사항을 식별하는 데 사용됩니다. 블록 SCN은 블록 레벨에서 데이터베이스의 상태를 관리하고 동기화하는 데 중요한 역할을 합니다.

즉, Query SCN은 특정 쿼리의 실행 시점에서의 데이터 일관성을 나타내는 데 사용되며, Block SCN은 블록이 마지막으로 수정된 트랜잭션의 커밋 SCN을 추적하는 데 사용됩니다. 두 SCN은 데이터베이스의 내부 동작을 지원하고 특히 읽기 일관성과 블록 레벨에서의 변경 관리에 관련이 있습니다.

반응형