본문 바로가기
728x90

Database581

[ORACLE] INDEX_HISTOGRAM : 인덱스 구조 검증을 위한 숨겨진 통계 도구 Oracle 데이터베이스 최적화에 있어 인덱스는 성능 향상의 핵심 요소입니다. 그중 INDEX_HISTOGRAM 뷰는 다소 생소하지만, 인덱스 내 키 반복 정보 제공이라는 독창적인 가치를 지닌 통계 도구로, 전문적인 DB 운영과 튜닝에 유용합니다. 아래에서 그 역할과 활용법, 장단점을 상세히 탐구합니다.1. INDEX_HISTOGRAM이란 무엇인가?Oracle에서 ANALYZE INDEX ... VALIDATE STRUCTURE 또는 ANALYZE INDEX ... VALIDATE STRUCTURE OFFLINE 명령을 실행하면, INDEX_STATS와 함께 INDEX_HISTOGRAM 뷰가 갱신됩니다. 이 뷰는 인덱스 내에서 반복된 키가 얼마나 자주 나타나는지에 대한 정보를 제공합니다.2. 핵심 컬럼 .. 2025. 9. 9.
[ORACLE] GLOBAL_NAME 설정과 활용 Oracle Database를 운영하다 보면 다양한 환경 간의 연결을 구축하고 통합할 필요가 있습니다. 이때 중요한 역할을 하는 것이 바로 GLOBAL_NAME입니다. 이 글에서는 GLOBAL_NAME이란 무엇인지, 어떤 목적과 특징을 가지고 있으며, 이를 설정하고 활용하는 방법까지 전문가 관점에서 체계적으로 설명합니다.1. GLOBAL_NAME이란 무엇인가?GLOBAL_NAME은 Oracle 데이터베이스의 고유 식별자 역할을 하는 설정 값으로, 데이터베이스 링크(DB Link)를 통한 외부 접속 시 일관된 네이밍 정책을 유지하도록 지원합니다. 이는 글로벌 환경에서 데이터 무결성과 명확한 데이터 소스를 유지하기 위해 매우 중요한 요소입니다.2. GLOBAL_NAME의 특징 및 필요성글로벌 네임스페이스 유.. 2025. 8. 20.
[ORACLE] USER_VARRAYS : VARRAY 타입 구조 분석 및 활용 전략 1. USER_VARRAYS란?Oracle에서 USER_VARRAYS 뷰는 현재 사용자 스키마에서 정의된 VARRAY(Variable-size array) 타입의 정보를 조회할 수 있는 데이터 딕셔너리 뷰입니다. VARRAY는 컬렉션(Collection) 타입 중 하나로, **정해진 최대 크기를 갖는 배열 형태**의 데이터 구조를 지원합니다. 복수의 데이터를 단일 컬럼에 저장하거나, 객체 타입과 결합하여 복잡한 구조를 표현할 때 사용됩니다.USER_VARRAYS는 이와 같은 VARRAY 타입의 정의, 최대 크기, 저장 방식 등을 확인하는 데 필수적인 뷰입니다.2. 주요 컬럼 설명컬럼명설명TYPE_NAMEVARRAY 타입의 이름TYPE_OWNER타입을 소유한 사용자UPPER_BOUND배열의 최대 크기ELE.. 2025. 8. 12.
[ORACLE] USER_USTATS : 통계 수집 상태 및 최적화 전략 완전 분석 1. USER_USTATS란?USER_USTATS는 Oracle 데이터베이스에서 현재 사용자 스키마의 오브젝트(테이블, 인덱스 등)에 대한 **사용자 수집 통계(Statistics)** 정보를 보여주는 뷰입니다. Oracle 옵티마이저는 통계 정보를 바탕으로 최적의 실행 계획을 생성하기 때문에, 통계 정보의 수집 여부와 정확성은 쿼리 성능에 직접적인 영향을 미칩니다. 이 뷰는 DBMS_STATS 패키지를 통해 수집된 통계가 **사용자 정의로 존재하는지, 시스템에서 수집된 것인지**를 판단하는 데 유용하며, 실무에서는 통계 오류, 통계 누락, 통계 수동 고정 등에 대한 진단을 위해 활용됩니다.2. 주요 컬럼 설명컬럼명설명OBJECT_NAME통계 정보가 수집된 객체 이름OBJECT_TYPE객체 유형 (TAB.. 2025. 8. 12.
[ORACLE] USER_UPDATABLE_COLUMNS : 컬럼 수정 가능 여부 진단과 활용 전략 1. USER_UPDATABLE_COLUMNS란?USER_UPDATABLE_COLUMNS는 Oracle 데이터베이스에서 현재 사용자가 소유한 테이블 또는 뷰에 대해 **각 컬럼이 UPDATE, INSERT, DELETE 가능한지 여부**를 확인할 수 있는 데이터 딕셔너리 뷰입니다. 주로 **뷰(View)**를 대상으로 사용되며, 뷰 기반 애플리케이션 개발 시 수정 가능성 검토 또는 권한 진단예를 들어 복잡한 조인이나 집계 함수가 포함된 뷰에서는 일부 컬럼만 수정 가능하고, 나머지는 읽기 전용이 될 수 있습니다. 이때 해당 컬럼이 업데이트 가능한지를 판단할 수 있는 것이 바로 이 뷰입니다.2. 주요 컬럼 설명컬럼명설명TABLE_NAME해당 컬럼이 속한 테이블 또는 뷰의 이름COLUMN_NAME컬럼 이름UP.. 2025. 8. 11.
[ORACLE] USER_UNUSED_COL_TABS : 삭제된 컬럼 정보 조회와 정리 전략 1. USER_UNUSED_COL_TABS란?USER_UNUSED_COL_TABS는 Oracle 데이터베이스에서 **현재 사용자 스키마에 속한 테이블 중, UNUSED 상태로 표시된 컬럼 정보**를 조회할 수 있는 데이터 딕셔너리 뷰입니다. 오라클에서 ALTER TABLE ... SET UNUSED COLUMN 명령을 사용하면 컬럼을 실제로 제거하지 않고 “사용 불가” 상태로 표시하며, 이 상태의 컬럼은 테이블에서 접근 불가하지만 내부적으로 여전히 존재하므로 공간을 차지할 수 있습니다. 이 뷰는 이런 UNUSED 컬럼이 어느 테이블에 존재하는지 확인하고, ALTER TABLE ... DROP UNUSED COLUMNS로 실제 정리할 수 있는 기반 정보를 제공합니다.2. 주요 컬럼 설명컬럼명설명TABLE_.. 2025. 8. 11.
728x90