우리 회사 데이터베이스를 티베로로 변경하기
성능 뷰(Dynamic Performance View) & Tibero Performance Repository 0 0 99,999+

by 티베로 TPR Report [2018.09.30]


가. Dynamic Performance View

데이터베이스 관리자는 주기적으로 운영 중인 데이터베이스의 성능에 문제가 없는 지 확인해야 한다. 티베로는 이를 위해 성능과 관련된 다양한 항목들을 수집하여 뷰(Dynamic Performance View, 이하 DPV) 형태로 누적된 통계를 실시간으로 제 공한다

DPV는 SYS USER가 보유하고 있는 OBJECT이므로 사용자에게 VIEW의 SELECT 권한을 부여해야 조회가 가능하며, TSM SHARED CACHE의 DATA DICTIONARY CACHE 영역에 저장된다.

대부분의 DPV는 데이터베이스 기동 후 전체 누적치를 기록하나 V$SQL과 같이 ROW를 누적추가해야 하는 경우 MEMORY 용량 부족 시 가장 오래된 통계를 삭제 한다.

  • [참고 5-1 ] 티베로에서 제공하고 있는 DPV 확인(Tibero 5 기준 127개, Tibero 6 기준 149개 )
  • SELECT VIEW_NAME 
      FROM DBA_VIEWS 
     WHERE OWNER = 'SYS' 
       AND VIEW_NAME LIKE 'V$%' ORDER BY 1;
       
    ------------------------------------
    VIEW_NAME
    -----------------------------------
    V$ACCESS
    V$ACTIVE_SESSION_HISTORY
    V$ALL_FILESTAT
    V$ARCHIVED_LOG
    ...
    

  • [참고 5-2] DPV 제공 정보 확인
  • SELECT * FROM DICT WHERE TABLE_NAME = 'V$ACCESS';
    
    ----------- -------------------------------------------------
    TABLE_NAME  COMMENTS
    ----------- -------------------------------------------------
    V$ACCESS    Displays information for the objects that the session is accessing.
    

DPV는 기본적으로 PUBLIC SYNONYM을 가지고 있으므로 GRANT만 부여하면 VIEW NAME만으로 조회가 가능하다.
GRANT SELECT ON SYS.V$SQL TO TIBEROTEST;

만약 전체 DPV 및 DICTIONARY TABLE에 대한 SELECT 권한을 부여하고 싶다면 SELECT ANY DICTIONARY 권한을 부여한다.
GRANT SELECT ANY DICTIONARY TO TIBEROTEST;

나. 티베로 성능분석 리포트(Tibero Performance Repository)

조회 시점의 누적된 통계를 제공하는 DPV만으로는 특정 기간별 성능 점검이 불가 능하므로 이를 위해 관리자는 별도의 테이블을 생성하여 주기적으로 저장해야만 할 것이다.

그러나 티베로 성능분석 리포트(Tibero Performance Repository(이하 TPR))는 성 능 통계 정보를 별도의 공간(SYSSUB 테이블스페이스)에 TABLE 형태(TPR 테이 블)로 주기적으로 자동 수집하고 해당 값을 이용하여 기간별 분석 리포트 출력 기 능을 제공한다. 따라서 관리자는 별도의 저장 작업 없이 TPR 테이블과 분석 리포 트를 활용하여 성능 분석이 가능하다.

  • [참고 5-1] Tibero Performance Repository 개념

  • [표 5-1] TPR 테이블 & DPV(출처 : http://technet.tmaxsoft.com)
  • 스냅샷 TPR 테이블 설명
    _TPR_SNAPSHOT 저장된 스냅샷의 ID와 시간에 관한 정보를 관리하는 테이블이다.
    _TPR_BASELINE 등록된 Baseline의 정보를 관리하는 테이블이다.
    _TPR_ACTIVE_SESSION_HISTORY 저장된 ASH Sample 정보를 관리하는 테이블이다.
    _TPR_METRIC 저장된 TPR Metric 정보를 관리하는 테이블이다.
    _TPR_JCNTSTAT _VT_JCNTSTAT 뷰의 스냅샷 정보를 관리하는 테이블이다.
    _TPR_SQLSTATS V$SQLSTATS 뷰의 스냅샷 정보를 관리하는 테이블이다
    _TPR_SQL_PLAN V$SQL_PLAN 뷰의 스냅샷 정보를 관리하는 테이블이다.
    _TPR_SQL_PLAN_STAT V$SQL_PLAN_STATISTICS 뷰의 스냅샷 정보를 관리하는 테이블이다
    _TPR_LATCH V$LATCH 뷰의 스냅샷 정보를 관리하는 테이블이다.
    _TPR_SYSTEM_EVENT V$SYSTEM_EVENT 뷰의 스냅샷 정보를 관리하는 테이블이다
    _TPR_WAITSTAT V$WAITSTAT 뷰의 스냅샷 정보를 관리하는 테이블이다
    _TPR_SGASTAT V$SGASTAT 뷰의 스냅샷 정보를 관리하는 테이블이다.
    _TPR_PGASTAT V$PGASTAT 뷰의 스냅샷 정보를 관리하는 테이블이다.
    _TPR_LIBRARYCACHE V$LIBRARYCACHE 뷰의 스냅샷 정보를 관리하는 테이블이다.
    _TPR_SQLTEXT V$SQLTEXT 뷰의 스냅샷 정보를 관리하는 테이블이다.

  • - 해당 강좌는 도서 " [우리 회사 데이터베이스를 티베로로 변경하기]"의 내용을 옮겼습니다.
  • - 해당 도서는 기간계 DBMS(DATABASE MANAGEMENT SYSTEM)를 티베로로 전환하는 실제 프로젝트를 수행한 실무자가 DBMS 전환 과정과 실제 적용 사례, 문제 해결 과정 등을 자세하게 설명하고 있습니다.

- 강좌 URL : http://www.gurubee.net/lecture/4141

- 구루비 강좌는 개인의 학습용으로만 사용 할 수 있으며, 다른 웹 페이지에 게재할 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^

- 구루비 강좌는 서비스 제공을 위한 목적이나, 학원 홍보, 수익을 얻기 위한 용도로 사용 할 수 없습니다.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입