Chuyên đề:

Mô Hình Dữ Liệu Quan Niệm & Mô Hình Dữ Liệu Vật Lý

(cid:153) Trình bày: Phan Tấn Tài

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

(Conceptual Data Model & Physical Data Model)

Phan Tấn Tài – Đại Học Cần Thơ

Nội Dung:

1. Mô hình dữ liệu quan niệm (CDM)

2. Chuyển CDM sang PDM

3. Minh họa CDM & PDM

4. Thảo Luận

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

MÔ HÌNH DỮ LIỆU QUAN NIỆM (Conceptual Data Model - CDM)

CDM cho phép:

(cid:131) Mô tả tổ chức dữ liệu dưới dạng sơ đồ quan hệ thực thể (ERD-Entity Relationship Diagram).

(cid:131) Kiểm tra sự hợp lệ của việc thiết kế dữ liệu. (cid:131) Sinh mô hình dữ liệu vật lý (PDM-Physical Data

Model).

(cid:131) Sinh mô hình hướng đối tượng (OOM- Object-

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

Oriented Model).

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

CÁC ĐỐI TƯỢNG CỦA CDM

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

(cid:153) Thực thể (Entity) (cid:153) Kiểu Quan hệ (Relationship type) (cid:153) Bản số (Cardinality) (cid:153) Thuộc tính (Attribute) (cid:153) Khóa ứng viên và khóa chính. (cid:153) Miền trị của thuộc tính (Domain) (cid:153) Tổng quát hóa/chuyên biệt hóa.

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

Thực thể (Entity)

(cid:153)Thực thể: là một đối tượng hay một khái niệm

trong thế giới thực được xác định bởi tổ chức và nó tồn tại độc lập.

(cid:132) Nhân_viên, khách_hàng, Hàng_hóa,… (cid:132) Môn_học, Loại_hàng, Giao_dịch,…

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

(cid:153)Ví dụ:

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

Thực thể yếu và thực thể mạnh

(cid:153)Thực thể yếu (weak entity): là thực thể tồn tại phụ

thuộc vào một thực thể khác. (cid:132) (Thực thể yếu có thể chứa thuộc tính hay không chứa thuộc tính, cũng như nó có thể có thuộc tính khóa chính hay không có).

(cid:153)Thực thể mạnh (strong entity): là thực thể mà sự

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

tồn tại của nó không phụ thuộc vào thực thể nào khác.

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

Các kiểu quan hệ (Relationship Types)

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

Các kiểu quan hệ (Relationship Types)

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

Bản số (Cardinality)

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

Bản số (Cardinality)

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

Thuộc tính (Attribute)

(cid:153)Mỗi thuộc tính: sẽ mô tả một tính chất của một kiểu

thực thể.

(cid:153)Ví dụ: kiểu thực thể Nhân viên được mô tả bởi các thuộc tính như mã nhân viên, họ tên, ngày sinh và giới tính.

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

(cid:153)Miền trị của thuộc tính (Attribute domain) là một tập hợp các giá trị có thể gán được cho một thuộc tính. Chẳng hạn như: thuộc tính giới tính chỉ có thể có một trong hai giá trị là nam hay nữ.

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

Các kiểu thuộc tính (Attribute Types)

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

(cid:153)Thuộc tính đơn, (cid:153)Thuộc tính phức hợp, (cid:153)Thuộc tính đơn trị hay đa trị, (cid:153)Và cũng có thể là thuộc tính dẫn xuất.

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

Các kiểu thuộc tính (Attribute Types)

(cid:153)Thuộc tính đơn (Simple attribute): là một thuộc tính

tạo thành bởi một thành phần tồn tại độc lập. (cid:132) Ví dụ: mã nhân viên, giới tính, ngày sinh.

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

(cid:153)Thuộc tính phức hợp (Composite attribute): là một thuộc tính tạo thành bởi nhiều thành phần tồn tại độc lập. (cid:132) Ví dụ: địa chỉ của nhân viên.

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

Các kiểu thuộc tính (Attribute Types)

(cid:153)Thuộc tính đơn trị (Single-valued attribute): là một

mã nhân viên.

thuộc tính chỉ chứa một giá trị cho mỗi thực thể. (cid:132) Ví dụ: Mã nhân viên là đơn trị vì mỗi nhân viên chỉ có một

thoại, vì vậy nó là thuộc tính đa trị.

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

