Skip to end of metadata
Go to start of metadata

개요


  • ALTIBASE HDB 5.5.1 이전 버전에서는 언두 테이블스페이스의 ALLOC 만 확인이 가능할 뿐 USED 를 확인할 수 없었습니다.
  • ALTIBASE HDB 5.5.1 부터 추가된 V$DISK_UNDO_USAGE 를 이용하여 언두 테이블스페이스 실 사용량을 확인하는 방법을 소개합니다. 

 

언두 테이블스페이스의 ALLOC 과 USED


  • 언두 테이블스페이스는 세그먼트 단위로 이루어져 있으며 세그먼트는 익스텐트라는 더 작은 단위로 이루어져 있습니다. 
  • 디스크 테이블에 변경 트랜잭션 발생 시 익스텐트 단위로 할당받게 되며 익스텐트를 새롭게 할당 받을 때마다 언두 테이블스페이스 ALLOC 크기가 증가합니다.
  • 트랜잭션이 종료되면 익스텐트는 재사용 가능한 상태가 됩니다.
  • 하지만 세그먼트 내의 익스텐트 중 하나라도 사용 중이라면 재 사용 가능한 익스텐트가 있더라도 해당 세그먼트 내의 익스텐트는 모두 사용할 수 없는 상태가 됩니다. (UNSTEALABLE EXTENT)
  • 변경 트랜잭션이 수행 중이어서 익스텐트를 사용하거나 UNSTEALABLE 익스텐트는 언두 테이블스페이스의 USED 로 계산됩니다. 

 

 

버전


이 모니터링 쿼리는 아래 버전에서 사용할 수 있습니다.

  • ALTIBASE HDB 5.5.1
  • ALTIBASE HDB 6.1.1
  • ALTIBASE HDB 6.3.1

 

 

언두 테이블스페이스 사용량


  • 디스크 테이블에 변경 트랜잭션이 수행 중에는 ALLOC 과 USED 가 증가할 수 있습니다.
  • 트랜잭션이 커밋된 경우 트랜잭션 수행 중에 증가한 USED 는 줄어듭니다.
  • 트랜잭션이 롤백된 경우 트랜잭션 수행 중에 증가한 ALLOC 과 USED 는 줄어듭니다. 

    언두 테이블스페이스 사용량 조회 쿼리
    결과 예시

 

 

 

관련 버그


BUG-39985

버그 내용

  • 재 사용 할 수 없는 언두 영역을 사용 가능한 공간으로 계산되는 문제를 개선함. (UNSTEALABLE_EXT_CNT 컬럼에 해당되는 익스텐트가 사용 가능한 익스텐트로 계산되는 문제)
  • UNSTEALABLE_EXT_CNT 컬럼은 아래 V$DISK_UNDO_USAGE  성능 뷰 설명 참고

반영 버전

  • ALTIBASE HDB 6.1.1.4.9
  • ALTIBASE HDB 6.3.1.3.3

 

 

 

 

참고 - V$DISK_UNDO_USAGE 성능 뷰


 

컬럼 이름

데이터 타입

설명

TX_EXT_CNT

BIGINT

트랜잭션 상태 정보를 저장하는 세그먼트(Transaction Status Segment, TSS) 용 익스텐트 수.
디스크 테이블에 갱신 트랜잭션 발생 시 할당 받는다.

USED_EXT_CNT

BIGINT

트랜잭션에 사용되고 있는 언두 세그먼트 내 익스텐트 수.
디스크 테이블에 갱신 트랜잭션 발생 시 필요한 만큼 할당 받는다.

UNSTEALABLE_EXT_CNT

BIGINT

다른 언두 세그먼트에서 가져갈 수 없는 익스텐트 수.
온라인 상태의 언두 세그먼트에 속한 익스텐트, 헤더 정보를 가지고 있는 익스텐트. 트랜잭션이 접근하고 있는 익스텐트들을 포함한다.
해당 언두 세그먼트에 재 사용 가능한 익스텐트가 있다 하더라고 다른 언두 세그먼트에서 가져가지 못한다.

REUSABLE_EXT_CNT

BIGINT

재사용 가능한 익스텐트 수
트랜잭션 진행 중에 사용된 USED_EXT_CNT 는 해당 트랜잭션이 커밋되면 USED_EXT_CNT 는 감소한 만큼 REUSABLE_EXT_CNT 이 증가한다.

TOTAL_EXT_CNT

BIGINT

언두 테이블 스페이스에서 할당 받은 총 익스텐트 수.
트랜잭션이 롤백 된 경우, 그 트랜잭션에 사용된 익스텐트들은 언두 테이블 스페이스로 반환된다.
트랜잭션이 커밋 된 경우, 그 트랜잭션에 사용된 익스텐트들은 해당 언두 세그먼트에서 가지고 있는다.

  • No labels