Các khái niệm về hệ quản trị csdl



tải về 1.1 Mb.
trang2/15
Chuyển đổi dữ liệu17.08.2016
Kích1.1 Mb.
1   2   3   4   5   6   7   8   9   ...   15





CHƯƠNG 2 - MÔ HÌNH QUAN HỆ THỰC THỂ

VÀ CHUẨN HÓA DỮ LIỆU


Mục tiêu:

Kết thúc chương này, các bạn sẽ có thể:

  • Định nghĩa và mô tả về mô hình hóa dữ liệu.

  • Nhận biết và mô tả các thành phần mô hình E-R

  • Nhận biết các quan hệ giữa các thực thể

  • Giải thích về lược đồ E-R, các ký hiệu sử dụng để vẽ và thể hiện các quan hệ

  • Mô tả về các dạng chuẩn

  • Sơ lược về công dụng của các toán tử quan hệ

    1. Giới thiệu

Trong chương này sẽ bàn về Mô hình hóa dữ liệu (Data Modeling), Mô hình Quan hệ Thực thể (Entity-Relationship: E-R) và các thành phần, các ký hiệu, các lược đồ, quan hệ của E-R, chuẩn hóa dữ liệu và các toán tử quan hệ.

    1. Mô hình hóa dữ liệu

Mô hình dữ liệu là nhóm các công cụ lý thuyết mô tả dữ liệu, các mối quan hệ và ngữ nghĩa của chúng. Mô hình dữ liệu cũng bao gồm các ràng buộc toàn vẹn mà dữ liệu phải tuân theo. Các mô hình phân cấp, mô hình mạng, mô hình quan hệ và mô hình quan hệ thực thể là các ví dụ của mô hình dữ liệu. Sự phát triển của mọi CSDL bắt đầu bằng việc phân tích dữ liệu để chỉ ra mô hình dữ liệu phù hợp nhất. Sau đó mô hình sẽ được áp dụng trở lại cho dữ liệu.

Quá trình áp dụng mô hình dữ liệu thích hợp cho dữ liệu, để tổ chức và cấu trúc dữ liệu được gọi là mô hình hóa dữ liệu (Data Modeling).

Mô hình hóa dữ liệu cần thiết với phát triển CSDL giống như việc hoạch định và thiết kế đối với sự phát triển dự án. Xây dựng CSDL không có mô hình dữ liệu giống như việc phát triển dự án không có kế hoạch và không có bản thiết kế. Các mô hình dữ liệu giúp nhà phát triển định nghĩa các bảng quan hệ, các khóa chính và khóa ngoại, thủ tục lưu trữ và các trigger cần thiết trong CSDL.

Mô hình hóa dữ liệu có thể được chia làm ba bước chính sau:



  • Mô hình hóa dữ liệu ý niệm (Conceptual Data Modeling)

Xác định các quan hệ ở mức cao nhất từ dữ liệu

  • Mô hình hóa dữ liệu logic (Logical Data Modeling)

Mô tả thật chi tiết dữ liệu và mối quan hệ của nó. Tạo ra mô hình logic của CSDL.

  • Mô hình hóa dữ liệu vật lý (Physical Data Modeling)

Xác định cách thức mô hình logic được chuyên biệt hóa về mặt vật lý.

Hình 2.1 thể hiện các bước trong mô hình hóa dữ liệu.





Hình 2.1: Các bước mô hình hóa dữ liệu

    1. Mô hình quan hệ thực thể (E-R)

Các mô hình dữ liệu được phân thành ba nhóm khác nhau:

  • Các mô hình logic dựa trên đối tượng (Object-based logical models)

  • Các mô hình logic dựa trên bản ghi (Record-based logical model)

  • Các mô hình vật lý (Physical models)