(cid:153)Thuộc tính đa trị (Multi-valued attribute): là một thuộc tính có thể chứa nhiều giá trị cho mỗi thực thể. (cid:132) Ví dụ: Tel_No của chi nhánh có thể chứa nhiều số điện

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

Các kiểu thuộc tính (Attribute Types)

(cid:132) Ví dụ: thuộc tính Age (tuổi) là thuộc tính dẫn xuất ra từ

thuộc tính ngày sinh.

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

(cid:153)Thuộc tính dẫn xuất (Derived attribute): là thuộc tính có giá trị dẫn xuất từ giá trị của một thuộc tính hoặc một tập thuộc tính có liên quan, không cần thiết phải nằm trong cùng thực thể.

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

Khóa ứng viên & Khóa chính

(cid:153)Khóa ứng viên (candidate key): là một thuộc tính hay một tập hợp các thuộc tính có thể xác định duy nhất một thực thể của một kiểu thực thể.

(cid:153)Khóa chính (primary key): là một khóa ứng viên

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

được chọn là khóa chính.

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

Tổng quát hóa-chuyên biệt hóa

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

(cid:153)Tổng quát hóa (generalization) (cid:153)Chuyên biệt hóa (specialization)

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

(cid:153)B1: Xác định các kiểu thực thể: (cid:153)B2: Xác định các kiểu quan hệ và bản số. (cid:153)B3: Xác định các thuộc tính và miền trị. (cid:153)B4: Xác định các khóa ứng viên và khóa chính. (cid:153)B5: Tổng quát hóa/Chuyên biệt hóa các thực thể

(bước tùy chọn). (cid:153)B6: Vẽ sơ đồ ERD. (cid:153)B7: Kiểm tra & chuẩn hóa ERD.

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

CÁC BƯỚC XÂY DỰNG CDM

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

Ví DỤ XÂY DỰNG CDM

Mô tả: Nhà học A

có nhiều tầng, mỗi tầng có nhiều phòng và

trong mỗi phòng được trang bị một số loại thiết bị cần thiết. Mỗi tầng có số thứ tự tầng và diễn giải. Mỗi phòng có số thứ tự phòng, sức chứa của phòng và được trang bị một số loại thiết bị cần thiết (như bàn, ghế, quạt, máy chiếu,…). Mỗi loại thiết bị được đánh một mã thiết bị và có một diễn giải cho loại thiết bị đó. Một loại thiết bị có thể được trang bị cho một phòng hay không được trang bị cho phòng nào cả, một phòng được trang bị ít nhất một loại thiết bị nào đó.

Ví dụ: cách đánh số thứ tự phòng như: phòng 1 ở tầng 1 được đánh stt là 1.1, phòng 2 ở tầng 1 được đánh stt là 1.2, phòng 3 ở tầng 1 được đánh stt là 1.3,..¸ phòng 1 ở tầng 2 được đánh stt là 2.1, phòng 2 ở tầng 2 được đánh stt là 2.2, phòng 3 ở tầng 2 được đánh stt là 2.3…

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

Ví DỤ XÂY DỰNG CDM

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

Ví DỤ XÂY DỰNG CDM

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

CHUYÊN CDM SANG PDM

(cid:153)Qui tắc 1: Thực thể chuyển thành bảng

- Mỗi thực thể trở thành một bảng với tên bảng là tên thực thể và các thuộc tính của thực thể trở thành các thuộc tính của bảng tương ứng.

- Các thuộc tính khóa chính của thực thể cũng trở thành các thuộc tính khóa chính của bảng tương ứng.

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

- Các domain và các điều kiện ràng buộc (Null hay Not Null) của các thuộc tính vẫn không đổi khi chuyển sang bảng tương ứng.

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

CHUYÊN CDM SANG PDM

(cid:153)Qui tắc 2: Quan hệ Many – to – Many bảng mới

- Các quan hệ Many – to – Many sẽ sinh ra một bảng tương ứng với tên bảng là tên của quan hệ tương ứng.

- Khóa chính của bảng mới sinh ra gồm các thuộc tính khóa chính của 2 thực thể tương ứng với quan hệ đó.

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

- Các tham chiếu cũng được sinh ra tương ứng, cụ thể ta có thể xem xét các trường hợp sau:

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

CHUYÊN CDM SANG PDM

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

