1. Mô hình hóa dữ liệu
Vũ Tuyết Trinh
trinhvt-fit@mail.hut.edu.vn
Bộ môn Hệ thông thông tin
Viện Công nghệ thông tin & truyền thông
Đại học Bách Khoa Hà Nội
Một số định nghĩa
Mô hình dữ liệu
Hình thức hóa biểu diễn dữ liệu được tạo và sử dụng bởi hệ
thống
Gồm dữ liệu và các ràng buộc, liên hệ
Mô hình dữ liệu logic
Mức tổ chức dữ liệu
Mô hình dữ liệu vật lý
Mức lưu trữ dữ liệu
Chuẩn hóa
Quá trình phân tích dữ liệu để xây dựng được cấu trúc phù
hợp
Cân bằng giữa mô hình dữ liệu và mô hình nghiệp vụ 2
1
2. Mô hình dữ liệu thực thể - liên kết
Biểu diễn: bằng sơ đồ thực thể - liên kết
Các khái niệm cơ bản
Thực thể: một đối tượng trong thế giới thực, tồn tại
độc lập và phân biệt được với các đối tượng khác
Tập thực thể: gồm các thực thể có tính chất giống
nhau
Thuộc tính: một đặc tính của một tập thực thể
o Khoá:
o Liên kết: một mối liên hệ có nghĩa giữa nhiều thực
thể
o Mỗi liên kết có thể có các thuộc tính
o 1-1, 1-n, n-m, đệ quy
o Tập liên kết: một tập hợp các liên kết cùng kiểu
3
Sơ đồ thực thể liên kết
4
2
3. Quy ước
5
Thực thể và thuộc tính
Thực thể: một đối tượng
trong thế giới thực sinh_viên
Tập thực thể: gồm các thực
thể có tính chất giống nhau •sv1
•sv2
•sv3
Thuộc tính: một đặc tính của
một tập thực thể
Miền giá trị ~ tập các giá trị maSV
có thể diachi
Khoá ~ xác định sự duy tenSV
nhất của 1 thực thể nam
ngaysinh
6
3
4. Kiểu thuộc tính
Thuộc tính đơn giản (thuộc tenSV = ‘‘Trần T. Bình’’
tính nguyên tố) = ‘‘Ng. Đ. Trung’’
có kiểu dữ liệu nguyên tố
sinh_viên
Thuộc tính phức
có kiểu phức, định nghĩa
bởi các thuộc tính khác nam
tenSV
maSV
ngaysinh
diachi
so_pho quan thanh_pho
7
Kiểu thuộc tính (2)
maMH
Thuộc tính đa giá trị
tương ứng với mỗi thực tenmon
thể, có thể nhận nhiều giá mon_hoc
trị soHT
giao_vien
Thuộc tính suy diễn sinh_viên
có thể tính toán được từ
(các) thuộc tính khác
nam
tenSV
tuoi maSV
ngaysinh
diachi
8
4
5. Liên kết
Đ/n: là sự kết hợp giữa một số thực thể
Thuộc tính
maSV maMH
tenSV
tenmon
ngaysinh sinh_viên diem_thi mon_hoc
soHT
nam
diachi
ket_qua
9
Ràng buộc của kết nối
1-1: Liên kết 1 thực thể của
một tập thực thể với nhiều nhất 1 1
1 thực thể của tập thực thể lop_hoc chu_nhiem giao_vien
khác
1-n: Liên kết 1 thực thể của 1
một tập thực thể với nhiều thực m
lop_hoc gom sinh_vien
thể của tập thực thể khác
n-m: Liên kết 1 thực thể của
một tập thực thể với nhiều thực
thể của tập thực thể khác và n m
ngược lại sinh_viên dang_ky mon_hoc
đệ quy: Liên kết giữa các thực
thể cùng kiểu
mon_hoc
dieu_kien
10
5
6. Từ điển dữ liệu và siêu dữ liệu
Siêu dữ liệu
thông tin mô tả về các thành phần trong sơ đồ dữ
liệu
Lưu trữ trong từ điển dữ liệu, được chia sẻ giữa các
(nhóm) người phát triển hệ thống
Từ điển dữ liệu
Giúp cải thiện chất lượng hệ thống đang xây dựng
11
Một số lưu ý khi thiết kế sơ đồ TTLK
Tập thực thể chỉ gồm 1 thực thể
không cần biểu diễn
Tên tập thực thể nên trùng với tên đối tượng nó biểu
diễn
Nếu 1 (số) thuộc tính của tập thực thể là không quan
trọng cho ứng dụng nên loại bỏ
Tránh đặt tên trùng nhau cho các thuộc tính của các tập
thực thể khác nhau có thể đặt EntName_attrName
Nên phân chia các thuộc tính riêng rẽ. Ví dụ: Họ, đệm,
tên nếu cần thao tác đến các thuộc tính riêng rẽ này
Xác nhận, kiểm tra các ràng buộc, liên kết 12
6
7. Sơ đồ thực thể - liên kết
Sơ đồ quan hệ
Biến đổi tập các thực thể
Biến đổi các liên kết
Liên kết 1-1
Liên kết 1-n
Liên kết n-m
Các khoá của các sơ đồ quan hệ
Các sơ đồ quan hệ với khoá chung
13
Quá trình chuẩn hóa
Vấn đề đặt ra
Có cần phải tinh chỉnh thiết kế nữa hay không?
Thiết kế đã là tốt hay chưa?
Định nghĩa về các dạng chuẩn.
Mục đích:
Mỗi dạng chuẩn đảm bảo ngăn ngừa (giảm thiểu)
một số các dạng dư thừa hay dị thường dữ liệu
Các dạng chuẩn hay sử dụng
Dạng chuẩn 1 (1NF)
Dạng chuẩn 2 (2NF)
Dạng chuẩn 3 (3NF)
Dạng chuẩn Boye-Code (BCNF)
Dạng chuẩn 4 (4NF)
14
7
8. Dạng chuẩn 1
Đ/N: Một sơ đồ quan hệ R được gọi là ở dạng
chuẩn 1 nếu tất cả các miền giá trị của các
thuộc tính trong R đều chỉ chứa giá trị nguyên
tố.
Giá trị nguyên tố là giá trị mà không thể chia nhỏ ra
được nữa
15
Dạng chuẩn 2 (2NF)
Đ/N: Một sơ đồ quan hệ R được coi là ở dạng
chuẩn 2 nếu
Sơ đồ quan hệ này ở 1NF
Tất cả các thuộc tính không khóa đều phụ thuộc
hàm đầy đủ vào khóa chính
(Lưu ý, A là một thuộc tính khóa nếu A thuộc một
khóa tối thiểu nào đó của R. Ngược lại A là thuộc
tính không khóa)
16
8
9. Dạng chuẩn 3 (3NF)
Đ/N: Một sơ đồ quan hệ R được coi là ở dạng
chuẩn 3 nếu
Sơ đồ quan hệ này ở 2NF
Mọi thuộc tính không khóa đều không phụ thuộc bắc
cầu vào khóa chính
17
Dạng chuẩn Boye-Codd (BCNF)
Đ/N: Một sơ đồ quan hệ R(U) với một tập phụ
thuộc hàm F được gọi là ở dạng chuẩn Boye-
Codd (BCNF) nếu với XA F+ thì
A là thuộc tính xuất hiện trong X hoặc
X chứa một khóa của quan hệ R.
18
9