본문 바로가기

Database/Theory

#04. 인덱스(Index) & 객체지향DB(Object-Oriented DB)

인덱스(Index)

자료를 효과적으로 검색하기 위해서 사용하는 방법


인덱스파일(Index file): Data의 위치(주소)를 관리/기억. 키값,주소로 구성

*키값: 인덱스를 만들때 사용된 속성값

데이터파일(Data file): 실제 데이터를 기억하는 파일


검색순서IndexFile에서 data의 주소를 찾고 DataFile에서 IndexFile에서 찾은 주소

  의 data를 검색


인덱스구조

B-트리(BalanceTree): 자료의 구조를 균형있는 트리구조로 나타내는 방법

B+-트리: B트리의 변형으로 인덱스 세트와 순차세트로 구성

인덱스세트: 단말노드를 찾기위한 인덱스 제공

순차세트: 단말 노드로만 구성, 단말노드에 모든 키값이 나타나게하여 

    단말노드에서만 순차검색


기본인덱스기본키(Primary Key)속성으로 만든 인덱스(키값=기본키)

보조인덱스기본키가아닌 일반속성으로 만든 인덱스


인덱스 기타유형

클러스터드 인덱스(Clustered Index)

하나의 속성을 기준으로 정렬시킨후, Table을 재구성하여 인덱스 생성

테이블의 물리적 순서와 인덱스 순서가 동일하다

하나의 Table에는 하나의 인덱스만 만들수있다

재구성한 Table을 일정한 크기(Page)로 구성하고 Page단위를 DataPage

로 구성후 각 DataPage 첫번째 키값,page번호(순서번호)로 Index를 구성

넌클러스터드 인덱스(Non-Clustered Index)

Table을 재구성하지 않고 Data주소를 이용하여 Index구성후 주소값을 이용하여 검색

하나의 테이블에 여러개 index구성 가능(Table을 재구성하지 않기때문에)

Table을 일정한 page단위로 여러개의 data page생성후 data page의 정보로 Row id를 구성하여 index page를 일정한 크기로 여러개 구성후 키값과 index page번호로 RootIndex구성

*Row id: datepage번호-행번호


객체지향DB(OODB)

멀티미디어 정보를 저장/관리

객체지향DBMS(OODBMS)

OODB를 관리/운영하는 시스템

객체관계DB(ORDB)

관계DB와 OODB의 접목

객체관계DBMS(ORDBMS)

ORDB 관리/운영하는 시스템


객체(object) & 객체지향(OO)기법의 특징

객체(object)유형/무형으로 현실세계에 존재하는 개체를 추상화 한것, 개체의 

     개념과 자체적으로 처리기능을 갖는 연사자까지 표함된 하나의 단

     위시스템

속성(attribute)객체의 특성/상태를 나타낸다

메세지(message)객체에 어떤처리를 하도록 지시하는 명령

메소드(method)메세지에 따라 객체가 실행해야할 검색/삽입/삭제/변경 등과 같             

   은 구체적인 연산

클래스(class)유사한 성격과 공통적인 특성을 갖는 객체들의 모임

캡슐화(Encapsulation)하나의 객체가 문제해결을 위해 필요한 data,연산,상수

  등이 정보를 하나로 묶음으로써

다른 객체와 정보은폐가 이루어지도록 하는것

상속(계승:Inharitance)상위클래스의 특징과 정보등을 하위클래스에서 그대로 

 재사용할수있는 개념

-단일상속(Single Inharitance): 하나의 클래스로부터 상속받는것

-다중상속(Multiple Inharitance):여러개의 클래스로부터 상속받는것

다향성(Polymorphism):  동일한 객체더라도 경우에따라 다른의미의 연산으로 사

  용될수있는 개념

복합객체(Complex Object): 한 객체가 가지고 있는 속성으로 다른 객체를 이용하

기 위한것