LỚP CNTT 2 - 2007
Would you like to react to this message? Create an account in a few clicks or log in to continue.

CÁC MÔ HÌNH DU LIEU

Go down

CÁC MÔ HÌNH DU LIEU Empty CÁC MÔ HÌNH DU LIEU

Post  Admin 4/12/2007, 09:59

CÁC MÔ HÌNH DỮ LIỆU

1. MÔ HÌNH LIÊN HỆ THỰC THỂ
Mục đích của mô hình thực thể – liên hệ là cho phép mô tả lược đồ khái niệm của một tổ chức mà không cần chú ý đến tính hiệu quả hoặc thiết kế CSDL vật lý.
Thực thể (entity) không có một định nghĩa hình thức, cũng giống như các thuật ngữ “điểm” và “đường” trong hình học ngầm được định nghĩa bằng các tiên đề về các đặc tính của chúng. Hòan tòan đủ để nói rằng : thực thể là một sự vật tồn tại và phân biệt được nghĩa là có thể phân biệt thực thể này với thực thể khác.
Một nhóm bao gồm tất cả các thực thể “tương tự” nhau tạo ra một tập thực thể. Ví dụ :
• * Tất cả mọi người
• * Tất cả mọi người có tóc màu đỏ
• * Tất cả mọi xe gắn máy
Một trong các bước mấu chốt để chọn một lược đồ cho thế giới thực khi nó thuộc về một CSDL cụ thể là chọn các tập thực thể, vì vậy cần mô tả đặc điểm của tất cả các phần tử của một tập thực thể bằng một tập các đặc tính gọi là thuộc tính, và như vậy “tính tương tự” ít nhất cũng đòi hỏi tìm được một tập các đặc tính chung cho tất cả các phần tử của một tập thực thể.
Ví dụ :
Phòng quản lý xe gắn máy ở TP. HCM thiết kế một lược đồ CSDL có một tập thực thể XE2BANH. Thể hiện của tập thực thể đó là tất cả các xe gắn máy 2 bánh hiện thời có đăng ký tại TP. Hồ Chí Minh, chứ không phải tất cả các xe gắn máy 2 bánh trên thế giới hay các xe đã có từ trước đến giờ.

Chọn thuộc tính thích hợp cho các tập thực thể là một bước quan trọng khác trong việc thiết kế lược đồ CSDL khái niệm.
Một thuộc tính hay một tập các thuộc tính dùng để xác định duy nhất mỗi thực thể trong tập thực thể gọi là khóa đối với tập thực thể đó.
Mối liên hệ giữa các tập thực thể là một danh sách có thứ tự của các tập thực thể.
Một tập thực thể đặc biệt có thể xuất hiện nhiều lần trong danh sách. Danh sách các tập thực thể này là khái niệm ở mức lược đồ của một mối liên hệ.
Nếu có một mối liên hệ R giữa các tập thực thể E1, E2, … , Ek, thì thể hiện của R là một tập các k-bộ. Chúng ta gọi một tập như thế là một tập liên hệ.


Khóa của tập thực thể (Entity Key): Đó là các thuộc tính nhận diện của loại thực thể. Căn cứ vào các giá trị của các thuộc tính nhận diện này người ta có thể xác định một thực thể duy nhất của một loại thực thể. Ví dụ, khóa của loại thực thể LỚP-HỌC có thể là Mã-Lớp; khóa của loại thực thể HỌC-VIÊN có thể là Mã-Học-Viên; khóa của loại thực thể MÔN-HỌC có thể là Mã-Môn-Học ...
Mối liên hệ hay kết hợp (Entity Relationship): Tương tự như loại mối liên hệ trong mô hình dữ liệu mạng. Trong đồ thị biểu diễn của mô hình này người ta sử dụng hình thoi để thể hiện một mối liên hệ giữa các thực thể. Giữa 2 tập thực thể có thể tồn tại nhiều hơn một mối liên hệ.
Để mô hình hóa đầy đủ cho thế giới thực, cần phải phân loại các mối liên hệ theo số lượng các thực thể từ mỗi tập tham gia trong nó.

