차이점 Clustered 및 비클러스터형 인덱스

주요 차이점 Clustered 및 비클러스터형 인덱스

  • 클러스터 인덱스는 테이블의 데이터 행을 키 값을 기준으로 정렬하는 유형의 인덱스인 반면, 비클러스터형 인덱스는 한 위치에 데이터를 저장하고 다른 위치에 인덱스를 저장합니다.
  • Clustered 인덱스는 인덱스의 리프 노드에 데이터 페이지를 저장하는 반면, 비클러스터형 인덱스 방식은 인덱스의 리프 노드에 데이터 페이지를 저장하지 않습니다.
  • 클러스터 인덱스는 추가 디스크 공간이 필요하지 않지만, 비클러스터형 인덱스는 추가 디스크 공간이 필요합니다.
  • Cluster 인덱스는 데이터 접근이 빠른 반면, 비클러스터형 인덱스는 느립니다.
차이점 Clustered 및 비클러스터형 인덱스
Clustered vs 비클러스터형 인덱스

인덱스 란 무엇입니까?

인덱스는 테이블이나 뷰에서 행을 가져오는 속도를 높이는 데이터베이스의 하나 이상의 열로 구성된 키입니다. 이 키는 다음과 같은 데이터베이스에 도움이 됩니다. Oracle, SQL 서버, MySQL등을 사용하여 키 값과 관련된 행을 빠르게 찾을 수 있습니다.

두 가지 유형의 인덱스는 다음과 같습니다.

  • Cluster에드 인덱스
  • 비 -Cluster에드 인덱스

무엇이 Cluster에드 인덱스?

Cluster 인덱스는 테이블의 데이터 행을 키 값에 따라 정렬하는 인덱스 유형입니다. 데이터베이스에서는 테이블당 클러스터형 인덱스가 하나만 있습니다.

클러스터형 인덱스는 데이터가 테이블에 저장되는 순서를 정의하며, 이는 한 가지 방식으로만 정렬할 수 있습니다. 따라서 모든 테이블에 대해 클러스터형 인덱스는 하나만 있을 수 있습니다. RDBMS에서 일반적으로 기본 키를 사용하면 해당 특정 열을 기반으로 클러스터형 인덱스를 만들 수 있습니다.

비클러스터형 인덱스란 무엇인가요?

비클러스터형 인덱스는 한 위치에 데이터를 저장하고 다른 위치에 인덱스를 저장합니다. 인덱스에는 해당 데이터의 위치에 대한 포인터가 포함되어 있습니다. 단일 테이블에는 비클러스터형 인덱스가 여러 개 있을 수 있는데, 비클러스터형 인덱스의 인덱스는 다른 위치에 저장되기 때문입니다.

예를 들어, 한 권의 책에는 두 개 이상의 색인이 있을 수 있습니다. 첫 번째 색인은 책의 내용을 단원별로 표시하고, 두 번째 색인은 용어 색인을 알파벳순으로 표시합니다.
비클러스터링 인덱스는 테이블의 비순서 필드에 정의됩니다. 이 유형의 인덱싱 방법은 기본 키로 지정되지 않은 키를 사용하는 쿼리의 성능을 개선하는 데 도움이 됩니다. 비클러스터링 인덱스를 사용하면 테이블에 대한 고유 키를 추가할 수 있습니다.

특징 Cluster에드 인덱스

  • 기본 및 정렬된 데이터 저장소
  • 인덱스에 하나 이상의 열을 사용하십시오.
  • 데이터와 인덱스를 함께 저장하는 데 도움이 됩니다.
  • 분열
  • 행정부
  • Clustered 인덱스 스캔 및 인덱스 탐색
  • 키 조회

비클러스터형 인덱스의 특징

  • 키 값만 저장
  • 힙에 대한 포인터/Clustered 인덱스 행
  • 보조 데이터 액세스 허용
  • 데이터에 연결
  • OperaIndex Scan 및 Index Seek 기능
  • 테이블이나 뷰에 대해 비클러스터형 인덱스를 생성할 수 있습니다.
  • 비클러스터형 인덱스의 모든 인덱스 행은 비클러스터형 키 값과 행 로케이터를 저장합니다.

ClusterSQL의 ed vs 비클러스터형 인덱스: 주요 차이점

