-
Oracle - 인덱스(index)DataBase/Oracle 2024. 9. 25. 23:20반응형
인덱스(index)
오라클에서 **인덱스(index)**는 테이블에서 데이터를 빠르게 검색하기 위한 자료 구조입니다. 테이블에서 특정 데이터를 찾을 때, 인덱스는 검색 속도를 크게 향상시킵니다. 예를 들어, 책의 목차처럼 인덱스는 특정 값을 빠르게 찾는 데 도움을 줍니다.
인덱스의 핵심 개념
- 인덱스의 역할: 데이터를 조회할 때 검색 성능을 향상시키는 역할을 합니다. 인덱스가 없으면, 테이블의 모든 행을 하나하나 확인해야 하지만, 인덱스를 사용하면 필요한 데이터만 빠르게 찾아낼 수 있습니다.
- 사용 예시:
- 대규모 테이블에서 특정 행을 검색할 때.
- WHERE 절이나 JOIN 조건에서 자주 사용되는 열에 인덱스를 적용.
- 구조: 오라클에서는 주로 B-tree 인덱스를 사용합니다. 이 구조는 균형 잡힌 트리로 데이터를 저장하여, 검색 시 최적의 성능을 제공합니다.
인덱스 사용의 장점
- 조회 성능 향상: 테이블에서 데이터를 검색할 때 필요한 시간과 자원을 크게 줄여줍니다.
- 빠른 정렬: ORDER BY 절이 포함된 쿼리의 성능도 향상될 수 있습니다.
인덱스 사용의 단점
- 쓰기 작업에 부하 증가: 인덱스는 삽입, 업데이트, 삭제 작업 시 추가적인 작업이 발생하여 성능 저하를 일으킬 수 있습니다.
- 공간 소모: 인덱스를 생성하면 추가적인 저장 공간이 필요합니다.
인덱스 생성 예시
다음은 오라클에서 인덱스를 생성하는 기본 SQL 구문입니다:
CREATE INDEX idx_customer_name ON customers (name);
이 명령어는 customers 테이블의 name 열에 대해 인덱스를 생성하여, 해당 열을 기준으로 검색할 때 성능을 향상시킵니다.
정리
오라클에서 인덱스는 데이터를 효율적으로 조회할 수 있도록 도와주지만, 잘못 사용하면 성능에 부정적인 영향을 미칠 수 있으므로, 적절한 상황에서 생성하는 것이 중요합니다.
반응형'DataBase > Oracle' 카테고리의 다른 글
Oracle - 오라클 버전 확인 (0) 2025.02.11 Oracle - View(뷰) (0) 2024.09.26 Oracle - 테이블 구조 변경하기 (0) 2024.09.19 Oracle - 제약조건 추가하기 (0) 2024.09.12 Oracle - 제약조건 (0) 2024.09.10