728x90

1. USER_TS_QUOTAS란?
USER_TS_QUOTAS는 오라클 데이터베이스에서 현재 사용자에게 부여된 테이블스페이스의 **저장 공간 할당량(Quota)** 정보를 조회하는 데 사용되는 데이터 딕셔너리 뷰입니다. 이 뷰는 각 사용자별 테이블스페이스 사용 한도를 관리하고, 스토리지 정책을 설계하거나 용량 초과 오류를 사전에 방지하기 위해 매우 유용합니다. 특히 데이터 증분이 빠른 시스템에서는 **불필요한 공간 점유를 제어하거나, 사용자별 리소스 제한**을 위해 할당량 설정이 자주 활용되며, USER_TS_QUOTAS는 이러한 제한의 조회와 점검에 필수적입니다.
2. 주요 컬럼 설명
| 컬럼명 | 설명 |
|---|---|
| TABLESPACE_NAME | 해당 할당량이 적용된 테이블스페이스 이름 |
| USERNAME | 할당량이 적용된 사용자 이름 |
| BYTES | 현재까지 사용된 바이트 수 |
| MAX_BYTES | 최대 할당된 바이트 수 (UNLIMITED는 -1로 표시) |
| BLOCKS | 사용된 블록 수 |
| MAX_BLOCKS | 최대 사용 가능한 블록 수 |
3. 실전 활용 예제
3.1. 현재 사용자 테이블스페이스별 할당량 확인
SELECT
TABLESPACE_NAME,
BYTES,
MAX_BYTES
FROM
USER_TS_QUOTAS;
3.2. 할당량이 무제한(UNLIMITED)인지 확인
SELECT
TABLESPACE_NAME
FROM
USER_TS_QUOTAS
WHERE
MAX_BYTES = -1;
3.3. 사용량이 80% 이상인 테이블스페이스 탐지
SELECT
TABLESPACE_NAME,
ROUND(BYTES / MAX_BYTES * 100, 2) AS USAGE_PERCENT
FROM
USER_TS_QUOTAS
WHERE
MAX_BYTES > 0
AND BYTES / MAX_BYTES >= 0.8;
4. USER_TS_QUOTAS vs 관련 뷰 비교
| 뷰 이름 | 설명 | 범위 | 사용 목적 |
|---|---|---|---|
| USER_TS_QUOTAS | 현재 사용자에게 할당된 테이블스페이스 사용량 조회 | 현재 로그인 사용자 | 자신의 저장 공간 관리 |
| DBA_TS_QUOTAS | 모든 사용자에 대한 테이블스페이스 할당량 정보 | DBA 권한 사용자 | 전체 시스템 할당량 감시 |
| USER_TABLESPACES | 사용자가 접근할 수 있는 테이블스페이스 목록 | 현재 사용자 | 접근 가능 테이블스페이스 식별 |
5. USER_TS_QUOTAS 활용 전략
- 스토리지 과다 사용 탐지: BYTES와 MAX_BYTES를 비교해 저장소 초과 임박 여부 감지
- 공간 분산 전략: 사용자별 테이블스페이스를 다르게 설정하여 병목 방지
- 리소스 제어 정책 수립: 프로젝트 또는 팀 단위로 MAX_BYTES를 지정하여 통제 가능
- DB 운영 안정화: 급격한 데이터 증가로 인한 시스템 불안정 사전 방지
6. 주의사항
- UNLIMITED 설정 확인: -1은 무제한 설정이며, 권한 없는 사용자가 과도하게 사용하는 원인이 될 수 있음
- BLOCKS 기준 주의: 블록 크기(예: 8KB)에 따라 실제 BYTES 해석 필요
- 동기화 주기적 점검: 쿼터 변경은
ALTER USER명령으로 수행되며, 변경 후 동기화 확인 필요
7. 결론
USER_TS_QUOTAS는 오라클 사용자에게 할당된 저장 공간을 투명하게 조회하고 관리할 수 있게 해주는 핵심 뷰입니다. 특히, 멀티 유저 환경에서 리소스 경쟁이나 불균형을 막기 위해 **정기적인 사용량 점검과 제한 정책 수립**이 필요하며, 이 뷰를 적극적으로 활용하여 안정적인 데이터베이스 운영이 가능해집니다.
8. 출처
- Oracle Corporation. Oracle Database Reference
- Steve Adams, 『Oracle Storage Internals』
728x90
'Database > Oracle' 카테고리의 다른 글
| [ORACLE] USER_TYPE_ATTRS : 사용자 정의 객체 타입 속성 분석 가이드 (0) | 2025.08.10 |
|---|---|
| [ORACLE] USER_TYPES : 사용자 정의 객체 타입 완전 분석 가이드 (0) | 2025.08.09 |
| [ORACLE] USER_TRIGGER_COLS : 트리거 감시 컬럼 완전 분석 (0) | 2025.08.09 |
| [ORACLE] USER_TRIGGERS : 오라클 트리거의 핵심 구조와 실전 활용 (0) | 2025.08.09 |
| [ORACLE] USER_TAB_SUBPARTITIONS : 서브 파티션 구조 완전 정복 (0) | 2025.08.09 |