2009-07-15 31 views
5

Trong cơ sở dữ liệu như MySQL hoặc Oracle, các chỉ mục được triển khai như thế nào? Tôi nghĩ rằng các chỉ mục thông thường được lưu trữ dưới dạng cây B, nhưng không thể tìm thấy bất kỳ điều gì về chỉ mục tổng hợp mà chỉ mục trên nhiều cột. Tôi đang tìm kiếm tên của các cấu trúc dữ liệu được sử dụng để tôi có thể nghiên cứu chúng.Các chỉ mục thông thường và tổng hợp được triển khai trong RDB như thế nào?

Nói chung, tôi có thể tìm thêm thông tin về chi tiết triển khai cơ sở dữ liệu ở đâu? Tôi sẽ tham gia một khóa học về sau này ở trường đại học, nhưng tôi rất tò mò.

Trả lời

5

Chỉ mục hỗn hợp cũng sử dụng B-Trees, chúng chỉ cần nối các cột được lập chỉ mục để xác định khóa. Là một nút bên, Oracle cũng biết các loại chỉ mục khác, tức là các chỉ mục bitmap. Nhưng điều đó không phụ thuộc vào số cột được lập chỉ mục.

3

Cây B. Mỗi chỉ mục được lưu trữ dưới dạng cây B - thậm chí cả các hình tổng hợp.

Nếu bạn đang tìm cách nghiên cứu thêm về cách các chỉ mục được tổ chức, hãy nhìn vào cây B + và cây B *. Đối với SQL Server, Kalen Delaney's Inside SQL Server: The Storage Engine là một cuốn sách tuyệt vời về các loại hạt và bu lông của SQL Server, bao gồm tổ chức chỉ mục của nó. Vì vậy, bạn chắc chắn nên kiểm tra xem. Một người bình luận chỉ ra rằng Oracle có thể sử dụng các chỉ mục bitmap, được cấu trúc rất khác với các cây B, nhưng chúng hiếm khi được sử dụng cho các cơ sở dữ liệu quan hệ truyền thống - chúng được sử dụng thường xuyên hơn cho các ứng dụng kiểu OLAP và trong trường hợp bạn cần truy cập nhanh vào nhóm dữ liệu không chọn lọc.

EDIT: SQL Server, ví dụ, hiện sử dụng Columnstore Indexes. Nếu bạn thực hiện bất kỳ công việc nào với khối lượng công việc BI lớn, nó chắc chắn đáng xem xét chúng, khi chúng lưu trữ dữ liệu của bạn theo một cách hoàn toàn khác với B-Tree.

Máy chủ SQL cũng sử dụng một cơ chế khác ngay bây giờ cho memory optimized tables là tốt và là cái gì đó rất hữu ích cho truy vấn loại OLTP.

+0

Ngoại trừ những thứ không giống như chỉ mục bitmap trong Oracle. –

+0

Tôi thực sự không hiểu lý do tại sao câu trả lời này có một downvote. Tài liệu tham khảo cuốn sách được cung cấp là khá hữu ích và nó thường được thực hiện giống như câu trả lời được chấp nhận. –

Các vấn đề liên quan