Các chỉ số về cơ bản là cần thiết để thực thi hiệu quả các ràng buộc toàn vẹn và xử lý hiệu quả các truy vấn và giao dịch. Chúng được tạo trên bảng và khung nhìn. Ví dụ: các chỉ mục được sử dụng trong sách tạo điều kiện cho người dùng truy cập nhanh vào nội dung của sách, tương tự như chúng tôi có các chỉ mục trên SQL.
Biểu đồ so sánh
Cơ sở để so sánh | Chỉ số cụm | Chỉ mục không phân cụm |
---|---|---|
Căn bản | Xác định thứ tự lưu trữ của các hàng trong một bảng nói chung. | Xác định thứ tự lưu trữ của các hàng trong bảng với sự trợ giúp của cấu trúc vật lý riêng biệt. |
Số lượng chỉ mục được phép cho mỗi bảng | Chỉ có một chỉ số cụm | Nhiều chỉ số không phân cụm |
Truy cập dữ liệu | Nhanh hơn | Chậm hơn so với chỉ số cụm |
Dung lượng đĩa bổ sung | Không cần thiết | Cần thiết để lưu trữ các chỉ số riêng biệt |
Định nghĩa của chỉ số cụm
Chỉ mục Clustered về cơ bản được sử dụng để sắp xếp các hàng trong bảng. Một bảng có thể chỉ có một chỉ mục được phân cụm vì các hàng trong bảng chỉ có thể được sắp xếp theo một thứ tự, nhưng có nhiều cách để tạo một chỉ mục cụm tổng hợp . Các cột được bao gồm trong chỉ mục được nhóm và thứ tự logic hoặc được lập chỉ mục của các giá trị khóa giống như thứ tự được lưu trữ vật lý của các hàng tương ứng. Khi không có chỉ mục cụm cho dữ liệu, nó được lưu trữ trong một đống .
Việc truy cập bản ghi trong một đống rất tốn thời gian, trong đó mỗi mục trong bảng được quét để truy cập dữ liệu mong muốn. Trong quá trình quét bảng, không có cách nào để tìm hiểu xem có nhiều trận đấu có sẵn hay không. Vì vậy, phương pháp này rất không hiệu quả.
Trong khi sử dụng một chỉ mục được nhóm, việc truy cập dữ liệu nhanh hơn và có hệ thống trong đó bảng được sắp xếp theo thứ tự. Nó được định nghĩa trong trường thứ tự của bảng. Khóa tìm kiếm của nó được sử dụng chỉ định sự sắp xếp tuần tự của tệp hoặc bảng. Một chỉ mục cụm được tự động tạo khi khóa chính được xác định cho một bảng.
Định nghĩa chỉ số không phân cụm
Chỉ mục không phân cụm lưu trữ dữ liệu tại một nơi và các chỉ mục ở một nơi khác và chỉ mục sẽ có con trỏ đến vị trí lưu trữ dữ liệu. Một bảng có thể có nhiều chỉ mục không phân cụm vì chỉ mục trong chỉ mục không phân cụm được lưu trữ ở một nơi khác. Ví dụ: một cuốn sách có thể có nhiều hơn một chỉ mục, một ở đầu hiển thị nội dung của một đơn vị sách khôn ngoan và một chỉ mục khác ở cuối hiển thị chỉ mục các thuật ngữ theo thứ tự bảng chữ cái.
Nó được định nghĩa trong trường không theo thứ tự của bảng. Chỉ mục không được phân cụm có thể nâng cao hiệu suất của các truy vấn sử dụng các khóa khác với các khóa chính. Một chỉ mục không được phân cụm được tự động tạo khi một khóa duy nhất được xác định cho một bảng.
Sự khác biệt chính giữa chỉ số phân cụm và không phân cụm
- Số lượng chỉ mục được nhóm mà một bảng có thể chỉ có một. Trong khi đó một bảng có thể có nhiều chỉ mục không được nhóm.
- Một chỉ mục được phân cụm nhanh hơn chỉ mục không được phân cụm vì chỉ mục không được phân cụm phải tham chiếu lại bảng cơ sở. Ngược lại, đây không phải là trường hợp trong chỉ mục cụm.
- Trong một chỉ mục không được nhóm, chỉ mục được lưu trữ ở một vị trí riêng biệt đòi hỏi không gian lưu trữ bổ sung. Ngược lại, chỉ mục được nhóm lưu trữ dữ liệu bảng cơ sở theo cùng thứ tự vật lý như thứ tự logic của chỉ mục, do đó, nó không yêu cầu không gian lưu trữ bổ sung.
Phần kết luận
Chỉ mục được nhóm là một cách lưu trữ dữ liệu trong các hàng của bảng theo một thứ tự cụ thể. Vì vậy, khi dữ liệu mong muốn được tìm kiếm, hàng tương ứng duy nhất bị ảnh hưởng có chứa dữ liệu và được biểu diễn dưới dạng đầu ra. Mặt khác, chỉ mục không phân cụm nằm trong một cấu trúc vật lý riêng biệt tham chiếu dữ liệu cơ sở khi nó được tìm kiếm. Một cấu trúc không cụm có thể có một thứ tự sắp xếp khác nhau.