Bài giảng Nhập môn Cơ Sở Dữ Liệu: Chương1- Tổng quan về Cơ Sở Dữ Liệu

Giớithiệu

ƒVí dụ

- Kinhdoanh

- Ngânhàngvàtàichính

- Giáodục

- Hànhchính

- Giảitrí

-

ƒDữliệu(Data)

- Mộtmôtảhìnhthứcvềthôngtin vàhoạtđộng

y Tên, địachỉ, sốđiệnthoạicủa khách hàng

y Báo cáo doanh thu

y Đăng ký họcphần

pdf49 trang | Chia sẻ: hongmo88 | Lượt xem: 1406 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Bài giảng Nhập môn Cơ Sở Dữ Liệu: Chương1- Tổng quan về Cơ Sở Dữ Liệu, để xem tài liệu hoàn chỉnh bạn click vào nút TẢI VỀ ở trên
ỏ về cấu trúc ta ít phải
sửa lại chương trình
Độc lập
Chương
trình
Dữ
liệu
Nhập môn CSDL - Khoa CNTT 16
Tính
trừu tượng
ƒ Hệ CSDL cho phép trình bày dữ liệu ở một mức
trừu tượng cho phép, nhằm che bớt những chi tiết
lưu trữ thật của dữ liệu
ƒ Trừu tượng hóa dữ liệu
-
Mô
hình
dữ
liệu
y Đối tượng
y Thuộc tính của đối tượng
y Mối liên hệ
Nhập môn CSDL - Khoa CNTT 17
Tính
nhất quán
ƒ Lưu trữ dữ liệu thống nhất
-
Tránh
được
tình
trạng
trùng
lặp
thông
tin
ƒ Có cơ chế điều khiển truy xuất dữ liệu hợp lý
-
Tránh
được việc tranh chấp dữ
liệu
-
Bảo
đảm dữ
liệu
luôn
đúng
tại mọi thời
điểm
Nhập môn CSDL - Khoa CNTT 18
Các
cách
nhìn
dữ
liệu
ƒ Hệ CSDL cho phép nhiều người dùng thao tác lên
cùng một CSDL
ƒ Mỗi người đòi hỏi một cách nhìn (view) khác nhau
về CSDL
ƒ Một view là
-
Một phần của
CSDL hoặc
-
Dữ
liệu tổng
hợp từ
CSDL
Nhập môn CSDL - Khoa CNTT 19
Nội dung chi tiết
ƒ Giới thiệu
ƒ Quá trình phát triển
ƒ Một số đặc tính của CSDL
ƒ Người sử dụng CSDL
-
Quản trị
viên
(Database Administrator -
DBA)
-
Thiết kế
viên
(Database Designer)
-
Người
dùng
cuối
(End User)
ƒ Kiến trúc của HQT CSDL
ƒ Các tính năng của HQT CSDL
ƒ Các khái niệm
ƒ Ngôn ngữ CSDL
Nhập môn CSDL - Khoa CNTT 20
Quản trị
viên
ƒ Có trách nhiệm quản lý hệ CSDL
-
Cấp quyền truy cập CSDL
-
Điều phối và giám sát việc sử
dụng
CSDL
Nhập môn CSDL - Khoa CNTT 21
Thiết kế
viên
ƒ Chịu trách nhiệm về
-
Lựa chọn cấu trúc phù hợp
để
lưu trữ
dữ
liệu
-
Quyết
định
những
dữ
liệu
nào
cần
được lưu trữ
ƒ Liên hệ với người dùng để nắm bắt được những
yêu cầu và đưa ra một thiết kế CSDL thỏa yêu cầu
này
ƒ Có thể là 1 nhóm các DBA quản lý các CSDL sau
khi việc thiết kế hoàn tất
Nhập môn CSDL - Khoa CNTT 22
Người dùng cuối
ƒ Người ít sử dụng
-
Ít
khi
truy
cập
CSDL, nhưng
cần những
thông
tin khác
 nhau
trong
mỗi lần truy cập
và
dùng
những
câu
truy
vấn
 phức tạp
-
Người quản lý
ƒ Người sử dụng thường xuyên
-
Thường
xuyên
truy
vấn và cập nhật
CSDL nhờ
vào
một
 số
các
chức năng
đã
được
xây
dựng
sẳn
-
Nhân
viên
ƒ Người sử dụng đặc biệt
-
Thông
thạo về
HQT CSDL, tự
xây
dựng
những
truy
vấn
 phức tạp
