2. Hiểu về mô hình dữ liệu mức khái niệm
Ôn lại kiến thức ERD
Xây dựng ERD
Xác định thực thể
Xác định bản số
Xác định thuộc tính
Hệ thống bài cũ
Thiết kế CSDL 2
3. Ôn lại kiến thức về quan hệ và chuẩn hóa
Thiết kế CSDL mức logic
Thiết kế CSDL mức vật lý
Mục tiêu bài học
Thiết kế CSDL 3
6. Thiết kế CSDL
mức logic
Thiết kế CSDL
mức vật lý
Thiết kế CSDL
Thiết kế CSDL 6
7. Thiết kế logic
Dựa trên mô hình dữ liệu mức khái niệm
Gồm 4 bước
Bước 1. Phát triển mô hình dữ liệu mức logic cho mỗi giao
diện sử dụng quy tắc chuyển hóa
Bước 2. Kết hợp các mô hình dữ liệu mức logic xây dựng cho
mỗi giao diện thành một mô hình dữ liệu mức logic hợp nhất
Bước 3. Chuyển ERD thành mô hình dữ liệu mức logic sử
dụng quy tắc chuyển hóa
Bước 4. So sánh mô hình dữ liệu mức logic hợp nhất với mô
hình dữ liệu được chuyển từ ERD để tạo nên mô hình dữ liệu
mức logic cuối cùng
Thiết kế CSDL
Thiết kế CSDL 7
8. Thiết kế vật lý
Dựa trên kết quả mô hình dữ liệu mức logic
Các công việc chính
Chọn định dạng lưu trữ cho mỗi thuộc tính trong mô hình
CSDL mức logic
Nhóm các thuộc tính từ mô hình CSDL mức logic thành bản
ghi vật lý
Sắp xếp các bản ghi liên quan đến nhau trên bộ nhớ thứ cấp
để các bản ghi có thể lưu trữ, truy cập và cập nhật nhanh
chóng
Chọn phương tiện và cấu trúc lưu trữ dữ liệu để truy cập
hiệu quả
Thiết kế CSDL
Thiết kế CSDL 8
10. Dữ liệu được trình bày như một tập các bảng có liên
quan với nhau hay còn gọi là một quan hệ
Mỗi quan hệ là một bảng 2 chiều gồm các hàng và cột
Một quan hệ có cấu trúc cao khi
Lượng dữ liệu dư thừa ở mức tối thiểu và cho phép người
dùng nhập, chỉnh sửa và xóa các bản ghi mà không gây ra
lỗi hay làm mất tính nhất quán
Mô hình dữ liệu quan hệ
Thiết kế CSDL 10
12. Chuẩn hóa (normalization) là quy trình biến đổi những
cấu trúc dữ liệu phức tạp thành những cấu trúc dữ liệu
ổn định và đơn giản
Kết quả của quá trình chuẩn hóa là quan hệ có cấu trúc
cao
Chuẩn hóa
Thiết kế CSDL 12
15. Dạng chuẩn 1
Toàn bộ các thuộc tính của quan hệ đều có giá trị đơn
Dạng chuẩn 2
Mỗi thuộc tính không phải là khóa chính sẽ được xác định
bởi khóa chính (được gọi là phụ thuộc hàm đầy đủ – full
functional dependency).
Dạng chuẩn 3
Các thuộc tính không phải khóa chính không phụ thuộc lẫn
nhau (được gọi là không chứa phụ thuộc bắc cầu – no
transitive dependencies).
Kết quả sau dạng chuẩn 3
Tất cả các thuộc tính không khóa đều phụ thuộc hoàn
toàn vào khóa chính
Các dạng chuẩn hóa
Thiết kế CSDL 15
16. Quá trình chuẩn hóa được tiến hành dựa trên việc phân
tích các phụ thuộc hàm
Phụ thuộc hàm (functional dependency) là một dạng
quan hệ đặc trưng giữa hai thuộc tính. Với một quan hệ
cho trước, thuộc tính B được gọi là phụ thuộc hàm trên
thuộc tính A nếu như, với mọi giá trị hợp lệ của A, giá trị
đó của A xác định duy nhất giá trị của B
Sự phụ thuộc hàm của B vào A được kí hiệu là: AB
Phụ thuộc hàm
Thiết kế CSDL 16
17. Một quan hệ đạt dạng chuẩn 2 khi thỏa mãn một trong
các điều kiện sau:
DK1: Khóa chính chỉ gồm một thuộc tính duy nhất
DK2: Trong quan hệ không có thuộc tính không phải khóa
chính nào tồn tại
DK3: Mọi thuộc tính không phải khóa chính đều phụ thuộc
hàm đầy đủ vào các thuộc tính khóa chính
Chuyển quan hệ thành dạng chuẩn 2
Phân rã quan hệ thành các quan hệ mới sử dụng thuộc
tính có thể xác định các thuộc tính khác
Thuộc tính xác định trở thành khóa chính của quan hệ mới
Chuyển và dạng chuẩn 2
Thiết kế CSDL 17
18. Quan hệ EMPLOYEE2
EMPLOYEE2(Emp_ID, Name, Dept, Salary, Course,
Date_Completed)
Phụ thuộc hàm trong quan hệ này là
Emp_IDName, Dept, Salary
Emp_ID, CourseDate_Completed
Chuyển về dạng chuẩn 2
EMPLOYEE1(Emp_ID, Name, Dept, Salary)
EMP COURSE(Emp_ID, Course, Date_Completed)
Ví dụ chuyển về dạng chuẩn 2
Thiết kế CSDL 18
19. Một quan hệ là ở dạng chuẩn ba (third normal form -
3NF) nếu như nó ở dạng chuẩn hai và không có phụ
thuộc hàm nào giữa bất kỳ hai (hay nhiều) thuộc tính
không phải khóa chính
Chuyển về dạng chuẩn 3
Phân ra quan hệ đó thành 2 quan hệ sử dụng thuộc tính
quyết định
Chuyển về dạng chuẩn 3
Thiết kế CSDL 19
20. Quan hệ
SALES (Customer_ID, Customer_Name, Salesperson,
Region) Thỏa mãn chuẩn 2
Phụ thuộc hàm
Customer_IDCustomer_Name, Salesperson, Region
SalespersonRegion
Dạng chuẩn 3
SALES1(Customer_ID, Customer_Name, Salesperson)
SPERSON(Salesperson, Region)
Ví dụ chuyển về dạng chuẩn 3
Thiết kế CSDL 20
28. Biểu diễn thực thể
Biểu diễn liên kết
Chuẩn hóa quan hệ
Hợp nhất quan hệ
Các bước thực hiện
Thiết kế CSDL 28
29. Thực thể Quan hệ
Định danh Khóa chính
Khóa chính thỏa mãn
Giá trị của khóa xác định duy nhất mọi hàng trong quan hệ
Khóa không có dư thừa
B1. Biểu diễn thực thể
Thiết kế CSDL 29
30. Liên kết 2 ngôi 1-N
Thêm thuộc tính khóa chính của thực thể ở bên một của
liên kết vào thành khóa ngoại trong quan hệ của thực thể
bên nhiều của liên kết
B2. Biểu diễn liên kết
Thiết kế CSDL 30
31. Liên kết 1 ngôi hay 2 ngôi 1:1
Thêm khóa chính của A thành khóa ngoại của B
Thêm khóa chính của B thành khóa ngoại của A
Cả hai cách trên
Liên kết 2 ngôi hoặc cao hơn bậc N:M
Tạo một quan hệ khác, khóa chính của quan hệ này là
khóa phức được tạo nên từ các khóa chính của cả hai
thực thể trong liên kết
B2. Biểu diễn liên kết
Thiết kế CSDL 31
33. Dựa theo các quy tắc chuyển hóa
B3. Chuẩn hóa quan hệ
Thiết kế CSDL 33
34. Mục đích
Loại bỏ quan hệ dư thừa
Ví dụ về hợp nhất quan hệ:
Quan hệ trong khung nhìn thứ nhất
EMPLOYEE1(Emp_ID, Name, Address, Phone)
Quan hệ trong khung nhìn thứ hai
EMPLOYEE2(Emp_ID, Name, Address, Jobcode, Number_of_Years)
Hợp nhất
EMPLOYEE(Emp_ID, Name, Address, Phone, Jobcode,
Number_of_Years)
Vấn đề nẩy sinh
Đồng nghĩa, đồng âm
Phụ thuộc giữa hai thuộc tính không khóa
Bước 4. Hợp nhất quan hệ
Thiết kế CSDL 34
36. Để thiết kế file và CSDL mức vật lý cần có những thông
tin sau:
Các quan hệ đã được chuẩn hóa, bao gồm cả các ước tính
về lượng dữ liệu của chúng
Định nghĩa của từng thuộc tính
Mô tả khi nào và trong trường hợp nào thì dữ liệu được
nhập, truy xuất, xóa và cập nhật (bao gồm cả tần suất
thực hiện)
Thời gian đáp ứng và mức độ toàn vẹn dữ liệu mong
muốn
Bản mô tả các công nghệ được sử dụng để triển khai các
file và cơ sở dữ liệu
Thông tin yêu cầu
Thiết kế CSDL 36
37. Mỗi thuộc tính trong quan hệ sẽ được biểu diễn bởi một
hoặc nhiều trường
Chọn kiểu DL nhằm thỏa mãn
Tối thiểu không gian lưu trữ
Trình bày tất cả các giá trị của trường
Tăng tính toàn vẹn cho dữ liệu
Hỗ trợ tất cả các thao tác của DL
Thiết kế trường
Thiết kế CSDL 37
38. Giá trị mặc định
Mặt nạ nhập liệu
Kiểm soát khoảng giá trị
Toàn vẹn tham chiếu
Kiểm soát giá trị null
Kiểm soát tính toàn vẹn DL
Thiết kế CSDL 38
39. Bảng vật lý
Là một tập hợp các hàng và cột chỉ ra chính xác các
trường trong mỗi hàng của bảng
Mục tiêu thiết kế
Sử dụng bộ nhớ thứ cấp hiệu quả
Ổ đĩa được chia thành các đơn vị mà được đọc bởi chỉ một
thao tác
Việc đọc hiệu quả nhất khi độ lớn của file vật lý gần bằng
đơn vị lưu trữ
Xử lý dữ liệu hiệu quả
Thực hiện phi chuẩn hóa
Thiết kế bảng vật lý
Thiết kế CSDL 39
41. Thiết kế CSDL gồm 2 bước: thiết kế CSDL logic và thiết
kế CSDL vật lý
Thiết kế CSDL gồm 4 bước:
Xây dựng quan hệ từ GUI
Hợp nhất các quan hệ thành CSDL mức logic
Chuyển ERD thành quan hệ CSDL mức logic
So sánh 2 CSDL mức logic và xây dựng CSDL mức logic
cuối cùng
Thiết kế CSDL vật lý yêu cầu các thông tin:
CSDL chuẩn hóa
Thao tác dữ liệu
Yêu cầu về khả năng đáp ứng
…
Tổng kết bài học
Thiết kế CSDL 41
42. Thiết kế biểu mẫu và báo cáo
Thiết kế giao diện và hội thoại
Thiết kế menu
Workshop 5
Phân tích hệ thống về dữ liệu 42