Chức năng của việc xây dựng lại các chỉ mục là gì?


8

Tôi còn trẻ trong thế giới CNTT và tôi đang học hỏi hàng ngày. Tôi mới bắt đầu làm việc với cơ sở dữ liệu SQL và tôi có rất nhiều câu hỏi cơ bản.

Một đặc biệt, chức năng của việc xây dựng lại các chỉ mục là gì? Tôi vẫn chưa tìm thấy một câu trả lời tốt thông qua Google.

Bất kỳ thông tin phản hồi được đánh giá cao.

Câu trả lời:


11

Các chỉ mục được xây dựng lại để loại bỏ sự phân mảnh. Có một nghìn lẻ một bài viết và bài đăng trên blog về bản chất của phân mảnh chỉ mục, nhưng @BrentOzar gần đây đã đăng một lời giải thích đặc biệt ngắn gọn trong Ngừng lo lắng về phân mảnh máy chủ SQL .

Hãy lùi lại một giây và giả vờ rằng cơ sở dữ liệu của bạn là một danh bạ điện thoại được sắp xếp theo họ, tên.

Khi mọi người di chuyển vào thành phố của bạn, chúng tôi phải thêm họ vào danh bạ điện thoại. Lý tưởng nhất, mỗi trang có một số khoảng trống và chúng tôi chi phối điều đó với hệ số điền. Khi SQL Server xây dựng lại các chỉ mục, nó sử dụng hệ số lấp đầy để quyết định dung lượng trống còn lại trên mỗi trang. Nếu không có đủ dung lượng trống, SQL Server phải thực hiện sắp xếp lại - nhưng chính xác nó không thể đẩy một trang hoàn toàn mới vào giữa danh bạ điện thoại. Cuốn sách đã bị ràng buộc. Chúng tôi sẽ phải giải quyết nhiều trang trống hơn vào cuối.

Vấn đề # 1 - Phân mảnh nội bộ: Chúng tôi đã có một trang mới được thêm vào mà hầu như không có nội dung nào trên đó. Vấn đề # 2 - Phân mảnh bên ngoài: Các trang danh bạ điện thoại bị lỗi.

Bài báo gần đây của Brent cung cấp một viễn cảnh cập nhật về một trong những loạt bài trước đó của ông, Phát hiện phân mảnh Index . Bài báo cũ nhấn mạnh số liệu thống kê từ các nghiên cứu cũ hơn về tác động gây tổn hại của phân mảnh, gần đây đã tạo ra một trường hợp để giảm thiểu một tỷ lệ lớn các nhược điểm hiệu suất bằng cách đảm bảo cơ sở dữ liệu của bạn được lưu trữ đầy đủ.

Ram bây giờ rẻ đến mức có thể là giải pháp rủi ro rẻ nhất, dễ nhất, thấp nhất cho cơ sở dữ liệu bị phân mảnh nặng nề. Đặc biệt nếu bản chất của thiết kế cơ sở dữ liệu là nó sẽ tự nhiên bị phân mảnh mặc dù đã có những nỗ lực bảo trì.


3

Câu trả lời đơn giản hóa - Xây dựng lại chỉ mục là một cách để loại bỏ phân mảnh chỉ mục. Nó bỏ chỉ mục đã chỉ định và tạo lại loại bỏ phân mảnh trong quy trình. Bạn có thể thấy bài viết này hữu ích

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.