cho
công
việc
-
Kỹ
sư, nhà
khoa
học, người
phân
tích,
Nhập môn CSDL - Khoa CNTT 23
Nội dung chi tiết
ƒ Giới thiệu
ƒ Quá trình phát triển
ƒ Một số đặc tính của CSDL
ƒ Người sử dụng CSDL
ƒ Kiến trúc của HQT CSDL
ƒ Các tính năng của HQT CSDL
ƒ Các khái niệm
ƒ Ngôn ngữ CSDL
Nhập môn CSDL - Khoa CNTT 24
Kiến trúc của HQT CSDL 
ƒ Kiến trúc 3 lược đồ
Người
dùng
Lược
đồ
ngoài
1 Lược
đồ
ngoài
n
Lược
đồ
quan
niệm
Lược
đồ
trong
Người
dùng
Ánh
xạ
ngoài/
Ánh
xạ
quan
niệm
Mức ngoài
Mức quan niệm
Mức trong
Ánh
xạ
quan
niệm/
Ánh
xạ
trong
Nhập môn CSDL - Khoa CNTT 25
Kiến trúc của
HQT CSDL (tt)
Nhập môn CSDL - Khoa CNTT 26
Kiến trúc của
HQT CSDL (tt)
ƒ Mức trong (lược đồ trong)
-
Mô
tả
cấu trúc lưu trữ
vật lý CSDL
ƒ Mức quan niệm (lược đồ quan niệm)
-
Mô
tả
cấu trúc của
toàn
thể
CSDL cho
1 cộng
đồng
 người sử
dụng, gồm thực thể, kiểu dữ
liệu, mối
liên
hệ
 và
ràng
buộc
-
Che
bớt các chi tiết của cấu trúc lưu trữ
vật lý
ƒ Mức ngoài (lược đồ ngoài)
-
Còn
gọi là mức
khung
nhìn
(view)
-
Mô
tả
một phần của
CSDL mà
1 nhóm
người
dùng
quan
 tâm
đến và che dấu phần
còn
lại của CSDL đối với
 nhóm
người
dùng
đó
Nhập môn CSDL - Khoa CNTT 27
Kiến trúc của
HQT CSDL (tt)
ƒ Độc lập dữ liệu
-
Độc lập logic
y Khả năng thay đổi lược đồ quan niệm mà không thay đổi lược
đồ ngoài hoặc các chương trình ứng dụng
-
Độc lập vật lý
y Khả năng thay đổi lược đồ trong mà không làm thay đổi lược
đồ quan niệm cũng như lược đồ ngoài
Nhập môn CSDL - Khoa CNTT 28
Kiến trúc của
HQT CSDL (tt)
Nhập môn CSDL - Khoa CNTT 29
Kiến
trúc
Client/Server
Nhập môn CSDL - Khoa CNTT 30
Kiến trúc phân tán
Nhập môn CSDL - Khoa CNTT 31
Nội dung chi tiết
ƒ Giới thiệu
ƒ Quá trình phát triển
ƒ Một số đặc tính của CSDL
ƒ Người sử dụng CSDL
ƒ Kiến trúc của HQT CSDL
ƒ Các tính năng của HQT CSDL
ƒ Các khái niệm
ƒ Ngôn ngữ CSDL
Nhập môn CSDL - Khoa CNTT 32
Các
tính
năng
của HQT CSDL
ƒ Kiểm soát được tính dư thừa của dữ liệu
-
Tích
hợp các nhu cầu dữ
liệu của người
dùng
để
xây
 dựng
một CSDL thống
nhất
ƒ Chia sẻ dữ liệu
-
Trong
môi
trường
đa người
dùng, các
HQT phải cho
 phép
truy
xuất dữ
liệu
đồng
thời
ƒ Hạn chế những truy cập không cho phép
-
Từng
người
dùng
và
nhóm
người
dùng
có
một
tài
khoản
 và
mật mã để
truy
xuất dữ
liệu
ƒ Cung cấp nhiều giao diện
-
HQT cung
cấp
ngôn
ngữ
giữa CSDL và người
dùng
Nhập môn CSDL - Khoa CNTT 33
Các
tính
năng
của
HQT CSDL (tt)
ƒ Đảm bảo các ràng buộc toàn vẹn
-
RBTV (Integrity Constraints) là
những
qui định
cần
được
 thỏa mãn để
