Sự khác biệt giữa chỉ số cụm và không cụm

Chỉ số cụm so với cụm không

Các chỉ mục rất quan trọng trong bất kỳ cơ sở dữ liệu. Chúng được sử dụng để cải thiện hiệu suất truy xuất dữ liệu từ các bảng. Chúng độc lập về mặt logic và vật lý với dữ liệu trong các bảng liên quan. Do đó, các chỉ mục có thể được thả, tạo lại và xây dựng lại mà không ảnh hưởng đến dữ liệu của các bảng cơ sở. Máy chủ Oracle có thể tự động duy trì các chỉ mục của nó mà không có sự tham gia của DBA, khi các bảng liên quan được chèn, cập nhật và xóa. Có một số loại chỉ mục. Dưới đây là một số trong số họ.

1. Chỉ số cây B

2. Chỉ mục bitmap

3. Các chỉ mục dựa trên chức năng

4. Chỉ mục khóa ngược

5. Chỉ số cụm cây B

Chỉ mục không cụm là gì?

Từ các loại chỉ mục trên, sau đây là các chỉ mục không được nhóm.

• Chỉ số cây B

• Chỉ số bitmap

• Chỉ số dựa trên chức năng

• Chỉ mục khóa ngược

Các chỉ mục cây B là loại chỉ mục cơ sở dữ liệu được sử dụng rộng rãi nhất. Nếu lệnh CREATE INDEX được ban hành trên cơ sở dữ liệu, mà không chỉ định một loại, máy chủ Oracle sẽ tạo một chỉ mục b-cây. Khi chỉ mục cây b được tạo trên một cột cụ thể, máy chủ oracle lưu trữ các giá trị của cột và giữ một tham chiếu đến hàng thực tế của bảng.

Các chỉ mục bitmap được tạo khi dữ liệu cột không được chọn lọc nhiều. Điều đó có nghĩa là, dữ liệu cột có số lượng thẻ thấp. Chúng được thiết kế đặc biệt cho kho dữ liệu và không tốt khi sử dụng các chỉ mục bitmap trên các bảng giao dịch hoặc có thể cập nhật cao.

Các chỉ mục chức năng đang đến từ Oracle 8i. Ở đây, một hàm được sử dụng trong cột được lập chỉ mục. Do đó, trong một chỉ mục chức năng, dữ liệu cột không được sắp xếp theo cách thông thường. Nó sắp xếp các giá trị của các cột sau khi áp dụng hàm. Điều này rất hữu ích khi đóng WHERE của truy vấn chọn được sử dụng một hàm.

Chỉ mục khóa ngược là một loại chỉ mục rất thú vị. Giả sử một cột chứa nhiều dữ liệu chuỗi duy nhất như 'cityA', 'cityB', 'cityC', v.v. Tất cả các giá trị đều có mẫu. Bốn nhân vật đầu tiên giống nhau và các phần tiếp theo được thay đổi. Vì vậy, khi chỉ mục khóa REVERSE được tạo trên cột này, Oracle sẽ đảo ngược chuỗi và khôi phục nó trong chỉ mục b-cây.

Các loại chỉ mục được đề cập ở trên là các chỉ mục NON-CLUSTERED. Điều đó có nghĩa là, dữ liệu được lập chỉ mục được lưu trữ bên ngoài bảng và một tham chiếu được sắp xếp đến bảng được giữ. 

Chỉ số cụm là gì?

Các chỉ mục được nhóm là một loại chỉ mục đặc biệt. Nó lưu trữ dữ liệu theo cách lưu trữ dữ liệu bảng vật lý. Vì vậy, không thể có nhiều chỉ mục được nhóm cho một bảng. Một bảng chỉ có thể có một chỉ mục được nhóm.

Sự khác biệt giữa các chỉ mục được phân cụm và không phân cụm?

1. Bảng chỉ có thể có một chỉ mục được nhóm, nhưng có thể có tới 249 chỉ mục không được nhóm trong một bảng.

2. Chỉ mục cụm được tự động tạo khi khóa chính được tạo, nhưng chỉ mục không phân cụm được tạo khi khóa duy nhất được tạo.

3. Thứ tự logic của chỉ mục được phân cụm khớp với thứ tự vật lý của dữ liệu bảng, nhưng trong các chỉ mục không được phân cụm, nó không.