본문 바로가기
Database/Oracle

[ORACLE] USER_REFRESH_CHILDREN : Refresh 그룹 구성요소 추적과 실전 활용

by Papa Martino V 2025. 7. 19.
728x90

Refresh 그룹 구성요소 추적과 실전 활용
[ORACLE] USER_REFRESH_CHILDREN

 

Oracle 데이터베이스에서 Materialized View (MV)는 데이터를 주기적으로 복제하여 조회 성능을 극대화할 수 있는 중요한 객체입니다. 여러 개의 MV를 하나의 Refresh Group으로 묶어 관리하는 기능은 Oracle의 DBMS_REFRESH 패키지를 통해 제공되며, 이 그룹에 포함된 세부 항목(MV)을 확인하는 데 사용되는 딕셔너리 뷰가 바로 USER_REFRESH_CHILDREN입니다.

1. USER_REFRESH_CHILDREN 이란?

USER_REFRESH_CHILDREN 뷰는 현재 사용자가 소유한 Materialized View Refresh Group에 포함된 각 개별 Materialized View 정보를 제공합니다. 이 뷰를 통해 어떤 MV가 어떤 그룹에 속해 있는지, 테이블 또는 SNAPSHOT 이름은 무엇인지 등을 쉽게 파악할 수 있습니다.

2. 주요 컬럼 설명

컬럼명 설명
NAME Refresh Group 이름
LIST_ORDER 리프레시 실행 순서를 나타내는 정렬 순서
SNAME 스키마 이름 (보통 현재 사용자)
ONAME Materialized View 또는 SNAPSHOT 이름

3. USER_REFRESH_CHILDREN 조회 예시

-- 등록된 Refresh Group 구성 확인
SELECT name, list_order, sname, oname
FROM user_refresh_children
ORDER BY name, list_order;

-- 특정 그룹에 포함된 MV만 조회
SELECT oname
FROM user_refresh_children
WHERE name = 'SALES_REFRESH_GRP';
  

4. USER_REFRESH vs USER_REFRESH_CHILDREN 비교

항목 USER_REFRESH USER_REFRESH_CHILDREN
목적 Refresh Group의 스케줄 및 상태 확인 Group 내 개별 MV 구성 확인
주요 컬럼 NAME, INTERVAL, NEXT_DATE NAME, ONAME, LIST_ORDER
활용 포인트 주기 설정, 실패 모니터링 MV 포함 여부 확인, 실행 순서 조정

5. 실무 활용 전략

  • MV 포함 여부 자동 점검: 대규모 시스템에서는 누락된 MV를 수시로 체크하여 그룹 내 포함 유무 점검
  • 정렬 순서 튜닝: LIST_ORDER를 통해 종속성이 있는 MV의 실행 순서 지정
  • 변경 이력 추적: 정기적으로 이 뷰를 백업하여 MV 추가/삭제 추적 가능
  • 스키마별 MV 분리: 사용자별 그룹 구성 확인을 통해 권한 기반 분리 정책 적용 가능

6. 흔한 문제 사례 및 해결책

문제 원인 해결 방안
리프레시 시 오류 발생 MV 간 종속성 미고려한 순서 설정 LIST_ORDER 재정렬로 순서 재조정
MV가 그룹에서 누락됨 DBMS_REFRESH.ADD 호출 누락 GROUP 구성 재확인 및 재등록
변경 내역 추적 어려움 로그 기록 미비 정기 조회 및 별도 기록 시스템 구축

7. 결론

USER_REFRESH_CHILDREN 뷰는 Oracle MV 환경에서 리프레시 그룹의 구성 요소를 체계적으로 관리하는 데 필수적인 도구입니다. 특히 여러 개의 MV를 효율적으로 리프레시해야 하는 대규모 환경에서 이 뷰를 통해 구성 정보를 정기적으로 점검하고 최적화하는 것은 시스템 안정성과 성능에 직접적인 영향을 미칩니다. DBMS_REFRESH API와 연동하면 더 강력한 자동화 시스템을 구축할 수 있습니다.


출처:

  • Oracle Database PL/SQL Packages and Types Reference - DBMS_REFRESH
  • Oracle Materialized View Concepts and Usage
  • 현업 DBA의 MV 그룹 운영 경험 사례
728x90