2011-11-29 38 views
5

Tôi đang cố gắng biên soạn một danh sách các chỉ mục cơ sở dữ liệu không thuộc hệ thống cụ thể. Tôi đã xem xét Oracle, DB2, MySQL, Postgres và Sybase, và hầu như tất cả các tài nguyên đều có một danh sách khác nhau. Cho đến nay tôi đã thấy:Các loại chỉ mục cơ sở dữ liệu khác nhau?

clustered, multi-dimensional clustered, unclustered, unique, 
non-unique, b-tree, hash, GiST, GIN, full-text, bitmap, 
partitioned, function-based. 

Có vẻ như các hệ thống khác nhau có tên khác nhau cho cùng một loại chỉ mục.

Có các loại chỉ mục chuẩn trên tất cả các hệ thống không?

Trả lời

2

Bạn nên sói :-) khó - Wiki đưa ra một mô tả tốt

http://en.wikipedia.org/wiki/Database_index

+0

tôi thấy bài viết wiki, nhưng họ có hai khác nhau danh sách 'loại': non-clustered, cụm, cụm (oracle) và bitmap, dày đặc, thưa thớt, đảo ngược Điều này có nghĩa rằng có là các bitmap nhóm, các bitmap chưa được xác định, v.v. cho các loại khác? – Nathron

2

Nhiều khái niệm trong số này là trực giao. Chỉ số nhóm có nghĩa là các hàng được sắp xếp trong bảng theo thứ tự giống như chúng xuất hiện trong chỉ mục. Độc lập, chỉ số đó có thể được thực hiện bằng cách sử dụng cây B, cây B +, băm, không gian, v.v. Và sau đó nó có thể phân vùng bảng hay không. Một khía cạnh có thể hạn chế nhưng không nhất thiết ngụ ý một khía cạnh khác.

+0

Trong dự án gần đây nhất của tôi, tôi đã sử dụng vài biến thể chỉ mục sau: clustered (các chỉ mục khóa chính trong MySQL theo định nghĩa clustered), unclustered (khóa ngoài), duy nhất, không duy nhất, B-Tree và không gian. –

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