* Dạng đơn giản và hiếm gặp nhất của mối liên hệ trên hai tập là mối liên hệ một – một, nghĩa là đối với mỗi thực thể trong một tập chỉ có nhiều nhất một phần tử được liên kết trong tập kia. Chú ý rằng đây chỉ là một giả thiết về thế giới thực, vì vậy người thiết kế CSDL có thể tùy chọn.
* Mối liên hệ nhiều – một : Ở đây một thực thể trong tập E2 có thể không liên kết với thực thể nào hoặc liên kết với một hay nhiều thực thể trong tập E1, nhưng mỗi thực thể trong E1 chỉ liên kết nhiều nhất với một thực thể trong E2. Mối liên kết này được gọi là nhiều – một từ E1 đến E2. Khái niệm mối liên hệ nhiều – một tổng quát hóa thành các mối liên hệ giữa 3 tập trở lên.
* Mối liên hệ nhiều – nhiều : Ở đây không có một hạn chế nào trên tập các k-bộ của các thực thể khi xuất hiện trong tập liên hệ. Ví dụ mối liên hệ giữa sinh viên và môn học : Bởi mỗi môn học sẽ có nhiều sinh viên đăng ký học và một sinh viên có thể đăng ký học nhiều môn.
Biểu diễn tính chất hàm trong các sơ đồ thực thể – liên hệ :
Dùng các cung hay các cạnh có hướng được chỉ ra bởi mũi tên để cho biết, khi nào một mối liên hệ là nhiều – một hoặc một – một. Trong trường hợp đơn giản nhất, mối liên hệ nhiều – một R từ A đến B, chúng ta đặt một cung từ hình thoi R đến hình chữ nhật B.
Ví dụ, giả sử mỗi nhân viên chỉ được phân công tối đa vào một phòng, điều này giải thích mũi tên đi từ PHCONG đến PHONG :
Nếu R là mối liên hệ một – một giữa A và B chúng ta vẽ một mũi tên từ R đến cả A và B. Ví dụ : các trưởng phòng chỉ quản lý một phòng, và các phòng chỉ có 1 trưởng phòng.


2.Mô hình dữ liệu mạng

Mô hình dữ liệu mạng (Network Data Model) - còn được gọi tắt là mô hình mạng hoặc mô hình lưới (Network Model) là mô hình được biểu diễn bởi một đồ thị có hướng. Trong mô hình này người ta đưa vào các khái niệm: mẫu tin hay bản ghi (Record), loại mẫu tin (Record Type) và loại liên hệ (Set Type):
(a) Loại mẫu tin (Recorde Type) là mẫu đặc trưng cho 1 loại đối tượng riêng biệt. Chẳng hạn như trong việc quản lý nhân sự tại một đơn vị, đối tượng cần phản ảnh của thế giới thực có thể là Phòng, Nhân viên, Công việc, lý lịch ... do đó có các loại mẫu tin đặc trưng cho từng đối tượng này. Trong đồ thị biểu diễn mô hình mạng mỗi loại mẫu tin được biểu diễn bởi một hình chữ nhật, một thể hiện (Instance) của một loại mẫu tin được gọi là bản ghi. Trong ví dụ trên loại mẫu tin Phòng có các mẫu tin là các phòng, ban trong đơn vị; loại mẫu tin nhân viên có các mẫu tin là các nhân viên đang làm việc tại các phòng ban của cơ quan...
(b) Loại liên hệ (Set Type) là sự liên kết giữa một loại mẫu tin chủ với một loại mẫu tin thành viên. Trong đồ thị biểu diễn mô hình mạng mỗi loại liên hệ được biểu diễn bởi một hình bầu dục (oval) và sự liên kết giữa 2 loại mẫu tin được thể hiện bởi các cung có hướng (các mũi tên) đi từ loại mẫu tin chủ tới loại liên hệ và từ loại liên hệ tới loại mẫu tin thành viên.
Trong loại liên kết người ta còn chỉ ra số lượng các mẫu tin tham gia trong mối kết hợp. Có các loại liên hệ sau:
· 1 1 (One-to-One): Mỗi mẫu tin của loại mẫu tin chủ chi kết hợp với đúng 1 mẫu tin của loại mẫu tin thành viên. Ví dụ, mỗi nhân viên có duy nhất một lý lịch cá nhân.
· 1 n (One-to-Many): Mỗi mẫu tin của loại mẫu tin chủ chi kết hợp với 1 hay nhiều mẫu tin của loại mẫu tin thành viên. Ví dụ, mỗi phòng ban có từ 1 đến nhiều nhân viên. Mỗi 1 nhân viên chỉ thuộc một phòng ban nhất định.
· n1 (Many-to-One): Nhiều mẫu tin của loại mẫu tin chủ chỉ kết hợp với đúng 1 mẫu tin của loại mẫu tin thành viên. Ví dụ, nhiều nhân viên cùng làm một công việc.
· Đệ quy (Recursive): Một loại mẫu tin chủ cũng có thể đồng thời là loại mẫu tin thành viên với chính nó. Ta nói rằng loại liên hệ này là đệ quy.
Ví dụ về mô hình dữ liệu mạng đối với CSDL nhân sự của một đơn vị.
Trong đồ thị này, chúng ta có 4 loại mẫu tin: PHÒNG, NHÂN-VIÊN, CÔNG-VIỆC và LÝ-LỊCH;
4 loại liên hệ:
• phòng gồm 1 đến nhiều nhân-viên;
• nhân-viên có đúng 1 lý-lịch;
• nhiều nhân-viên cùng làm một công-việc;
• 1 nhân-viên có thể có 1 hay nhiều nhân-viên là thân nhân của mình.


