2010-08-09 15 views
5

Từ this article about index organized tables,Sự khác biệt trong việc xây dựng lại một chỉ số trên bảng được tổ chức chỉ mục và một bảng thông thường là gì?

Lưu ý rằng việc xây dựng lại một số thứ trên một bảng chỉ số tổ chức liên quan đến đọc bảng cơ sở, không giống như xây dựng lại một chỉ mục trên một bảng thông thường.

Tại sao việc xây dựng lại chỉ mục trên bảng thông thường không yêu cầu đọc bảng cơ sở?

Trả lời

2

Trích từ http://download.oracle.com/docs/cd/E11882_01/server.112/e10595/indexes004.htm#ADMIN11734

Khi bạn xây dựng lại một chỉ mục, bạn sử dụng một chỉ số hiện tại là nguồn dữ liệu.

+0

Nhưng nếu chỉ mục đã lỗi thời, nó chứa thông tin sai, vậy làm thế nào nó có thể được sử dụng để tự cập nhật mà không cần tham khảo bảng? – Moeb

+0

Chỉ mục không thể lỗi thời, nó có thể có các dự đoán không chính xác/không chính xác về vị trí khối, nhưng dữ liệu thực tế nó phải chính xác, xem xét thay thế, nếu chỉ mục được phép được bật nhưng không chính xác, truy vấn động cơ không bao giờ có thể sử dụng chúng. – Andrew

1

Tôi tin rằng điều này là do chỉ mục thường được sử dụng để tự xây dựng lại và cách hàng vật lý được sử dụng trong chỉ mục.

Chỉ mục trên bảng bình thường lưu trữ hàng của vật lý, nhưng vì bảng được tổ chức chỉ mục có cấu trúc linh hoạt, chỉ số phụ chỉ có thể lưu trữ dự đoán về hàng vật lý.

Khi bạn xây dựng lại một chỉ mục trên một bảng bình thường, nó không cần phải tham khảo bảng nguồn cho rowid vật lý, nó đã có chúng trong chỉ mục. Nhưng trên một bảng được tổ chức chỉ mục, việc xây dựng lại phải xem xét lại rowid vật lý một lần nữa và do đó buộc phải quét bảng cơ sở.

+0

Nhưng nếu chỉ mục bảng bình thường là lỗi thời, nó có chứa thông tin sai, vậy làm thế nào nó có thể được sử dụng để cập nhật chính nó mà không đề cập đến bảng? – Moeb

+0

Xây dựng lại một chỉ mục là nhiều hơn về việc tái cấu trúc nó để có hiệu quả hơn, không phải là dữ liệu là "sai". Trong trường hợp của một bảng được chỉ mục tổ chức có IS dữ liệu sai trong chỉ mục, các rowid vật lý đoán mà chắc chắn sẽ trôi khỏi mục tiêu sau khi rất nhiều cập nhật cho bảng. –

+1

Tài liệu của Oracle ở đây nên đọc "xây dựng lại chỉ mục có thể sử dụng trên bảng được sắp xếp theo kiểu đống." Việc xây dựng lại một chỉ mục (hoặc phân vùng/phân vùng phụ) của một chỉ mục không sử dụng được yêu cầu đọc lại bảng cơ sở. –

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