DB Index

전산/Database / / 2021. 2. 6. 18:09

인덱스 : 테이블의 동작 속도를 높여주는 자료 구조

-> 데이터의 위치를 빠르게 찾아주는 역할

- 데이터베이스 메모리의 일정 공간을 사용해 저장

- 데이터를 조회할 때 소모되는 메모리를 효율적으로 사용

- 일반적으로 SELECT 구문을 통해 데이터 조회 요청

- DB 서버 프로세스는 메모리 먼저 확인

- 메모리에는 자주 사용되는 테이블이 캐싱 저장

- 원하는 데이터가 메모리에 없는경우 데이터 파일을 복사해 온 다음 리턴

   -> 메모리에 데이터가 있어 조회할 경우 빠른 쿼리 수행속도 조회

   -> 원하는 데이터가 메모리에 없으면 모든 블록 테이블 조회

- 테이블 풀 스캔을 막기위해 데이터의 주소록 인덱스를 만들어 관리

- 원하는 데이터 블록 주소 ( ROWID ) 를 찾는 개념

- 대게 B-Tree, B+Tree 구조

  - B-Tree 인덱스 : 실시간 처리 시스템

   - 데이터 값 종류가 많고 동일한 데이터가 적은 경우 사용

 

인덱스 구조

- 테이블 전체 스캔 -> 정렬 -> 블록 기록

- 인덱스가 생성되면 where 절에 해당 컬럼의 인덱스가 생성되어 있으면 먼저 해당 데이터가 잇는 ROWID부터 검색

   - ROWID 구성 : 데이터 오브젝트 번호/파일번호/BLOCK 번호/ ROW 번호의 나열

 

반응형

'전산 > Database' 카테고리의 다른 글

mongoDB 설치  (0) 2021.02.18
ORM  (0) 2021.02.06
Redis  (0) 2021.02.06
Redis-cli 명령어  (0) 2021.02.06
MongoDB 명령어  (0) 2021.02.02
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기