Last edited by on 4/12/2007, 10:01; edited 1 time in total
Admin
Admin
Admin

Posts : 41
Join date : 2007-09-29

https://cntt207.forumotion.com

Back to top Go down

CÁC MÔ HÌNH DU LIEU Empty CÁC MÔ HÌNH DU LIEU (tt)

Post  Admin 4/12/2007, 10:00

CÁC MÔ HÌNH DỮ LIỆU (tt)

3.Mô hình dữ liệu phân cấp

Mô hình dữ liệu phân cấp (Hierachical Data Model) - được gọi tắt là mô hình phân cấp (Hierachical Model): Mô hình là một cây (Tree), trong đó mỗi nút của cây biểu diễn một thực thể, giữa nút con và nút cha được liên hệ với nhau theo một mối quan hệ xác định.
Mô hình dữ liệu phân cấp sử dụng các khái niệm sau:
(a) Loại mẫu tin: giống khái niệm mẫu tin trong mô hình dữ liệu mạng.
(b) Loại mối liên hệ: Kiểu liên hệ là phân cấp, theo cách:
· Mẫu tin thành viên chỉ đóng vai trò thành viên của một mối liên hệ duy nhất, tức là nó thuộc một chủ duy nhất. Như vậy, mối liên hệ từ mẫu tin chủ tới các mẫu tin thành viên là 1n, và từ mẫu tin (hay bản ghi - record) thành viên với mẫu tin chủ là 11.
· Giữa 2 loại mẫu tin chỉ tồn tại 1 mối liên hệ duy nhất.
Ví dụ Mẫu phiếu điều tra dân số

Các dòng là các mẫu tin (hay bản ghi) có độ dài thay đổi.
Có 6 loại mẫu tin:
· Mẫu tin đặc trưng cho tỉnh, thành phố gồm Mã số tỉnh thành, Tên tỉnh thành phố. '02' là Mã số Thành phố Hồ Chí Minh.
· Mẫu tin đặc trưng cho quận huyện gồm Mã số tỉnh thành + Mã số quận huyện, Tên quận huyện trong tỉnh thành phố đó. '0201' là Mã số quận Nhất của TP.Hồ Chí Minh.
· Mẫu tin đặc trưng cho phường xã gồm Mã số tỉnh thành + Mã số quận huyện + Mã số phường xã, Tên phường xã thuộc quận huyện trong tỉnh thành phố đó. '020101' là Mã số phường Bến Nghé, Quận Nhất, TP.Hồ Chí Minh.
. Mẫu tin đặc trưng cho địa bàn điều tra trong một phường xã. '02010101' là mã số địa bàn điều tra số 01 trong phường Bến Nghé.
· Mẫu tin đặc trưng cho hộ điều tra, gồm Mã số tỉnh + Mã số quận + Mã số phường + Mã số địa bàn + Số thứ tự hộ điều tra trong địa bàn, Tổng số nhân khẩu trong hộ, Trong đó: Nữ, Tổng số trẻ dưới 16 tuổi.
· Mẫu tin đặc trưng cho nhân khẩu của hộ, gồm các thông tin xác định hộ điều tra, Số thứ tự nhân khẩu trong hộ, Quan hệ với chủ hộ (19), Giới tính (1,2,3), Tháng sinh, Năm sinh, Trình độ văn hóa, ...
Ở đây rõ ràng là một sự phân cấp trong file CSDL.