Mô hình quan hệ thực thể (E-R) thuộc về nhóm đầu tiên. Mô hình dựa trên ý tưởng đơn giản. Dữ liệu có thể được nhận biết như là các đối tượng trong thế giới thực gọi là thực thể và các mối quan hệ tồn tại giữa chúng. Ví dụ, dữ liệu về các nhân viên làm việc trong một tổ chức có thể được nhận biết như là tập hợp các nhân viên và tập hợp các bộ phận khác nhau của tổ chức. Cả nhân viên và bộ phận là các đối tượng trong thế giới thực. Một nhân viên thuộc về một bộ phận. Vì vậy, quan hệ “belongs to” (Thuộc về) liên kết giữa nhân viên với bộ phận. Quan hệ nhân viên – bộ phận được mô hình trong hình 2.2.



Hình 2.2: Mô tả Mô hình E-R của một tổ chức.

Mô hình E-R bao gồm năm thành phần chính:



  • Thực thể (entity)

Một thực thể là một đối tượng tồn tại trong thế giới thực và được phân biệt với các đối tượng khác. Ví dụ: nhân viên, bộ phận, sinh viên, khách hàng,…

  • Mối quan hệ (Relationship)

Mối quan hệ là sự kết hợp hay gắn kết giữa một hay nhiều thực thể. Ví dụ: thuộc về (belongs to), sở hữu (owns), làm việc cho (works for), …

  • Thuộc tính (Attributes)

Thuộc tính là các đặc tính hay đặc trưng của một thực thể. Các thuộc tính phân biệt mỗi thực thể với thực thể khác. Ví dụ: thuộc tính của một sinh viên là số đăng ký, tên, lớp, học kỳ, …. Các thuộc tính của xe hơi là số đăng ký, Kiểu, nhà sản xuất, màu, giá, chủ sở hữu,…

  • Tập thực thể (Entity set)

Tập thực thể là một tập hợp các thực thể tương tự nhau. Ví dụ các nhân viên của một tổ chức hình thành một tập thực thể gọi là nhân viên(employee).

  • Tập các mối quan hệ (Relationship Set)

Một tập hợp các mối quan hệ tượng tự nhau giữa hai hay nhiều tập thực thể gọi là tập các mối quan hệ. Tập tất cả các quan hệ “work-in” (làm việc tại) giữa các nhân viên (employee) và bộ phận (departments) được gọi là tập các mối quan hệ gọi là “work-in”

Các thành phần mô hình E-R khác nhau được thể hiện trong hình 2.3





Hình 2.3: Các thành phần của mô hình E-R

Như đã giải thích ở trên, mối quan hệ gắn kết một hay nhiều thực thể với nhau. Các mối quan hệ được phân thành các loại sau:



  • Các mối quan hệ tự thân (Self relationships)

Các mối quan hệ giữa các thực thể trong cùng tập thực thể được gọi là mối quan hệ tự thân. Ví dụ: một quản lý (manager) nhóm và các thành viên của nhóm, cả hai thuộc về tập thực thể employee (nhân viên). Các thành viên trong nhóm làm việc cho người quản lý. Vì vậy, quan hệ “works for” (làm việc cho) tồn tại giữa hai thực thể employee khác nhau của cùng một tập thực thể employee. Một quan hệ này có thể được nhận thấy như trong hình 2.4.



Hình 2.4: Mối quan hệ tự thân

  • Các mối quan hệ nhị phân (Binary relationships)

Các mối quan hệ tồn tại giữa các thực thể của hai tập thực thể khác nhau được gọi là mối quan hệ nhị phân. Ví dụ, một (employee) nhân viên thuộc về bộ phận (department). Mối quan hệ tồn tại giữa hai thực thể khác nhau thuộc về hai tập thực thể khác nhau. Thực thể employee thuộc về tập thực thể employee. Thực thể department thuộc về tập thực thể department. Mối quan hệ này được thể hiện như trong hình 2.5.



Hình 2.5: Mối quan hệ nhị phân

  • Các mối quan hệ chạn ba (Ternary relationships)