đảm bảo dữ
liệu
luôn
phản ánh đúng
ngữ
 nghĩa của thế
giới thực
-
Một số
ràng
buộc có thể được
khai
báo
với HQT và HQT 
sẽ
tự động
kiểm tra. 
-
Một số
ràng
buộc
khác
được kiểm tra nhờ
chương
trình
 ứng
dụng
ƒ Khả năng sao lưu dự phòng khi gặp sự cố
-
Có
khả
năng
khôi
phục dữ
liệu
khi
có
sự
hư
hỏng
về
 phần cứng
hoặc phần mềm
Nhập môn CSDL - Khoa CNTT 34
Các
tính
năng
của
HQT CSDL (tt)
ƒ Các tính năng khác
-
Chuẩn hóa
y Cho phép DBA định nghĩa và bắt buộc áp dụng một chuẩn
thống nhất cho mọi người dùng
-
Uyển
chuyển
y Khi nhu cầu công việc thay đổi, cấu trúc CSDL rất có thể thay
đổi, HQT cho phép thêm hoặc mở rộng cấu trúc mà không
làm ảnh hưởng đến chương trình ứng dụng
-
Giảm thời
gian
phát
triển
ứng
dụng
-
Tính
khả
dụng
y Khi có một sự thay đổi lên CSDL, tất cả người dùng đều thấy
được
Nhập môn CSDL - Khoa CNTT 35
Nội dung chi tiết
ƒ Giới thiệu
ƒ Quá trình phát triển
ƒ Một số đặc tính của CSDL
ƒ Người sử dụng CSDL
ƒ Các tính năng của HQT CSDL
ƒ Kiến trúc của HQT CSDL
ƒ Các khái niệm
-
Mô
hình
dữ
liệu
-
Lược
đồ
-
Thể
hiện
ƒ Ngôn ngữ CSDL
Nhập môn CSDL - Khoa CNTT 36
Mô
hình
dữ
liệu
ƒ Mô hình dữ liệu (Data Model) bao gồm
-
Các
khái
niệm biểu diễn dữ
liệu
-
Các
phép
toán
xử
lý
dữ
liệu
Nhập môn CSDL - Khoa CNTT 37
Mô
hình
dữ
liệu (tt)
ƒ Mô hình mức cao
-
Cung
cấp
các
khái
niệm gần gũi với người
dùng
-
Mô
hình
phải tự
nhiên
và
giàu
ngữ
nghĩa
-
VD: mô
hình
thực thể
kết hợp
(ER), mô
hình
đối tượng
ƒ Mô hình cài đặt
-
Đưa
ra
các
khái
niệm người
dùng
có
thể
hiểu
được
 nhưng
không
quá
xa
với cách dữ
liệu
được tổ
chức thật
 sự
trên
máy
tính
-
VD: mô
hình
quan
hệ, mô
hình
mạng, mô
hình
phân
cấp
ƒ Mô hình mức thấp (mô hình vật lý)
-
Đưa
ra
các
khái
niệm mô tả
chi tiết về
cách
thức dữ
liệu
 được lưu trữ
