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 đủ
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:
bai_giang_co_so_du_lieu_nang_cao_chuong_2_tong_quan_co_so_du.pdf

