13 인덱스 인덱스의 개념 인덱스의 구조 인덱스의 효율적인 사용 방법 인덱스의 종류 및 생성 방법 인덱스 실행 경로 확인

Slides:



Advertisements
Similar presentations
제철고 프로그래밍언어 2015 가을학기 강의 #2 Python 변수, 입출력, 배열 박성우 POSTECH 컴퓨터공학과 2015 년 9 월 30 일.
Advertisements

12 데이터 무결성 제약조건 데이터 무결성 제약조건의 개념 데이터 무결성 제약조건의 종류 무결성 제약조건의 생성 방법.
컴퓨터와 인터넷.
SQL 언어 SQL.
02 SQL 언어 SQL 명령문의 종류와 사용 방법 오라클 오류 메시지.
02 SQL 언어 SQL 명령문의 종류와 사용 방법 오라클 오류 메시지.
Nested Queries CSED421: Database Systems Labs.
PARK SUNGJIN Oracle 설치 PARK SUNGJIN
DB 프로그래밍 학기.
You YOungseok 데이터베이스 테이블 및 인덱스 You YOungseok.
16 분석함수 분석 함수의 개념 분석 함수의 종류 계층적 질의문.
MS-Access의 개요 1강 MOS Access 2003 CORE 학습내용 액세스 응용 프로그램은 유용한 데이터를
다양한 예제로 쉽게 배우는 오라클 SQL 과 PL/SQL
다양한 예제로 쉽게 배우는 오라클 SQL 과 PL/SQL
06 SQL 함수 SQL 함수의 개념 문자 함수 숫자 함수 날짜 함수 데이터 타입의 변환 일반 함수.
데이터 베이스 설계 및 실습 #1 - 오라클 설치 및 SQL 기본.
JSP Programming with a Workbook
제 09 장 데이터베이스와 MySQL 학기 인터넷비즈니스과 강 환수 교수.
8장 서브 쿼리.
6장 Mysql 명령어 한빛미디어(주).
MySQL 및 Workbench 설치 데이터 베이스.
데이터베이스 및 설계 금오공과대학교 컴퓨터공학부 이 이섭.
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
기본적인 SELECT문 작성.
11 테이블 관리와 데이터 딕셔너리 데이터베이스 응용 프로젝트 개발 테이블 구조 변경 데이터 딕셔너리.
3장. 데이터베이스 구축의 전체 과정 미리 실습하기
테이블 : 데이터베이스를 구성하는 요소로 같은 성격에 정보의 집합체. 레코드 : 하나의 정보를 가지고 있는 컬럼의 집합체
5장 Mysql 데이터베이스 한빛미디어(주).
6장 그룹 함수.
다양한 예제로 쉽게 배우는 오라클 SQL 과 PL/SQL
07 그룹 함수 그룹 함수의 개념 그룹 함수의 종류 데이터 그룹 생성 HAVING 절.
08 조인(JOIN) 조인의 개념 칼럼 이름의 애매모호성, 테이블 별명, 조인 조건식 조인의 종류.
09 서브쿼리(Subquery) 서브쿼리의 개념 서브쿼리의 종류 데이터베이스 실무에서 서브쿼리 사용시 주의 사항.
14 뷰(View) 뷰의 개념 뷰 관리.
3.2 SQL Server 설치 및 수행(계속) 시스템 데이터베이스 master
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
18강. 데이터 베이스 - II JDBC 살펴보기 Statement객체 살펴보기 Lecturer Kim Myoung-Ho
17강. 데이터 베이스 - I 데이터 베이스의 개요 Oracle 설치 기본적인 SQL문 익히기
MYSQL 설치 SQL언어 SQL언어의 활용 웹과 SQL언어와의 연동
ASP.NET AJAX 비동기 게시판 작성 2007 컴퓨터공학실험( I )
자료구조: CHAP 4 리스트 (3) 순천향대학교 컴퓨터공학과 하 상 호.
01 데이타베이스 개론 데이타베이스의 등장 배경 데이타베이스의 발전 과정 데이타베이스의 정의 데이타베이스의 특징
5장 Mysql 데이터베이스 한빛미디어(주).
13 인덱스 인덱스의 개념 인덱스의 구조 인덱스의 효율적인 사용 방법 인덱스의 종류 및 생성 방법 인덱스 실행 경로 확인
You YoungSEok Oracle 설치 You YoungSEok
환경 설정 예제 데이터베이스 생성 - 그림 3.34의 SQL Server 관리 스튜디오 창의 왼쪽 영역의 데이터베
인터넷응용프로그래밍 JavaScript(Intro).
JDBC Lecture 004 By MINIO.
3장. SQL Server 2008 전체 운영 실습 및 DB와 프로그램의 연동
2장. 데이터베이스 관리 시스템 데이터베이스 관리 시스템의 등장 배경 데이터베이스 관리 시스템의 정의
15장 컬렉션 프레임워크 Section 1 컬렉션 프레임워크의 개요 Section 2 리스트 Section 3 셋
테이블 만들기 실습 목표 입력할 tableDB <실습1> SSMS에서 테이블 생성
기본적인 SELECT문 작성.
CHAP 21. 전화, SMS, 주소록.
데이터 동적 할당 Collection class.
10 데이터 조작어 데이터 조작어 데이터 입력 데이터 수정 데이터 삭제 MERGE 트랜잭션 관리 시퀀스.
10 데이터 조작어 데이터 조작어 데이터 입력 데이터 수정 데이터 삭제 MERGE 트랜잭션 관리 시퀀스.
4장. 데이터 표현 방식의 이해. 4장. 데이터 표현 방식의 이해 4-1 컴퓨터의 데이터 표현 진법에 대한 이해 n 진수 표현 방식 : n개의 문자를 이용해서 데이터를 표현 그림 4-1.
AT MEGA 128 기초와 응용 I 기본적인 구조.
오라클 11g 보안.
14 뷰(View) 뷰의 개념 뷰 관리.
제 23 장 오라클에서 보안 기능.
Chapter 10 데이터 검색1.
멀티미디어시스템 제 5 장. 멀티미디어 데이터베이스 개념 IT응용시스템공학과 김 형 진 교수.
14 뷰(View) 뷰의 개념 뷰 관리.
 6장. SQL 쿼리.