trong
máy
tính
Nhập môn CSDL - Khoa CNTT 38
Ví
dụ
mô
hình
ER
SVien
hoc HPhan mo
MHoc
dieukien
Nganh
MaSV
Lop
Diem
(1,n)
(0,n)
Ten
(1,1)
mhoctruoc
mhocsau
(0,n)
(0,n)
Tinchi
MaMH
Khoa
TenMH
(0,n)
Hocky
GvienNam
MaHP
Nhập môn CSDL - Khoa CNTT 39
Ví
dụ
mô
hình
đối tượng
SVien
Ten
Lop
Nganh
LapTKB()
InBangDiem()
Diem
DiemTH
DiemLT
DiemPrj
SuaDiem()
HPhan
Ten
SLuong0..*1..*
hoc
MHoc
Ten
Khoa
SoTinChi
CapNhatSTC()
0..*
1
mo
0..*
0..*
Dieu kien
+MHoc
truoc
+MHoc
sau
Nhập môn CSDL - Khoa CNTT 40
Ví
dụ
mô
hình
quan
hệ
SVien
MaSV
Ten
Lop
Nganh
Hoc
MaSV
MaHP
DiemLT
DiemTH
HPhan
MaHP
SLuong
MaMH
MHoc
MaMH
TenMH
Khoa
TinChi
DKien
MaMH
MaMHTruoc
Nhập môn CSDL - Khoa CNTT 41
Ví
dụ
mô
hình
mạng
SVien MHoc
HPhan
KQua
DKien
SVIEN_DIEM
MHOC_MO
MHOC_SAU
MHOC_TRUOC
KQUA_HPHAN
Nhập môn CSDL - Khoa CNTT 42
Ví
dụ
mô
hình
phân
cấp
SVien
TenSV Lop Nganh
HPhan
TenHP SLuong
MHoc
TenMH Khoa TinChi
Mức 2:
Mức 1:
Mức 3:
KQua
DiemTH DiemLT
Nhập môn CSDL - Khoa CNTT 43
Lược
đồ
ƒ Lược đồ CSDL (Database Schema)
-
Là
các
mô
tả
về
cấu trúc và ràng buộc trên CSDL
SVien Ten MaSV Nam Khoa
TenMH MaMH TinChi KhoaMhoc
MaMH MaMH_TruocDKien
MaKH MaMHKHoc HocKy Nam GV
MaKH MaSVKQua Diem
Nhập môn CSDL - Khoa CNTT 44
Thể
hiện
ƒ Thể hiện CSDL (Database Instance)
-
Là
dữ
liệu hiện thời
được lưu trữ
trong
CSDL ở
một thời
 điểm
nào
đó
-
Tình
trạng
của CSDL
Ten MaSV Nam Khoa
Son 17 1 CNTT
Bao 8 2 CNTT
SVien
TenMH
Nhap
mon
tin hoc
Cau truc du lieu
Mhoc
Toan
roi
rac
Co so du
lieu
MaMH
COSC1310
COSC3320
MATH2410
COSC3380
TinChi Khoa
4
4
3
3
CNTT
CNTT
TOAN
CNTT
MaMH MaMH_TruocDKien
COSC3380 COSC3320
COSC3380 MATH2410
COSC3320 COSC3380
MaSV Diem
17 8
17 6
KQua MaKH
8
8
8
8
112
119
85
92
102
135
10
9
8
10
Nhập môn CSDL - Khoa CNTT 45
Ngôn
ngữ
CSDL
ƒ Ngôn ngữ định nghĩa dữ liệu
(DDL – Data Definition Language)
y Xác định ra lược đồ quan niệm
ƒ Ví dụ
CREATE TABLE employees ( 
id INTEGER PRIMARY KEY, 
first_name
CHAR(50) null, 
last_name
CHAR(75) not null, 
date_of_birth
DATE null ); 
Nhập môn CSDL - Khoa CNTT 46
Ngôn
ngữ
CSDL (tt)
ƒ Ngôn ngữ thao tác dữ liệu
(DML – Data Manipulation Language)
y Cho phép truy xuất, thêm, xóa, sửa dữ liệu
y Mức cao (phi thủ tục)
y Mức thấp (thủ tục)
ƒ Ví dụ
-
Các
câu
lệnh
trọng
SQL: SELECT, INSERT, UPDATE, 
và
DELETE. 
-
SELECT id, last_name
FROM employees 
Nhập môn CSDL - Khoa CNTT 47
Ngôn
ngữ
CSDL (tt)
ƒ Ngôn ngữ điều khiển giao dịch
(Transaction Control Language -
TCL)
-
Đảm bảo tính toàn vẹn dữ
liệu khi thực hiện các tác vụ
có
sự
 thay
đổi dữ
liệu
-
Các
câu
lệnh
SQL tương
ứng: 
y COMMIT, ROLLBACK, và SAVEPOINT.
ƒ Ngôn ngữ điều khiển dữ liệu
(Data Control Language -
DCL) 
-
Cung
cấp các tính năng
bảo vệ
cho
các
đối tượng
của CSDL
-
Các
câu
lệnh
SQL tương
ứng: 
y GRANT và REVOKE. 
Nhập môn CSDL - Khoa CNTT 48
Tài
liệu tham khảo
ƒ Giáo trình CSDL
-
Chương
1, 
ƒ Database management system
-
Chapter 1
ƒ An introduction to Database System
-
Chapter 1, 2
Nhập môn CSDL - Khoa CNTT 49

File đính kèm:

  • pdfchap01.pdf