Mối quan hệ tồn tại giữa ba thực thể của các tập thực thể khác nhau được gọi là mối quan hệ chạn ba (hay mối quan hệ tam phân). Ví dụ, một nhân viên (employee) làm việc cho bộ phận kế toán (account) tại chi nhánh vùng. Mối quan hệ “works” tồn tại giữa ba thực thể, employee, department và location. Mối quan hệ này có thể được xem xét như trong hình 2.6.



Hình 2.6: Mối quan hệ chạn ba

Các mối quan hệ có thể được phân loại theo yếu tố ánh xạ như sau:



  • Một Một (one-to-one)

Loại ánh xạ này tồn tại khi một thực thể của một tập thực thể có thể gắn kết chỉ với một thực thể của tập thực thể khác.

Xét mối quan hệ giữa vehicle (xe) và registration (đăng ký). Mỗi xe có một đăng ký duy nhất. Không có hai xe có cùng một đăng ký. Quan hệ này Một – Một, nghĩa là một xe – một đăng ký. Yếu tố ánh xạ có thể được thể hiện như trong hình 2.7.





Hình 2.7: Yếu tố ánh xạ một-một (one-to-one)

  • Một - Nhiều (one-to-many)

Loại ánh xạ này tồn tại khi một thực thể của tập thực thể có thể được gắn kết với nhiều hơn một thực thể của một tập thực thể khác.

Xét mối quan hệ giữa khách hàng (customer) và các xe của khách hàng (customer’s vehicle). Một khách hàng có thể có nhiều hơn một xe. Vì thế, ánh xạ là Một-Nhiều (one-to-many), nghĩa là một khách hàng – một hoặc nhiều xe. Ánh xạ này có thể được thể hiện như trong hình 2.8.





Hình 2.8: Yếu tố ánh xạ Một-Nhiều (One-to-Many)

  • Nhiều Một (many-to-one)

Loại ánh xạ nay tồn tại khi nhiều thực thể của một tập thực thể kết hợp với một thực thể của một tập thực thể khác. Sự kết hợp này được thực hiện không kể thực thể kể sau đã kết hợp với các thực thể khác hay không.

Xét mối quan hệ giữa vehicle (xe) và manufacturer (nhà sản xuất). Mọi xe chỉ có một công ty sản xuất hoặc tổ hợp lắp ráp. Cùng một công ty hoặc tổ hợp lắp ráp có thể sản xuất nhiều hơn một loại xe. Mối quan hệ “manufactured by” gắn kết giữa xe với nhà sản xuất. Sự ánh xạ có thể nhận thấy trong hình 2.9.





Hình 2.9: Yếu tố ánh xạ Nhiều-Một (many-to-one)

  • Nhiều - Nhiều (many-to-many)

Loại ánh xạ này tồn tại khi một số thực thể của tập thực thể có thể kết hợp với một số thực thể của tập thực thể khác.

Xét mối quan hệ giữa khách hàng (customer) của ngân hàng và tài khoản (account) của khách hàng. Một khách hàng có thể có nhiều hơn một tài khoản và một tài khoản có thể có nhiều hơn một khách hàng là chủ sở hữu. Vì thế, ánh xạ là Nhiều-Nhiều (many-to-many), nghĩa là một hoặc nhiều khách hàng được kết hợp với một hoặc nhiều tài khoản. Sự ánh xạ có thể nhận thấy trong hình 2.10.





Hình 2.10: Yếu tố ánh xạ Nhiều-Nhiều (Many-to-Many)

Một số khái niệm bổ sung trong mô hình E-R là:



  • Khóa chính (primary key)

Khóa chính là một thuộc tính có thể định rõ duy nhất một thực thể trong tập thực thể. Xem xét bảng 2.1 chứa chi tiết các sinh viên (student) trong trường.

Enrollment_number

(số đăng ký)



Name

(tên)


Grade