버스와 메모리 전송 버스 시스템 레지스터와 레지스터들 사이의 정보 전송을 위한 경로
fastestslowest 실제 질의문에서 사용 타입 추천 인덱스 SELECT list Default
6 객체.
Ⅰ. 데이터베이스 정의 Ⅱ. MS SQL 서버 Ⅲ. 데이터베이스 인터페이스
Presentation transcript:

13 인덱스 인덱스의 개념 인덱스의 구조 인덱스의 효율적인 사용 방법 인덱스의 종류 및 생성 방법 인덱스 실행 경로 확인 13 인덱스 인덱스의 개념 인덱스의 구조 인덱스의 효율적인 사용 방법 인덱스의 종류 및 생성 방법 인덱스 실행 경로 확인 인덱스 관리

인덱스의 개념 인덱스란? 인덱스의 종류 인덱스는 SQL 명령문의 처리 속도를 향상시키기 위해 칼럼에 대해 생성하는 객체 인덱스는 포인트를 이용하여 테이블에 저장된 데이터를 랜덤 액세스하기 위한 목적으로 사용 인덱스의 종류 고유 인덱스 비고유 인덱스 단일 인덱스 결합 인덱스 DESCENDING INDEX 함수 기반 인덱스 13장. 인덱스

인덱스의 구조 인덱스의 내부 구조는 B*-트리 형식으로 구성 …… … Root Node Internal Node 전인하 이동훈 Internal Node 오유석 박동진 류민정 김진경 Leaf Node 김영균 김진영 박미경 이광훈 윤진욱 임유진 …… … ROWID .0001 .0004 000000A FILE# LINE# BLOCK# NAME .0005 .0003 13장. 인덱스

인덱스의 효율적인 사용 방법 인덱스가 효율적인 경우 인덱스 생성 WHERE 절이나 조인 조건절에서 자주 사용되는 칼럼 전체 데이터중에서 10~15%이내의 데이터를 검색하는 경우 두 개 이상의 칼럼이 WHERE절이나 조인 조건에서 자주 사용되는 경우 테이블에 저장된 데이터의 변경이 드문 경우 인덱스 생성 13장. 인덱스

고유 인덱스 고유 인덱스는 유일한 값을 가지는 칼럼에 대해 생성하는 인덱스로 모든 인덱스 키는 테이블의 하나의 행과 연결 ROWID .0001 000000A 컴퓨터공학과 .0005 정보미디어학부 .0003 전자공학과 .0006 메카트로닉스학부 .0002 멀티미디어학과 .0007 공과대학 .0004 기계공학과 FILE# LINE# BLOCK# DNAME 10 100 4호관 3호관 2호관 1호관 LOC 200 202 201 102 101 COL DEPTNO 부서 (DNAME) 인덱스 부서 테이블 부서 테이블의 DNAME 칼럼 인덱스 생성 SELECT deptno, name FROM department WHERE dname in (‘멀티미디어학과’, ’정보미디어학부’); 인덱스를 활용한 SQL 13장. 인덱스

