728x90 sql 성능5 [ORACLE] USER_SNAPSHOT_LOGS 뷰의 의미와 실전 활용 가이드 1. USER_SNAPSHOT_LOGS란?USER_SNAPSHOT_LOGS는 Oracle 데이터베이스에서 DBMS_STATS 패키지를 통해 수집된 통계 정보의 히스토리를 저장하는 뷰입니다. 이는 특히 DBA나 데이터 분석 담당자에게, 데이터 수집 작업이 언제 수행되었고 어떤 테이블에 영향을 주었는지에 대한 추적이 가능하도록 도와줍니다. 이 뷰는 USER_ 접두사가 붙은 뷰이므로, 현재 접속한 사용자 소유의 객체만을 보여주며, 시스템 전체의 정보를 보기 위해선 DBA_SNAPSHOT_LOGS나 ALL_SNAPSHOT_LOGS를 사용할 수 있습니다.2. 주요 컬럼 설명컬럼명설명TABLE_NAME통계 정보가 수집된 대상 테이블 이름START_TIME수집 작업 시작 시각END_TIME수집 작업 종료 시각STAT.. 2025. 8. 7. [ORACLE] USER_HISTOGRAMS 완벽 분석 : 옵티마이저의 판단을 지배하는 통계 구조 1. USER_HISTOGRAMS란 무엇인가?USER_HISTOGRAMS는 Oracle 데이터베이스에서 사용자가 소유한 테이블의 컬럼에 대한 히스토그램 정보를 제공하는 데이터 딕셔너리 뷰입니다. 이 뷰는 Oracle 옵티마이저가 SQL 실행 계획을 최적화할 때 컬럼 값의 분포도를 파악하는 데 핵심적으로 사용됩니다. 히스토그램은 단순한 평균값이나 최소/최대 값만으로는 파악할 수 없는 데이터의 실제 분포를 반영하여, 특정 조건에 대한 필터링 효과(Cardinality Estimation)를 정밀하게 계산하는 데 결정적인 역할을 합니다.2. 히스토그램이 필요한 이유예를 들어, GENDER 컬럼에 'M'과 'F'만 존재한다고 해도, 전체 90%가 'M'이라면 이 분포를 인지한 옵티마이저는 더 효율적인 인덱스 스.. 2025. 7. 30. [ORACLE] IND 인덱스 완전 정복 : 개념부터 실무 활용까지 ORACLE 데이터베이스를 효율적으로 운영하기 위한 핵심 전략 중 하나는 인덱스(IND, Index)의 적절한 설계와 활용입니다. 이번 글에서는 ORACLE의 인덱스(IND)에 대해 실무에서 바로 활용할 수 있는 내용 위주로, 이론부터 실무적 튜닝까지 폭넓게 설명합니다.IND(Index)란 무엇인가?인덱스(Index, IND)는 ORACLE 데이터베이스에서 데이터를 보다 빠르게 조회할 수 있도록 돕는 객체입니다. 마치 책의 목차처럼, 특정 값을 빠르게 찾을 수 있는 경로를 제공합니다. 인덱스를 사용하면 전체 테이블을 스캔하는 Full Table Scan을 피할 수 있어 성능을 획기적으로 개선할 수 있습니다.ORACLE에서 사용 가능한 주요 인덱스 종류인덱스 종류특징적용 예시B-Tree Index가장 일반.. 2025. 7. 29. [ORACLE] ALL_PART_TABLES 뷰를 활용한 파티션 테이블 정보 파악 대규모 데이터 환경에서 성능과 유지관리 효율성을 동시에 확보하려면 파티셔닝은 필수적인 전략입니다. 오라클 데이터베이스는 다양한 파티션 기능을 제공하며, 이 중 ALL_PART_TABLES 뷰는 실무에서 파티션 테이블의 핵심 정보를 파악하는 데 매우 유용한 도구입니다.1. ALL_PART_TABLES란?ALL_PART_TABLES는 사용자가 접근할 수 있는 파티션 테이블에 대한 정보를 제공하는 Oracle Dictionary View입니다. 테이블의 파티셔닝 유형, 파티션 개수, 서브파티션 여부, 파티션 키 유형 등을 확인할 수 있어 성능 분석과 구조 이해에 핵심적인 역할을 합니다.1-1. 주요 컬럼 설명OWNER: 테이블 소유자TABLE_NAME: 테이블 이름PARTITIONING_TYPE: RANGE,.. 2025. 6. 27. [ORACLE] ALL_PART_HISTOGRAMS 뷰 완전 정복 1. ALL_PART_HISTOGRAMS란 무엇인가?ALL_PART_HISTOGRAMS는 오라클 데이터베이스에서 파티션 테이블 또는 서브파티션 테이블에 대한 히스토그램 통계를 확인할 수 있는 딕셔너리 뷰입니다. 히스토그램은 컬럼의 데이터 분포를 세분화하여 옵티마이저가 좀 더 정밀하게 실행 계획을 선택할 수 있게 도와줍니다. 특히 데이터가 불균형적으로 분포되어 있을 때 효율적인 쿼리 성능을 보장하기 위해 필수적인 요소입니다.2. 주요 컬럼 설명ALL_PART_HISTOGRAMS의 주요 컬럼은 아래와 같습니다.컬럼명설명OWNER해당 객체의 소유자TABLE_NAME테이블명PARTITION_NAME해당 파티션 이름COLUMN_NAME히스토그램이 적용된 컬럼명ENDPOINT_NUMBER히스토그램 구간 번호ENDP.. 2025. 6. 26. 이전 1 다음 728x90