Chương 12:
Chương 12:
Thiết kế vật lý database
Thiết kế vật lý database
1
Nội dung
Nội dung
Quá trình thiết kế database vật lý
Chọn định dạng lưu trữ cho các thuộc tính
từ mô hinh dữ liệu luận lý
Mô tả ba kiểu tổ chức tập tin
Chỉ mục: mục đích và các loại chỉ mục
Chuyển đổi mô hình dữ liệu quan hệ thành
cấu trúc database hiệu quả
2
Thiết kế database
Thiết kế database
Yêu cầu:
Thận trọng trong thiết kế vì những quyết định
được làm trong giai đoạn này sẽ ảnh hưởng
đến khả năng truy xuất dữ liệu, thời gian đáp
ứng, tính bảo mật, tính thân thiện với người
dùng, …
Phạm vi thiết kế:
ứng, độ bảo mật dữ liệu, sao lưu phụ hồi dữ
liệu, tính toàn vẹn dữ liệu
◦
Mô tả về công nghệ, DBMS sẽ dùng để thực thi
DB
5
Quá trình thiết kế database
Quá trình thiết kế database
1. Chọn kiểu dữ liệu cho mỗi thuộc tính có mặt
trong mô hình dữ liệu luận lý: kiểu dữ liệu ít
tốn bộ nhớ mà vẫn bảo đảm tính toàn vẹn
dữ liệu
2. Nhóm các thuộc tính từ mô hình dữ liệu luận
lý vào các bản ghi vật lý (physical record)
3. Sắp xếp các bản ghi có cấu trúc tương tự
vào bộ nhớ phụ (đĩa cứng) sao cho việc truy
xuất các bản ghi này mau chóng.
• Cần quan tâm đến việc bảo vệ và khôi phục dữ
liệu khi có lỗi
1. Chọn cấu trúc lưu trữ và kết nối các file để
việc truy xuất dữ liệu hiệu quả hơn.
2. Chuẩn bị các chiến lược để quản lý các truy
vấn sao cho các truy vấn được tối ưu khi
thực thi
6
Khối lượng dữ liệu & tần suất sử dụng
Khối lượng dữ liệu & tần suất sử dụng
(Data volume and usage frequency)
(Data volume and usage frequency)
80
70
40
Tần suất truy đạt
Khối lượng
Khối lượng dữ liệu & tần suất sử dụng
Khối lượng dữ liệu & tần suất sử dụng
(Data volume and usage frequency)
(Data volume and usage frequency)
Việc thống kê khối lượng và tần suất được
thực hiện trong giai đoạn phân tích hệ
thống bởi phân tích viên hệ thống
( system analyst)
Việc thống kê không đòi hỏi chính xác
tuỵệt đối mà chỉ dùng làm cơ sở cho bước
thiết kế tiếp theo.
9
Thiết kế trường
Thiết kế trường
(Field design)
(Field design)
Field là đơn vị nhỏ nhất của dữ liệu mà
phần mềm hệ thống hay DBMS có thể
nhận biết được.
Field tương ứng với 1 thuộc tính
(attribute) trong mô hình dữ liệu luận lý
liệu
Ví dụ: trường Finish của bảng Product chỉ
có 1 ít giá trị là Birch, Maple và Oak.
◦
Mã hoá bằng cách tạo 1 bảng tra cứu FINISH,
sao cho mỗi giá trị của trường Finish được thay
thế bằng 1 mã
giảm không gian lưu trữ cho trường Finish
Thêm không gian phụ cho bảng FINISH
Không có lợi khi Finish ít dùng hay số sản
phẩm quá lớn
Bảng mã FINISH không xuất hiện trong mô
hình nhận thức, là 1 thiết kế vật lý để cải thiện
việc xử lý dữ liệu
13
Kỹ thuật mã hoá và nén dữ
Kỹ thuật mã hoá và nén dữ
liệu
liệu
Product
Product
No
No
Description
Description
A
A
B
B
C
C
Birch
Birch
Maple
Maple
Oak
Oak
14
Bảng Product
Bảng tra cứu FINISH
Kỹ thuật mã hoá và nén dữ
Kỹ thuật mã hoá và nén dữ
liệu
liệu
Kỹ thuật nén tin ( data compression
technique) tìm các mẫu (pattern) và mã
hoá các mẫu xuất hiện thường xuyên với
số bit ít hơn
Kỹ thuật mã hoá ( encryption technique):
dùng để chuyển 1 trường sang dạng bảo
mật
Kỹ thuật nén tin hay mã hoá được dùng
Là giá trị mà 1 trường luôn thừa nhận
ngoại trừ người dùng đưa vào 1 giá trị
tường minh khác để thay thế.
◦
Giảm thời gian nhập liệu
◦
Giảm những sai sót khi nhập liệu
17
Kiểm soát miền giá trị
Kiểm soát miền giá trị
(Range control)
(Range control)
Giới hạn 1 tập các giá trị cho phép mà 1
trường có thể nhận được.
Miền giá trị có thể là 1 cận dưới và cận
trên dạng số hay là 1 tập các giá trị cụ thể
◦
Sự cố năm 2000
Nên để DBMS thực hiện việc kiểm soát
miền giá trị thay cho chương trình
18
Kiểm tra giá trị rỗng
Kiểm tra giá trị rỗng
(Null value control)
(Null value control)
Một khoá chính thường bị cấm không được
Không cho phép giá trị bị thiếu khi nhập liệu
◦
Thay trị bị thiếu bằng 1 giá trị phỏng đoán
◦ Theo dõi những giá trị bị thiếu, tổng kết thành
báo cáo để buộc người dùng có liên quan đến
phải nhanh chóng giải quyết các giá trị chưa
biết.
◦
Dùng phương pháp thử để xác định trị bị thiếu
có ảnh hưởng đến kết quả tính toán hay không?
21
Thiết kế các bản ghi vật lý
Thiết kế các bản ghi vật lý
Bản ghi vật lý ( physical record): là 1
nhóm các trường được lưu trữ trong những
vị trí bộ nhớ cạnh nhau và được truy xuất
như 1 đơn vị.
Bản ghi luận lý (logical record) dùng để
nhóm các thuộc tính được xác định bởi
cùng 1 khóa chính, thứ tự các thuộc tính
không quan trọng
Thiết kế bản ghi vật lý liên quan đến việc
chọn sắp xếp các trường vào vị trí kề cận
nhau sao cho đảm bảo 2 mục tiêu:
◦
Sử dụng hiệu quả không gian lưu trữ
◦
Blocking factor: số bản ghi vật lý trên 1
trang
24
Trường có chiều dài cố định
Trường có chiều dài cố định
Nếu các trường có chiều dài cố định, các
trường sẽ đặt liền kề nhau, việc quản lý bộ
nhớ sẽ dễ dàng hơn
Để tìm vị trí của trường thứ m trong bản
ghi thứ n của tập tin CSDL
Địa chỉ bắt đầu của file
+ (n-1) chiều dài bản ghi
+ sum(lengthi)
i=1 đến m-1
= Địa chỉ bắt đầu của trường thứ m
Lengthi : chiều dài của trường thứ i
25