Một tỉnh thành phố (thì) có nhiều quận huyện, một quận huyện chỉ thuộc một tỉnh thành duy nhất. Một quận huyện (thì) có nhiều phường xã và một phường xã chỉ thuộc một quận huyện duy nhất. Mỗi phường xã được chia thành nhiều địa bàn điều tra, mỗi địa bàn chỉ thuộc một phường xã duy nhất v.v...


4. Mô hình hướng đối tượng

Mô hình dữ liệu hướng đối tượng (Object Oriented Data Model) ra đời từ cuối những năm 80 và đầu những năm 90. Đây là loại mô hình tiên tiến nhất hiện nay dựa trên cách tiếp cận hướng đối tượng đã quen thuộc trong các phương pháp lập trình hướng đối tượng, nó sử dụng các khái niệm như lớp (class), sự kế thừa (inheritance), kế thừa bội (tức là kết thừa từ nhiều lớp cơ sở multi-inheritance). Đặc trưng cơ bản của cách tiếp cận này là tính đóng gói (encapsulation), tính đa hình (polymorphism) và tính tái sử dụng (Reusability).
* Lớp (class) là một kiểu dữ liệu có cấu trúc bao gồm các thành phần dữ liệu và các phương thức xử lý thao tác trên cấu trúc dữ liệu đó. Nó là một kiểu (hay cấu trúc) dữ liệu được trừu tượng hóa, bởi vì các tác động (còn gọi là các phương thức - method) là để phục vụ hoặc thao tác trên kiểu dữ liệu này. Dữ liệu và phương thức hòa quyện vào nhau thành một thể thống nhất: dữ liệu cần có những cách thức xử lý thỏa đáng, và phương thức xử lý được đưa vào trong kiểu dữ liệu đó là để phục vụ cho các đối tượng có cấu trúc như thế. Người ta gọi sự thống nhất đó là sự đóng gói.
* Ví dụ, trong việc định nghĩa phép cộng (+) hai số phức c1 và c2 để cho một số phức kết quả là:
COMPLEX (c1.Real+c2.Real, c1.Image+c2.Image)
để người ta có thể sử dụng phép cộng (+) một cách tự nhiên như việc gán kết quả đó cho biến phức c = c1 + c2, hoàn toàn tự nhiên và trong sáng hơn rất nhiều so với việc phải viết một thủ tục Add_COMPLEX (COMPLEX &c1, COMPLEX &c2, COMPLEX &c) để cộng hai số phức và kết quả được gán vào tham đối thứ 3 của hàm thông qua tham chiếu địa chỉ của biến c theo cách lập trình hướng thủ tục trước đó. Và, hiển nhiên rằng, cách thức cộng như trên là chỉ được áp dụng cho các đối tượng số phức.
Phương pháp tiếp cận hướng đối tượng trong mô hình dữ liệu mặc dù còn mới mẻ nhưng hiện nay đang được nhiều người quan tâm nghiên cứu phát triển và áp dụng. Các hệ quản trị CSDL hướng đối tượng hiện nay vẫn chưa nhiều, một số còn chưa thuần nhất (nghĩa là việc lập trình là hướng đối tượng nhưng CSDL vẫn chủ yếu dựa trên mô hình quan hệ.
Admin
Admin
Admin

Posts : 41
Join date : 2007-09-29

https://cntt207.forumotion.com

Back to top Go down

Back to top

- Similar topics

 
Permissions in this forum:
You cannot reply to topics in this forum