인덱스의 개념
1. 인덱스는 데이터를 빠르게 찾을 수 있는 수단으로서 , 테이블에 대한 조회 속도를 높여주는 자료 구조이다.
2. 인덱스는 기본 테이블의 특정 레코드 위치를 알려주는 용도로 사용한다.
3. 인덱스는 자동으로 생성되지 않기 때문에 데이터베이스 사용자가 지정해 주어야 한다.
4. 데이터베이스 사용자가 특정 컬럼을 기본키(PK)로 지정할 경우에 인덱스는 자동 생성된다.
5. 기본 테이블에서 번호를 기본키로 하는 경우, 번호에 대한 인덱스는 자동으로 생성되지만, 기본키가 아닌 전화번호나 출생시를 기준으로 하는 인덱스는 자동으로 생성되지 않는다.
6. 기본 테이블의 성명 컬럼에 인덱스가 없는 경우, 테이블의 전체 내용을 검색하게 된다.
7. 만약, 인덱스가 생성되어 있다면 테이블 일부분을 검색하여 데이터를 빠르게 찾을 수 있다.
8. 인덱스는 조건절에 '='로 비교되는 컬럼을 대상으로 인덱스를 생성하면 검색속도를 높일 수 있다.
인덱스 설계 과정
1. 접근 경로 수집
2. 분포도 조사를 통한 후보 컬럼 선정
3. 접근 경로 결정
4. 컬럼 조합 및 순서 결정
5. 적용 시험
1)접근경로수집
2)분포도 조사를 통한 후보 컬럼 선정
3)접근 경로 결정
4)컬럼 조합 및 순서 결정
5)적용시험
인덱스 설계 시 고려사항
1. 새로 추가되는 인덱스가 기존 접근 경로에 영향을 미칠 수 있음을 유의한다.
2. 너무 많은 인덱스는 오버헤드로 작용한다.
3. 인덱스는 추가적인 저장 공간이 필요하다.
4. 인덱스와 테이블 데이터의 저장 공간은 적절히 분리되어야 한다.
항해톡 발표준비로 여러 유튜브들을 쭉 돌면서 ppt준비를 위해 어느정도 내용을 정리해봤다.
언젠간 한번 인덱스에 대해 알아보아야 해야겠다 생각했는데, 이번 기회에 공부하게 되었다.