DBMS의 인덱싱: 예가 포함된 인덱스 유형이란 무엇입니까?

인덱싱이란 무엇입니까?

색인 데이터베이스 파일에서 레코드를 빠르게 검색할 수 있는 데이터 구조 기술입니다. 인덱스는 두 개의 열만 포함하는 작은 테이블입니다. 첫 번째 열은 테이블의 기본 키 또는 후보 키의 복사본으로 구성됩니다. 두 번째 열에는 다음 세트가 포함됩니다. 포인터 특정 키 값이 저장된 디스크 블록의 주소를 보유하기 위한 것입니다.

인덱스 -

  • 검색 키를 입력으로 사용합니다.
  • 일치하는 레코드 모음을 효율적으로 반환합니다.

DBMS의 인덱싱 유형

DBMS의 인덱싱 유형
데이터베이스의 인덱스 유형

데이터베이스의 인덱싱은 인덱싱 속성을 기반으로 정의됩니다. 인덱싱 방법의 두 가지 주요 유형은 다음과 같습니다.

  • 기본 인덱싱
  • 보조 인덱싱

DBMS의 기본 인덱스

기본 인덱스는 두 개의 필드로 구성된 고정 길이 크기의 정렬된 파일입니다. 첫 번째 필드는 기본 키와 동일하고 두 번째 필드는 해당 특정 데이터 블록을 가리킵니다. 기본 인덱스에서는 인덱스 테이블의 항목 간에 항상 일대일 관계가 있습니다.

DBMS의 기본 인덱싱도 두 가지 유형으로 더 나뉩니다.

  • 고밀도 색인
  • 희소 색인

고밀도 색인

조밀한 인덱스에서는 데이터베이스에 있는 모든 검색 키에 대한 레코드가 생성됩니다. 이렇게 하면 검색 속도가 빨라지지만 색인 레코드를 저장하려면 더 많은 공간이 필요합니다. 이 Indexing에서 메소드 레코드는 검색 키 값을 포함하며 디스크의 실제 레코드를 가리킵니다.

고밀도 색인

희소 색인

파일의 일부 값에 대해서만 나타나는 색인 레코드입니다. Sparse Index는 밀도가 높은 인덱싱 문제를 해결하는 데 도움이 됩니다. DBMS. 이 인덱싱 기법에서는 일련의 인덱스 열에 동일한 데이터 블록 주소가 저장되어 있으며, 데이터를 검색해야 할 경우 블록 주소를 가져옵니다.

그러나 희소 인덱스는 일부 검색 키 값에 대해서만 인덱스 레코드를 저장합니다. 공간이 덜 필요하고 삽입 및 삭제에 대한 유지 관리 오버헤드가 적지만 레코드를 찾는 데 밀집된 인덱스에 비해 속도가 느립니다.

아래는 데이터베이스 인덱스입니다. Sparse Index의 예

희소 색인

DBMS의 보조 인덱스

DBMS의 2차 인덱스는 각 레코드에 대해 고유한 값을 갖는 필드로 생성될 수 있으며, 후보 키여야 합니다. 비클러스터링 인덱스라고도 합니다.

이 2단계 데이터베이스 인덱싱 기술은 첫 번째 레벨의 매핑 크기를 줄이는 데 사용됩니다. 첫 번째 레벨의 경우, 이로 인해 큰 범위의 숫자가 선택되고 매핑 크기는 항상 작게 유지됩니다.

보조 인덱스 예

데이터베이스 인덱스 예제를 통해 보조 인덱싱을 이해해 보겠습니다.

은행 계좌 데이터베이스에서는 acc_no에 의해 데이터가 순차적으로 저장됩니다. ABC 은행의 특정 지점에 있는 모든 계좌를 찾고 싶을 수도 있습니다.

여기에서는 모든 검색 키에 대해 DBMS에 보조 인덱스를 가질 수 있습니다. 인덱스 레코드는 특정 검색 키 값을 가진 모든 레코드에 대한 포인터를 포함하는 버킷에 대한 레코드 지점입니다.

보조 인덱스 예

ClusterDBMS에 인덱스를 넣는 중

클러스터형 인덱스에서 레코드 자체는 포인터가 아닌 인덱스에 저장됩니다. 때때로 인덱스는 각 레코드에 대해 고유하지 않을 수 있는 비기본 키 열에 생성됩니다. 이러한 상황에서 두 개 이상의 열을 그룹화하여 고유한 값을 가져오고 클러스터형 인덱스라고 하는 인덱스를 만들 수 있습니다. 또한 이를 통해 레코드를 더 빨리 식별하는 데 도움이 됩니다.