(Mức độ)


Division

(Phân loại)



786

Ashley

Seven

B

957

Joseph

Five

A

1011

Kelly

One

A

Trong trường học, mọi sinh viên có số đăng ký duy nhất enrollment_number trong bảng 2.1. Bất kỳ sinh viên có thể được xác định dựa vào số đăng ký. Do vậy, thuộc tính enrollment_number đóng vai trò khóa chính trong bảng chi tiết sinh viên (Student Detail)

  • Tập thực thể yếu (Weak entity sets)

Nhiều tập thực thể không có đủ các thuộc tính để thiết lập khóa chính được gọi là tập thực thể yếu.

  • Tập thực thể mạnh (Strong entity sets)

Các tập thực thể có đủ các thuộc tính để thiết lập khóa chính được gọi là tập thực thể mạnh

Xét kịch bản một viện đào tạo, khi kết thúc mỗi học kỳ, các sinh viên cần phải hoàn tất và nộp các bài tập (assignment). Thầy giáo theo dõi các bài tập do sinh viên nộp. Bây giờ, một bài tập (assignment) và một sinh viên (student) có thể được xét như hai thực thể riêng biệt. Các thực thể assignment có thể được nhóm lại để hình thành tập thực thể assignment và các thực thể student có thể được nhóm lại để tạo thành tập thực thể student. Các tập thực thể được kết hợp bởi quan hệ “submitted by”.





Hình 2.11: Quan hệ Assignment - Student

Các thuộc tính, assignment_number và subject, không đủ để định rõ duy nhất một thực thể assignment. Riêng thuộc tính roll_number đủ để định rõ duy nhất bất kỳ thực thể sinh viên nào. Vì thế, roll_number là khóa chính cho tập thực thể sinh viên. Tập thực thể assignment là tập thực thể yếu do thiếu khóa chính. Tập thực thể student là tập thực thể mạnh do có sự hiện hiện của thuộc tính khóa chính roll_number



2.3.1. Lược đồ quan hệ thực thể (Entity-Relationship Diagrams)

Lược đồ quan hệ (E-R) là sự biểu diễn bằng đồ họa mô hình E-R. Lược đồ E-R, với sự trợ giúp của nhiều ký hiệu, biểu diễn một cách hiệu quả nhiều thành phần của mô hình E-R. Các ký hiệu được sử dụng cho nhiều thành phần được chỉ rõ trong bảng 2.2.





Bảng 2.2: Các ký hiệu sử dụng trong lược đồ E-R

Các thuộc tính trong mô hình E-R có thể được phân chia tiếp thành:



  • Multi-valued (Đa trị)

Một thuộc tính đa trị, được minh họa với hình elip có đường kẻ đôi, có nhiều hơn một giá trị với ít nhất một thể hiện của thực thể chứa nó. Thuộc tính này có thể có giới hạn giá trị cao và thấp để xác định miền giá trị chứa trong thuộc tính. Các ký hiệu và ví dụ của thuộc tính đa trị được minh họa trong hình 2.12.



Hình 2.12: các ký hiệu và ví dụ của thuộc tính đa trị

  • Composite (Phức hợp)

Thuộc tính phức hợp, có thể chứa hai hay nhiều thuộc tính, biểu diễn nhiều hơn các thuộc tính cơ bản.

Thuộc tính địa chỉ(address) thường là thuộc tính phức hợp, chứa các thuộc tính như là street (đường), area (khu vực).v..v. Ký hiệu và ví dụ của thuộc tính phức hợp có thể nhận rõ trong hình 2.13.





Hình 2.13: Ký hiệu và ví dụ của thuộc tính phức hợp

  • Derived (Dẫn xuất)

Các thuộc tính dẫn xuất là các thuộc tính có giá trị phụ thuộc hoàn toàn vào thuộc tính khác và được biểu diễn bằng hình elip có đường viền đứt đoạn.