파라미터 Clustered 비클러스터형
사용 레코드를 정렬하고 클러스터형 인덱스를 순서에 따라 메모리에 물리적으로 저장할 수 있습니다. 비클러스터형 인덱스는 데이터 행에 대한 논리적 순서를 만드는 데 도움이 되며 물리적 데이터 파일에 대한 포인터를 사용합니다.
보관방법 인덱스의 리프 노드에 데이터 페이지를 저장할 수 있습니다. 이 인덱싱 방법은 인덱스의 리프 노드에 데이터 페이지를 저장하지 않습니다.
중량 클러스터형 인덱스의 크기가 상당히 큽니다. 비클러스터형 인덱스의 크기는 클러스터형 인덱스에 비해 작습니다.
데이터 액세스 빠른 클러스터형 인덱스에 비해 느림
추가 디스크 공간 필요하지 않음 인덱스를 별도로 저장해야 함
키 유형 기본적으로 테이블의 기본 키는 Cluster에드 인덱스. 복합 키 역할을 하는 테이블에 대한 고유 제약 조건과 함께 사용할 수 있습니다.
주요 특징 클러스터형 인덱스는 데이터 검색 성능을 향상할 수 있습니다. 조인에 사용되는 열에 생성되어야 합니다.

클러스터형 인덱스의 예

아래 예에서 SalesOrderDetailID는 클러스터형 인덱스입니다. 데이터를 검색하는 샘플 쿼리

SELECT CarrierTrackingNumber, UnitPrice
FROM SalesData
WHERE SalesOrderDetailID = 6

클러스터형 인덱스의 예

비클러스터형 인덱스의 예

아래 예에서는 다음과 같이 OrderQty 및 ProductID에 비클러스터형 인덱스가 생성됩니다.

CREATE INDEX myIndex ON
SalesData (ProductID, OrderQty)

비클러스터형 인덱스의 예

다음 쿼리는 클러스터형 인덱스보다 더 빨리 검색됩니다.

SELECT Product ID, OrderQty
FROM SalesData
WHERE ProductID = 714

비클러스터형 인덱스의 예

의 장점 Cluster에드 인덱스

클러스터형 인덱스의 장단점은 다음과 같습니다.

  • Clustered 인덱스는 최대, 최소, 개수 유형 쿼리를 사용하여 범위 또는 그룹화에 이상적인 옵션입니다.
  • 이 유형의 인덱스에서는 검색이 데이터의 특정 지점으로 바로 이동하여 해당 지점부터 순차적으로 계속 읽을 수 있습니다.
  • Clustered 인덱스 방법은 위치 메커니즘을 사용하여 범위 시작 부분에서 인덱스 항목을 찾습니다.
  • 검색 키 값의 범위를 요청할 때 범위 검색을 수행하는 효과적인 방법입니다.
  • 페이지 전송을 최소화하고 캐시 적중을 최대화하는 데 도움이 됩니다.

비클러스터형 인덱스의 장점

비클러스터형 인덱스를 사용하는 장점은 다음과 같습니다.

  • 비클러스터링 인덱스는 데이터베이스 테이블에서 빠르게 데이터를 검색하는 데 도움이 됩니다.
  • 클러스터형 인덱스와 관련된 오버헤드 비용을 방지하는 데 도움이 됩니다.
  • 테이블에는 여러 개의 비클러스터형 인덱스가 있을 수 있습니다. RDBMS. 따라서 하나 이상의 인덱스를 생성하는 데 사용할 수 있습니다.

단점 Cluster에드 인덱스

클러스터형 인덱스를 사용하는 데에는 다음과 같은 단점이 있습니다.

  • 비순차적 순서로 많은 삽입
  • 클러스터형 인덱스는 데이터 페이지와 인덱스 페이지를 포함하여 많은 지속적인 페이지 분할을 생성합니다.
  • 다음에 대한 추가 작업 SQL 삽입, 업데이트, 삭제에 사용됩니다.
  • 클러스터형 인덱스의 필드가 변경되면 클러스터형 인덱스에서 레코드를 업데이트하는 데 시간이 더 오래 걸립니다.
  • 리프 노드에는 대부분 클러스터형 인덱스의 데이터 페이지가 포함되어 있습니다.

비클러스터형 인덱스의 단점

비클러스터형 인덱스를 사용하는 데에는 다음과 같은 단점이 있습니다.

  • 비클러스터형 인덱스는 논리적 순서로 데이터를 저장하는 데 도움이 되지만, 데이터 행을 물리적으로 정렬할 수는 없습니다.
  • 비클러스터형 인덱스의 조회 프로세스는 비용이 많이 듭니다.
  • 클러스터링 키가 업데이트될 때마다 클러스터링 키를 저장하고 있는 비클러스터형 인덱스에도 해당 업데이트가 필요합니다.

이 게시물을 요약하면 다음과 같습니다.