예:

회사가 다양한 부서에서 많은 직원을 채용했다고 가정해 보겠습니다. 이 경우 DBMS에서 클러스터링 인덱싱은 같은 부서에 속한 모든 직원에 대해 생성되어야 합니다.

단일 클러스터로 간주되고 인덱스 포인트는 클러스터 전체를 가리킵니다. 여기서 Department _no는 고유하지 않은 키입니다.

다단계 색인이란 무엇입니까?

다단계 인덱싱 데이터베이스 기본 인덱스가 메모리에 맞지 않을 때 생성됩니다. 이러한 유형의 인덱싱 방법에서는 디스크 액세스 횟수를 줄여 모든 레코드를 단축하고 디스크에 순차 파일로 보관하고 해당 파일에 희소 기반을 만들 수 있습니다.

다단계 색인

B- 트리 인덱스

B-트리 인덱스는 DBMS에서 트리 기반 인덱싱을 위해 널리 사용되는 데이터 구조입니다. 균형 잡힌 DBMS 기술의 트리 기반 인덱싱의 다단계 형식입니다. 이진 검색 트리. B 트리의 모든 리프 노드는 실제 데이터 포인터를 나타냅니다.

또한 모든 리프 노드는 링크 목록으로 상호 연결되어 B 트리가 무작위 및 순차 액세스를 모두 지원할 수 있습니다.

B- 트리 인덱스

  • 리드 노드에는 2~4개의 값이 있어야 합니다.
  • 루트에서 리프까지의 모든 경로는 대부분 동일한 길이에 있습니다.
  • 루트 노드를 제외한 리프가 아닌 노드에는 3~5개의 하위 노드가 있습니다.
  • 루트나 리프가 아닌 모든 노드는 n/2]에서 n 사이의 자식을 갖습니다.

인덱싱의 장점

인덱싱의 중요한 장점/이점은 다음과 같습니다.

  • 인덱스 구조에서 데이터베이스의 행에 액세스할 필요가 없으므로 데이터를 검색하는 데 필요한 총 I/O 작업 수를 줄이는 데 도움이 됩니다.
  • 사용자에게 더 빠른 데이터 검색 및 검색을 제공합니다.
  • 인덱싱은 또한 인덱스에 ROWID를 저장할 필요가 없으므로 테이블의 행에 연결할 필요가 없으므로 테이블 공간을 줄이는 데 도움이 됩니다. 따라서 테이블스페이스를 줄일 수 있습니다.
  • 기본 키 값으로 분류되므로 리드 노드의 데이터를 정렬할 수 없습니다.

인덱싱의 단점

인덱싱의 중요한 단점/단점은 다음과 같습니다.

  • 인덱싱 데이터베이스 관리 시스템을 수행하려면 테이블에 고유한 값을 가진 기본 키가 필요합니다.
  • 인덱싱된 데이터에 대해서는 데이터베이스에서 다른 인덱스를 수행할 수 없습니다.
  • 인덱스 구성 테이블을 분할할 수 없습니다.
  • SQL 인덱싱 INSERT, DELETE 및 UPDATE 쿼리의 성능이 저하됩니다.

제품 개요

  • 인덱싱은 두 개의 열로 구성된 작은 테이블입니다.
  • 인덱싱 방법의 두 가지 주요 유형은 1) 기본 인덱싱 2) 보조 인덱싱입니다.
  • 기본 인덱스는 두 개의 필드로 구성된 고정 길이 크기의 정렬된 파일입니다.
  • Primary Indexing 역시 다시 1)Dense Index, 2)Sparse Index 두 가지로 나누어진다.
  • 조밀한 인덱스에서는 데이터베이스에 있는 모든 검색 키에 대한 레코드가 생성됩니다.
  • 희소 인덱싱 방법은 밀집 인덱싱 문제를 해결하는 데 도움이 됩니다.
  • DBMS의 보조 Index는 파일의 순차적 순서와 다른 순서를 검색 키로 지정하는 인덱싱 방법입니다.
  • Clustering index는 주문 데이터 파일로 정의됩니다.
  • 다중 레벨 인덱싱은 기본 인덱스가 메모리에 맞지 않을 때 생성됩니다.
  • 인덱싱의 가장 큰 장점은 데이터를 검색하는 데 필요한 총 I/O 작업 수를 줄이는 데 도움이 된다는 것입니다.
  • 인덱싱 데이터베이스 관리 시스템을 수행할 때 가장 큰 단점은 테이블에 고유한 값을 가진 기본 키가 필요하다는 것입니다.