Thuộc tính age (tuổi) của một người là ví dụ phù hợp nhất cho thuộc tính dẫn xuất. Đối với thực thể person (người) cụ thể, tuổi của một người có thể được xác định từ ngày hiện tại và ngày sinh. Ký hiệu và ví dụ của thuộc tính dẫn xuất được minh họa trong hình 2.14.





Hình 2.14: Ký hiệu và ví dụ của thuộc tính dẫn xuất

Các bước tạo lược đồ E-R:



  1. Tập hợp tất cả các dữ liệu cần được mô hình hóa

  2. Xác định dữ liệu có thể được mô hình hóa như các thực thể thực tế

  3. Nhận ra các thuộc tính cho mỗi thực thể

  4. Phân loại các tập thực thể thành các tập thực thể mạnh hoặc yếu

  5. Phân loại các thuộc tính thực thể thành thuộc tính khóa, thuộc tính đa trị, thuộc tính phức hợp, thuộc tính dẫn xuất, ..v..v.

  6. Nhận ra các quan hệ giữa các thực thể khác nhau.

  7. Sử dụng các ký hiệu vẽ các thực thể, thuộc tính và các mối quan hệ của chúng. Sử dụng các ký hiệu thích hợp trong khi vẽ các thuộc tính.

Xét kịch bản của ngân hàng, với customer (Khách hàng) và account (tài khoản). Lược đồ E-R cho kịch bản có thể được tạo ra như sau:

Bước 1: Tập hợp dữ liệu

Ngân hàng là tập hợp các tài khoản tiết kiệm được sử dụng bởi khách hàng.

Bước 2: Nhận ra các thực thể



  1. Customer (Khách hàng)

  2. Account (Tài khoản)

Bước 3: Nhận ra các thuộc tính

  1. Customer: customer_name, customer_address, customer_contact

  2. Account: account_number, account_owner, balance_amount

Bước 4: Phân loại các tập thực thể

  1. Tập thực thể Customer: tập thực thể yếu.

  2. Tập thực thể Account: tập thực thể mạnh

Bước 5: Phân loại thuộc tính

  1. Tập thực thể Customer: customer_address – phức hợp, customer_contact – đa trị

  2. Tập thực thể Account: account_number  khóa chính (primary key), account_owner – đa trị

Bước 6: Nhận rõ các quan hệ

Một customer gởi tiết kiệm vào account. Quan hệ là “saves in”

Bước 7: Vẽ lược đồ sử dụng các ký hiệu



Hình 2.16: Lược đồ E-R cho kịch bản ngân hàng


: files
files -> Sạt-đe rằng: Nầy là lời phán của Đấng có bảy vì thần Đức Chúa Trời và bảy ngôi sao
files -> HƯỚng dẫn càI ĐẶt và SỬ DỤng phần mềm tạo bài giảng e-learning
files -> VIỆn chăn nuôi trịnh hồng sơn khả NĂng sản xuất và giá trị giống của dòng lợN ĐỰc vcn03 luậN Án tiến sĩ NÔng nghiệp hà NỘI 2014
files -> ĐẠi học quốc gia hà NỘi trưỜng đẠi học khoa học tự nhiên nguyễn Thị Hương XÂy dựng quy trình quản lý CÁc công trìNH
files -> PHỤ LỤC 2 TỔng hợp danh mục tài liệu tham khảO
files -> BÁo cáo quy hoạch vùng sản xuất vải an toàn tỉnh bắc giang đẾn năM 2020 (Thuộc dự án nâng cao chất lượng, an toàn sản phẩm nông nghiệp và phát triển chương trình khí sinh học ) Cơ quan chủ trì
files -> BỘ TÀi nguyên và MÔi trưỜng
files -> 1. Mục tiêu đào tạo: Mục tiêu chung


1   2   3   4   5   6   7   8   9   ...   15


Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2019
được sử dụng cho việc quản lý

    Quê hương