고유 인덱스 생성 예 13장. 인덱스

학생 테이블의 BIRTHDATE 칼럼 인덱스 생성 비고유 인덱스 비고유 인덱스는 중복된 값을 가지는 칼럼에 대해 생성하는 인덱스로 하나의 인덱스 키는 테이블의 여러 행과 연결될 수 있다. ROWID .0001 .0005 000000A 85/11/24 …… .0009 84/12/18 .0016 81/10/13 .0013 .0012 79/04/02 .0008 79/10/12 FILE# LINE# BLOCK# BIRTHDATE … 윤진욱 10204 이광훈 10107 84/09/16 83/02/28 81/01/11 84/05/16 83/12/10 김진경 20103 조명훈 20104 ……… 류민정 10108 김영균 10103 박미경 10102 이동훈 20101 전인하 10101 NAME STUDNO 학생 (BIRTHDATE) 인덱스 학생 테이블 학생 테이블의 BIRTHDATE 칼럼 인덱스 생성 SELECT name, birthdate FROM student WHERE birthdate in (’79/04/02’, ’81/10/13’); 인덱스를 활용한 SQL 13장. 인덱스

비고유 인덱스 생성 예 13장. 인덱스

학생 테이블의 DEPTNO, GRADE 칼럼으로 단일 인덱스, 결합 인덱스 단일 인덱스 단일 인덱스는 하나의 칼럼으로만 구성된 인덱스이다. 결합 인덱스 결합 인덱스는 두 개 이상의 칼럼을 결합하여 생성하는 인덱스이다. ROWID … 201 101 DEPTNO .0001 .0005 000000A 1 …… .0002 .0013 4 .0007 2 .0011 .0003 FILE# LINE# BLOCK# GRADE 박동진 20102 3 이광훈 10107 김진경 20103 조명훈 20104 ……… 류민정 10108 김영균 10103 박미경 10102 이동훈 20101 전인하 10101 NAME STUDNO 학생 (DEPTNO, GRADE) 인덱스 학생 테이블 학생 테이블의 DEPTNO, GRADE 칼럼으로 결합 인덱스 생성 SELECT studno, name FROM student WHERE deptno = 101 AND grade = 4; 인덱스를 활용한 SQL 13장. 인덱스

결합 인덱스 생성 예 13장. 인덱스

DESCENDING INDEX DESCENDING INDEX 13장. 인덱스

함수 기반 인덱스 함수 기반 인덱스 함수 기반 인덱스는 오라클 8i 버전부터 지원하는 새로운 형태의 인덱스로 칼럼에 대한 연산이나 함수의 계산 결과를 인덱스로 생성 가능 함수 기반 인덱스는 INSERT, UPDATE시에는 새로운 값을 인덱스에 추가 13장. 인덱스

인덱스 실행 경로 확인 실행 경로 SQL 명령문 실행시 SQL 명령문이 내부적으로 처리되는 경로 검색 결과만 출력하므로 실행 경로가 인덱스를 이용하여 랜덤 액세스를 했는지 아니면 전체 테이블을 검색을 했는지 프로그래머가 확인하기 어려움 13장. 인덱스

인덱스 실행 경로 확인 1 13장. 인덱스

인덱스 실행 경로 확인 2 13장. 인덱스

인덱스 실행 경로 확인 3 13장. 인덱스

인덱스 실행 경로 확인 4 13장. 인덱스

인덱스 정보 조회 USER_INDEXES 인덱스 이름과 유일성 여부 등을 확인 13장. 인덱스

인덱스 정보 조회 USER_IND_COLUMNS 인덱스 이름, 인덱스가 생성된 테이블 이름과 칼럼 이름 등을 확인 13장. 인덱스

인덱스 삭제 인덱스 삭제 DROP INDEX문 사용 13장. 인덱스

인덱스 재구성 인덱스 재구성 인덱스 재구성은 인덱스를 정의한 테이블의 칼럽 값에 대해 변경 작업이 자주 발생하여, 불필요하게 생성된 인덱스 내부 노드를 정리하는 작업 13장. 인덱스