Bài giảng Cơ sở dữ liệu nâng cao - Chương 2: Tổng quan cơ sở dữ liệu hướng đối tượng - Nguyễn Thị Mỹ Dung

Bài giảng  
CƠ SỞ DỮ LIỆU  
NÂNG CAO  
Số tc: 2; LT: 20; Btập: 10  
GV: Nguyễn Thị Mỹ Dung  
Khối lớp: Đại học L2  
Chương 2: CSDL Hướng đối tượng  
1
NỘI DUNG MÔN HỌC  
1
Chương 1. Tổng quan CSDL phân tán (4)  
Chƣơng 2. Tổng quan CSDL hƣớng đối tƣợng  
2
3
Chương 3. Cơ bản về Oracle (4)  
Chương 4: Lập trình PL/SQL (4)  
Chương 5: Procedure, Function (4)  
4
5
6
Chương 6: Thiết kế đối tượng (6)  
7
Chương 7: Truy vấn trong CSDL HĐT (4)  
Chương 2: CSDL Hướng đối tượng  
2
Ch2: Tổng quan CSDL HĐT  
I. Giới thiệu  
II. Mô hình dữ liệu  
III. CSDL hƣớng đối tƣợng (CSDLHĐT)  
IV. Các hệ quản trị CSDLHĐT  
V. Ƣu điểm của CSDL HĐT  
VI. Chuyển đổi từ mô hình đối tƣợng sang mô  
hình quan hệ  
VII.Phân tích, thiết kế CSDL HĐT với UML  
Chương 2: CSDL Hướng đối tượng  
3
I. Giới thiệu  
Các khái niệm của hướng đối tượng bao gồm:  
Định danh đối tượng (OID); Nạp chồng (Overriding);  
Viết đè (Overloading); Đa hình (Polymorphism); Liên  
kết động (Dynamic binding); Đối tượng phức  
(complex object).  
Định danh đối tượng (OID: Object Identifier):  
Trong RDBMS: OID= khóa chính  
Trong OODBMS: khoá chính không dùng làm  
OID, vì: khoá chính chỉ duy nhất trong 1 quan hệ,  
không phải trên toàn hệ thống; khoá chính được  
chọn từ các thuộc tính phụ thuộc vào trạng thái  
của đối tượng.  
4Chương 2: CSDL Hướng đối tượng  
Định danh đối tượng (tt)  
Cần phân biệt 2 trường hợp:  
2 đối tượng là một (identical): cùng OID  
2 đối tượng bằng nhau (equal): khác OID, nhưng trị  
các thuộc tính bằng nhau:  
Bằng cạn (shallow equality): khi loại bỏ hết các  
tham chiếu (khoá ngoài) đến các đối tượng khác  
Bằng sâu (deep equality): khi tất cả các đối  
tượng được tham chiếu đến cũng bằng nhau  
5Chương 2: CSDL Hướng đối tượng  
Giới thiệu (tt)  
Nạp chồng (Overriding):  
Định nghĩa lại một đặc tính (thuộc tính/  
phương thức) trong lớp con (subclass).  
Định nghĩa mới này mới thực sự được dùng  
trong lớp con đang xét, chứ không phải định  
nghĩa đã có trong lớp cha.  
6Chương 2: CSDL Hướng đối tượng  
Giới thiệu (tt)  
Viết đè (Overloading)  
Là khái niệm tổng quát hơn overriding  
Cho phép tên một phương thức được dùng lại  
trong một hoặc nhiều định nghĩa cho lớp.  
Có thể thay đổi trong định nghĩa phương thức:  
Các tham số: về số lượng tham số, kiểu tham số,  
kiểu trả về  
Làm đơn giản hoá trình ứng dụng: cho phép ngữ  
cảnh được xác định ý nghĩa nào thích đáng nhất tại  
một thời điểm.  
7Chương 2: CSDL Hướng đối tượng  
Giới thiệu (tt)  
Đa hình (Polymorphism)  
Có 3 dạng đa hình:  
Về tác tử (operation polymorphism)=  
overloading  
Về sự bao hàm (inclusion polymorphism): một  
phương thức trong lớp cha được thừa kê trong lớp  
con.  
Về tham số, hay còn gọi về khuôn dạng chung  
(parametric polymorphism/ genericity): dùng các  
kiểu như các tham số, để định ra các template.  
8Chương 2: CSDL Hướng đối tượng  
Giới thiệu (tt)  
Liên kết động (Dynamic binding)  
Gắn kết (binding)= quá trình chọn phương  
thức thích hợp, dựa trên kiểu của đối tượng  
Quá trình gắn kết động/ gắn kết trễ (dynamic  
binding /late binding): việc xác định kiểu đối  
tượng được trì hoãn đến lúc khai thác chương  
trình, chứ không phải ngay khi biên dịch.  
9Chương 2: CSDL Hướng đối tượng  
Giới thiệu (tt)  
Đối tượng phức (complex object)  
Là đối tượng gồm các đối tượng con, hoặc các  
thành tố khác.  
Đối tượng được chứa sẽ được kiểm soát theo 2  
cách:  
Được bao gói bên trong đối tượng phức, là một  
thành phần của đối tượng phức, chỉ được truy  
cập thông qua phương thức của đối tượng  
phức.  
Họăc, tồn tại độ clập ngoài đối tượng phức, và  
chỉ có OID của nó được đặt trong đối tượng  
phức.  
1C0hương 2: CSDL Hướng đối tượng  
Giới thiệu (tt)  
Các đặc tính thuộc hướng đối tượng  
1. Đối tượng phức 5. Tính thừa kế  
2. Định danh dữ 6. Gắn kết động (dynamic bind)  
liệu  
3. Tính bao gói 7. DML phải đầy đủ về tính toán  
4. Kiểu và lớp 8. Tập các kiểu dữ liệu phải mở rộng  
được  
Chương 2: CSDL Hướng đối tượng  
11  
Giới thiệu (tt)  
Các đặc tính thuộc hướng đối tượng  
9. Có tính bền vững dữ liệu 12. Phải phục hồi được từ  
các sự cố phần cứng và  
phần mềm  
10. Phải kiểm soát được 13. Phải cung cấp cách đơn  
CSDL rất lớn  
giản để truy vấn dữ liệu  
11. Phải hỗ trợ các người  
dùng cạnh tranh nhau  
Chương 2: CSDL Hướng đối tượng  
12  
Ví dụ mô hình đối tƣợng  
SVien  
Ten  
Lop  
Nganh  
HPhan  
hoc  
Ten  
SLuong  
1..*  
0..*  
LapTKB()  
InBangDiem()  
1
Diem  
mo  
DiemTH  
DiemLT  
DiemPrj  
0..*  
SuaDiem()  
MHoc  
Ten  
Khoa  
+MHoc truoc  
0..*  
SoTinChi  
CapNhatSTC()  
0..*  
Dieu kien  
+MHoc sau  
1C3hương 2: CSDL Hướng đối tượng  
Ví dụ mô hình đối tƣợng  
class khoa {  
//du lieu thanh vien  
private:  
char * makh;  
char * tenkh;  
//ham thanh vien  
public:  
khoa ();  
void nhap();  
void xuat();  
char * get_makh();  
char * get_tenkh();  
void set_makh(char * bmakh);  
void set_tenkh(char * btenkh);  
};  
1C4hương 2: CSDL Hướng đối tượng  
II. Mô hình dữ liệu  
File Systems  
Hierarchical  
Network  
Relational  
Object-Oriented  
System  
Semantic Data  
Model (ERD)  
Complex Object  
Model  
Object-Oriented  
Databases  
Chương 2: CSDL Hướng đối tượng  
15  
Mô hình dữ liệu (tt)  
Các mô hình dữ liệu:  
Hệ thống tập tin (file system): 1960 - 1980  
Phân cấp (hierarchical): 1970 - 1990  
Mạng (network): 1970 - 1990  
Quan hệ (relational): 1980 - nay  
Hướng đối tượng (object-oriented): 1990 - nay  
Đối tượng - quan hệ (object-relational): 1990 -  
nay  
Kho dữ liệu (data warehouse): 1980 - nay  
Web-enabled: 1990 - nay  
Chương 2: CSDL Hướng đối tượng  
16  
Tại sao phải xây dựng mô hình đối tượng  
Nhu nhu cầu giảm chi phí, bài toán ngày một phức tạp  
và các chức năng hướng tới một mục tiêu là vượt lên  
trong môi trường cạnh tranh gay gắt ngày nay.  
Từ quan điểm của công nghệ, xuất hiện áp lực thúc đẩy  
việc áp dụng các công nghệ hướng đối tượng, nguyên  
tắc và phương pháp tiếp cận trong suốt chu trình phát  
triển phần mềm.  
Mục tiêu là cung cấp một dòng mới của cơ sở dữ liệu,  
được thiết kế và tối ưu hóa để lưu trữ và thao tác trên  
các đối tượng  
III. Cơ sở dữ liệu đối tượng  
1. Khái niệm  
Thông tin được biểu diễn thành các đối tượng  
giống như các đối tượng trong lập trình hướng đối  
tượng.  
Dữ liệu thuộc tính mô tả các đặc trưng của các  
thực thể (đối tượng)  
Các phương thức mô tả hành vi ứng xử của đối  
tượng  
Mối quan hệ giữa các lớp với nhau.  
Thuộc tính khoá có thể được sử dụng để xác định  
các bộ dữ liệu ở những bảng khác được gọi là khoá  
ngoại (foreign key).  
CSDL đối tƣợng (1. tt)  
Mỗi đối tượng (thực thể) có một định danh ID để  
xác định duy nhất trong CSDL.  
Các CSDLĐT được thiết kế để làm việc tốt đối  
với những ngôn ngữ lập trình như Java, C++, C#,  
Smalltalk, v.v.  
Mục đích của CSDLHĐT là để quản trị hiệu  
quả những kiểu dữ liệu phức hợp như âm thanh,  
hình ảnh, dữ liệu đa phương tiện, v.v., nhằm  
khắc phục những hạn chế của CSDL quan hệ.  
Chương 2: CSDL Hướng đối tượng  
19  
CSDL đối tƣợng (tt)  
2. Kiến trúc của CSDL đối tượng  
CSDL đối tượng được tối ưu hóa cho truy cập điều  
hướng và điều phối các đối tượng giữa các máy chủ cơ sở  
dữ liệu Server và Client  
Client-server architecture of an ODBMS  
Chương 2: CSDL Hướng đối tượng  
20  
Tải về để xem bản đầy đủ
pdf 53 trang yennguyen 13460 Free
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Cơ sở dữ liệu nâng cao - Chương 2: Tổng quan cơ sở dữ liệu hướng đối tượng - Nguyễn Thị Mỹ Dung", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfbai_giang_co_so_du_lieu_nang_cao_chuong_2_tong_quan_co_so_du.pdf