Bài 6 Chỉ mục và chỉ mục đầy đủ - Pdf 19


Chương 6
Chỉ mục và chỉ mục đầy đủDatabase Design and Implementation with SQL Server 2000 / Session 6 / 2 of 32
Ôn tập
Ôn tập truy vấn nâng cao

Các truy vấn con

Mệnh đề EXISTS

Thực hiện các truy vấn

Mệnh đề DISTINCT

COMPUTE BY

SELECT INTODatabase Design and Implementation with SQL Server 2000 / Session 6 / 3 of 32
Mục tiêu

Định nghĩa chỉ mục

Tìm hiểu cách tạo chỉ mục

Định nghĩa chỉ mục Clustered và Non-Clustered với các
đặc điểm duy nhất và phức hợp.
Database Design and Implementation with SQL Server 2000 / Session 6 / 5 of 32
Các chỉ mục (tiếp theo…)

Các bảng có các chỉ mục đòi hỏi nhiều dung lượng bộ nhớ
hơn trong CSDL.

Các lệnh thao tác dữ liệu đòi hỏi nhiều thời gian xử lý
hơn, vì chúng cần cập nhật sự thay đổi tới các chỉ mục. Database Design and Implementation with SQL Server 2000 / Session 6 / 6 of 32
Hướng dẫn cách tạo lập
các chỉ mục

Tạo chỉ mục khi:

Khi cột được sử dụng để tìm kiếm thường xuyên.

Khi cột được sử dụng để sắp xếp dữ liệu.

Chỉ mục không nên tạo khi:

Khi cột dữ liệu chứa các giá trị duy nhất.

Khi bảng chỉ chứa một vài hàng.Database Design and Implementation with SQL Server 2000 / Session 6 / 7 of 32

Hệ số điền
đầy

Khi một chỉ mục được tạo lập, bảng dữ liệu được chứa
trong các trang dữ liệu theo một thứ tự đã được sắp xếp
của giá trị trong các cột chỉ mục.

Khi các bản ghi được thêm vào bảng hoặc các giá trị
trong các cột chỉ mục bị thay đổi, SQL Server có thể tổ
chức dữ liệu chứa định dạng để làm mẫu cho các bản ghi
mới và duy trì sự lưu trữ dữ liệu được sẵp xếp.

Trong khi thêm một hàng mới tới một trang dữ liệu có chỉ
số, SQL Server sẽ dịch chuyển khoảng một nửa số hàng
sang trang mới để có chỗ trống cho hàng mới thêm vào
nằm trong trang vừa chia ra.Database Design and Implementation with SQL Server 2000 / Session 6 / 10 of 32
Hệ số điền đầy
< tiếp theo…>

Trang phân chia giới hạn sự thực thi và phân chia dữ liệu
chứa trong bảng.

Hệ số điền đầy được chỉ định trong quá trình tạo lập chỉ
số, để dành riêng tỉ lệ phần trăm khoảng trống của chỉ số
trên mỗi trang để lưu trữ dữ liệu mở rộng trong tương lai.

Hệ số điền đầy xác định dữ liệu được nhập vào trong các

Một bảng có thể chỉ có một chỉ mục clustered.

Chỉ mục có thể bao gồm nhiều cột.

Ví dụ:
CREATE CLUSTERED
INDEX CLINDX_titleid ON roysched
(title_id)Database Design and Implementation with SQL Server 2000 / Session 6 / 14 of 32
Các hướng dẫn để tạo lập chỉ
mục Clustered

Chọn một cột có tỉ lệ phần trăm các giá trị duy nhất
cao. Chọn cột khoá chính là tốt nhất

Tạo lập một chỉ mục clustered trước khi chỉ mục non-
clustered được tạo lập để chỉ mục non-clustered không
bị tạo lại sau khi chỉ mục clustered được tạo.

Sử dụng tuỳ chọn FILLFACTOR khi tạo lập các chỉ
mục clustered để đảm bảo có khoảng trống thích hợp
khi có các hàng mới được chèn vào.Database Design and Implementation with SQL Server 2000 / Session 6 / 15 of 32
Các chỉ mục Non-clustered

Một chỉ mục non-clustered xác định thứ tự logic của bảng.

Thuộc tính của các chỉ số

Các chỉ mục Clustered và non-clustered có thể được tạo
lập duy nhất hoặc tổ hợp.

Các chỉ mục duy nhất không cho phép các giá trị lặp lại
trong cột chỉ số.

Các chỉ mục tổ hợp cho phép hai hoặc nhiều cột được sử
dụng trong khi tạo lập chỉ số. Database Design and Implementation with SQL Server 2000 / Session 6 / 18 of 32
Hướng dẫn việc tạo lập
các chỉ số duy nhất

Thực thể toàn vẹn có hiệu lực bởi các chỉ số duy nhất vì
một giá trị duy nhất tồn tại trong từng hàng.

Một giá trị rỗng trong một cột khoá phản ánh như một giá
trị duy nhất.

Chỉ mục duy nhất không thể tạo lập trên một cột mà chứa
dữ liệu lặp lại. Dữ liệu lặp lại phải được cập nhật hoặc xoá
trước khi chỉ mục duy nhất được tạo lập.Database Design and Implementation with SQL Server 2000 / Session 6 / 19 of 32
Hướng dẫn cho việc tạo
lập các chỉ số phức hợp

tốt nhất để thực thi các truy vấn, bao gồm các chỉ mục để
sử dụng.

Kỹ thuật tối ưu cố gắng lựa chọn phương thức truy cập
sao cho giá ước lượng thấp nhất trong các mục của trang
I/O.

Kỹ thuật tối ưu bắt buộc truy vấn tối ưu chọn một truy
vấn cụ thể.

Cú pháp:
(INDEX=index_name)

Ví dụ:
SELECT * FROM sales (INDEX =nclindx_ordnum)
WHERE ord_num = ‘P3087a’Database Design and Implementation with SQL Server 2000 / Session 6 / 22 of 32
Xoá các chỉ mục

Các chỉ mục không còn cần thiết có thể bị xoá khỏi CSDL
để giải phóng bộ nhớ bằng cách sử dụng lệnh DROP
INDEX.

Cú pháp:
DROP INDEX table_name.index_name

Ví dụ:
DROP INDEX sales.NCLINDX_ordnum


Các chỉ mục Full-text theo dõi các dấu hiệu của các từ
trong bảng.

Chúng được sử dụng để tìm kiếm các từ chứa chỉ mục và
các tuỳ chọn tìm kiếm nâng cao, giống như các nhóm từ
tìm kiếm.

Một chỉ mục full-text yêu cầu một cột chứa các giá trị duy
nhất.

Các chỉ mục Full-text phải được cập nhật khi dữ liệu trong
bảng được thêm, thay đổi, hoặc bị xoá.Database Design and Implementation with SQL Server 2000 / Session 6 / 25 of 32
Các Danh mục Full-text

Các chỉ mục full-text lưu trữ trong các danh mục full-text.

Một danh mục Full-text là một thư mục chỉ cỏ thể nhìn bởi
Window hoặc các dịch vụ tìm kiếm.

Ở chế độ mặc định, tất cả các chỉ mục full-text của CSDL
được định vị trong một danh mục full-text.

Người quản trị hệ thống có thể phân chia danh mục thành
nhiều danh mục khác nếu các chỉ mục trong danh mục
quá nhiều.


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status