CHUYÊN CDM SANG PDM

Qui tắc 3: Quan hệ One-to-Many sẽ trở thành một tham chiếu

- Một quan hệ One-to-Many sẽ trở thành một tham chiếu “bảng con đến bảng cha”.

- Nếu một quan hệ One-to-Many dạng phụ thuộc hàm thì các thuộc tính khóa chính của thực thể bên 1 không những trở thành khóa ngoại của bảng con mà còn tham gia vào thành phần khóa chính của bảng con.

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

CHUYÊN CDM SANG PDM

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

CHUYÊN CDM SANG PDM

Qui tắc 4: Đưa các quan hệ one-to-one về dạng one-

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

to-many và áp dụng qui tắc 3.

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

CHUYÊN CDM SANG PDM

Qui tắc 5: Chuyển các quan hệ chuyên biệt hóa / tổng

quát hóa sang PDM.

Cách 1:

Cách 2:

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

MINH HỌA CDM & PDM

CDM:

PDM:

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

MINH HỌA CDM & PDM

CDM:

PDM:

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

MINH HỌA CDM & PDM

CDM:

PDM:

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

Thảo luận:

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

Thảo luận:

Vấn đề ???

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

Thảo luận:

Vấn đề ???

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

Thảo luận:

Vấn đề ???

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

Thảo luận:

Auto-Model of ERM

RELATIONSHIP_SIDE

ATTRIBUTE

SIDENO

ATTID

is in 2,n

RELAIONSHIP SIDE

SIDENO MINCARD MAXCARD DEPENDENT_ID DOMINANT_ID DESCRIPTION

CARDINALITY CARDINALITY YESNO YESNO COMMENT

ATTID ATTRIBUTENAME PRIMARY_ID MANDATORY_ID ALIAS COMMENT

ATTRIBUTENAME YESNO YESNO ALIAS COMMENT

1,1

RELATIONSHIP

RELATIONSHIPNAME

RELATIONSHIPNAME COMMENT

COMMENT

ENTITY_RELATIONSHIP

DOMAIN_ATTRIBUTE

INHERITANCE

INHNAME INHTYPE

INHERITANCENAME INHERITANCETYPE

ENTITY_ATTRIBUTE

INHERITANCE_PARENT

DOMAIN

INHERITANCE_CHILD

ENTITY TYPE

ENTITYNAME ALIAS COMMENT

ENTITYNAME ALIAS COMMENT

DOMAINNAME LENGTH DATATYPE SCALE

DOMAINNAME LENGTH DATATYPE SCALE

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

Thảo luận:

PDM of AutoModel

ATTRIBUTE

RELATIONSHIP_SIDE

FK_RELATION_RELATIONS_RELATION

1..*

RELATIONSHIP

text text text text text text text text

not null not null not null not null not null not null null null

REL_NAME SIDENO ENTITYNAME MINCARD MAXCARD DEPENDENT_ID DOMINANT_ID DESCRIPTION

not null not null not null not null not null not null not null null

text text text text text text text text

ENTITYNAME ATTID DOMAINNAME ATTNAME PRIMARY_ID MANDATORY_ID ALIAS COMMENT

not null

REL_NAME COMMENT

text text

null

0..*

0..*

0..*

FK_RELATION_ENTITY_RE_ENTITY_T

FK_ATTRIBUT_ENTITY_AT_ENTITY_T

INHERITANCE

FK_INHERITA_INHERITAN_ENTITY_T

ENTITY TYPE

0..*

not null

FK_ATTRIBUT_DOMAIN_AT_DOMAIN

INHNAME ENTITYNAME INHTYPE

text text text

not null not null not null

ENTITYNAME ALIAS COMMENT

text text text

null null

FK_INHERITA_INHERITAN_INHERITA

DOMAIN

0..*

FK_INHERITA_INHERITAN_ENTITY_T

INHERITANCE_CHILD

1..*

DOMAINNAME LENGTH DATATYPE SCALE

text text text text

not null not null not null null

INHNAME ENTITYNAME

text text

not null not null

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

HAN UNIVERSITY

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

HAN UNIVERSITY

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ

Câu hỏi & thảo luận

Cám ơn!!!

YOUR COMPANY NAME or YOUR SITE ADDRESS LOGO

Conceptual Data Model & Physical Data Model

Phan Tấn Tài – Đại Học Cần Thơ