
1
1
Chương
Chương 1
1
Đ
Đạ
ại
icương
cương v
về
ềc
cá
ác
ch
hệ
ệcơ
cơs
sở
ởd
dữ
ữli
liệ
ệu
u
Nguy
Nguyễ
ễn
nH
Hồ
ồng
ng Phương
Phương
phuongnh@it
phuongnh@it-
-hut.edu.vn
hut.edu.vn
B
Bộ
ộmôn
môn H
Hệ
ệth
thố
ống
ng thông
thông tin
tin
Khoa
Khoa Công
Công ngh
nghệ
ệthông
thông tin
tin
Đ
Đạ
ại
ih
họ
ọc
cB
Bá
ách
ch Khoa
Khoa H
Hà
àN
Nộ
ội
i
2
N
Nộ
ội
idung
dung chương
chương n
nà
ày
y
• 1.1 Các hệthống xửlý tệp
truyềnthống và những hạn
chếcủanó.
• 1.2 Các hệCSDL: khái niệm,
khảnăng, kiếntrúc, người
dùng củamộthệquảntrị
CSDL.
• 1.3 Sựphân loạicáchệ
CSDL.
)
3
1.1
1.1 C
Cá
ác
ch
hệ
ệth
thố
ống
ng x
xử
ửlý
lý t
tệ
ệp
p
truy
truyề
ền
nth
thố
ống
ng
•Bướckhởiđầucủaquátrình
tin họchóadoanhnghiệp.
•Tập trung vào nhu cầuxửlý dữliệu
củacácphòngriênglẻtrong tổchức
mà không xem xét tổng thểtổchức
này.
•Viếtmộtchương trình mới
đốivớimỗiứng dụng đơnlẻ,
không có kếhoạch, không có
mô hình hướng đếnsự
tăng trưởng.
4
•Mỗichương trình ứng dụng
định nghĩavàquảnlýcáctệp
dữliệucủa riêng nó.
•Trướckhixuấthiệncácphần
mềmhệquảntrịCSDL, trong
quá khứcác hệthống trên cơ
sởtệpđãđượctạolậpđể xử
lý mộtsốlượng lớndữliệu.
C
Cá
ác
ch
hệ
ệth
thố
ống
ng x
xử
ửlý
lý t
tệ
ệp
ptruy
truyề
ền
nth
thố
ống
ng
5
H
Hạ
ạn
nch
chế
ếc
củ
ủa
ac
cá
ác
ch
hệ
ệth
thố
ống
ng
x
xử
ửlý
lý t
tệ
ệp
ptruy
truyề
ền
nth
thố
ống
ng
•Dưthừa và không nhấtquándữliệu
•Khókhăn trong truy nhậpdữliệu
•Côlậpvàhạnchếchia sẻdữliệu
•Cácvấnđề vềan toàn và toàn vẹn
•Cácvấnđề vềđộtin cậy
•Sựphụthuộcdữliệucủacácchương
trình ứng dụng
6
N
Nộ
ội
idung
dung chương
chương n
nà
ày
y
• 1.1 Các hệthống xửlý tệp
truyềnthống và những hạn
chếcủanó.
•1.2 Các hệCSDL: khái niệm,
khảnăng, kiếntrúc, người
dùng củamộthệquảntrị
CSDL.
•1.3 Sựphân loạicáchệ
CSDL.
)

2
7
1.2
1.2 C
Cá
ác
ch
hệ
ệcơ
cơs
sở
ởd
dữ
ữli
liệ
ệu
u
• CSDL (database) là gì ?
•Tạisaophảisửdụng CSDL ?
•Tạisaophảitìmhiểuvềcác hệCSDL
(database systems) ?
8
• Thông tin cầnquantâm
–Khóa học, lớphọc, sinh viên, giáo viên,
môn học,…
– Thông tin vềsinh viên: thông tin cá
nhân, thông tin họctập,…
– Thông tin vềmôn học: khốilượng, giáo
viên, lịch học,…
•Cầnlưutrữnhững thông tin đadạng
Ví dụvềquảnlýđào tạo
Cơsởdữliệu
9
V
Ví
íd
dụ
ụ:
: khai
khai th
thá
ác
cthông
thông tin
tin
• Sinh viên
–Các môn họccủaKhoaCôngnghệthông
tin ?
–Điểmthimôn“Hệcơsởdữliệu” ?
• Giáo viên
–Danhsáchsinhviênlớp Tin2-K49 ?
–ThờikhóabiểucủalớpTin2-K49 ?
•Giáovụ
–DanhsáchsinhviênK47 tốt
nghiệploạigiỏi ?...
Phầnmềmứng dụng 10
“
“H
Hì
ình
nh dung
dung”
”v
về
ềxây
xây d
dự
ựng
ng m
mộ
ột
tCSDL
CSDL
•Yêucầu
–Lưutrữthông tin cầnthiếtmộtcáchchính xác
–Truyxuất thông tin hiệuquả
•Thựchiện
–Xácđịnh yêu cầunghiệpvụ
–Xácđịnh thông tin cầnlưutrữ
–Xácđịnh cách thứclưutrữ
•Cầncôngcụtrợgiúp xây dựng mộtCSDL
PhầnmềmquảntrịCSDL
11
C
Cá
ác
ckh
khá
ái
ini
niệ
ệm
mcơ
cơb
bả
ản
n
CSDL
HệQTCSDL
ứng dụng hệCSDL
12
Cơ
Cơs
sở
ởd
dữ
ữli
liệ
ệu
u(database)
(database)
•Làmộttậphợpcácdữliệu
–Biểudiễnmộtvàikhíacạnh nào đócủathế
giớithực
–Cóliênhệlogic thống nhất
–Đượcthiếtkếvà bao gồmnhững dữliệuphục
vụmộtmụcđích nào đó.
•Làmộtbộsưutậpcácdữliệu tác nghiệp
đượclưutrữlạivàđượccáchệứng dụng
củamộtxínghiệpcụthểnào đósửdụng.

3
13
H
Hệ
ệqu
quả
ản
ntr
trị
ịcơ
cơs
sở
ởd
dữ
ữli
liệ
ệu
u
(Database Management System
(Database Management System-
-DBMS)
DBMS)
•Là mộthệthống phầnmềmcho
phép
–Định nghĩa, tạolập: xác định kiểu, cấu
trúc, ràng buộcdữliệu, lưutrữdữliệu
trên các thiếtbịnhớ.
–Thao tác: truy vấn, cậpnhật, kếtxuất,…
các CSDL cho các ứng dụng khác nhau
•Vídụ: MS SQL Server, DB2,
MS Access, Oracle, FoxPro,…
14
H
Hệ
ệcơ
cơs
sở
ởd
dữ
ữli
liệ
ệu
u
•Làmộthệthống gồm4 thànhphần
–HệquảntrịCSDL
–Phầncứng
–CSDL và phầnmềmứng dụng
–Những ngườisửdụng
•Vídụ: Hệquảnlýđào tạo, hệquảnlý
nhân sự, hệquảnlýkinhdoanh,…
15
H
Hệ
ệCSDL
CSDL
CSDL
HệQuảnTrịCSDL
CSDL
Ứng dụng
Hệ
CSDL
16
C
Cá
ác
ct
tí
ính
nh năng
năng c
củ
ủa
ah
hệ
ệqu
quả
ản
ntr
trị
ịCSDL
CSDL
•Quảnlýdữliệutồntạilâudài
–Định nghĩadữliệu
–Quảnlýlưutrữ
•Truyxuấtdữliệumộtcáchhiệuquả
–Biểudiễn các thao tác dữliệu
–Xửlý câu hỏi
–Quảntrịgiao dịch
17
•Hỗtrợít nhấtmộtmôhìnhdữliệu
•Đảmbảo tính độclậpdữliệu
•Hỗtrợcác ngôn ngữcấpcaonhất
định cho phép ngườisửdụng định
nghĩacấutrúccủadữliệu, truy nhập
và thao tác dữliệu
•Điềukhiểntruynhập
•Phụchồidữliệu
C
Cá
ác
ct
tí
ính
nh năng
năng c
củ
ủa
ah
hệ
ệqu
quả
ản
ntr
trị
ịCSDL
CSDL
18
C
Cá
ác
cngôn
ngôn ng
ngữ
ữ
• Ngôn ngữđịnh nghĩadữliệu(Data
Definition Language - DDL)
–Cấutrúcdữliệu
–Mốiliênhệgiữacácdữliệuvàquytắc, ràng
buộcápđặtlêndữliệu
• Ngôn ngữthao tác dữliệu(Data
Manipulation Language - DML)
–Tìmkiếm, thêm, xóa, sửadữliệutrongCSDL
• Ngôn ngữđiềukhiểndữliệu(Data
Control Language - DCL)
–Thayđổicấutrúccủacácbảng dữliệu
–Khaibáobảomật thông tin
–Quyềnhạncủangười dùng trong khai thác
CSDL

4
19
S
Sự
ựtr
trừ
ừu
utư
tượ
ợng
ng h
hó
óa
ad
dữ
ữli
liệ
ệu
u
Sơđồkhái niệm
(logic)
Sơ đồ trong
(vậtlý)
Khung nhìn 1 Khung nhìn n
...
Mức quan niệm
(logic)
Mứclưu trữ
(trong)
Mức khung nhìn
(ngoài)
định nghĩacấutrúccác
tệpvàchỉdẫnđượcsử
dụng trong cơsởdữliệu
(cách lưutrữdữliệu
nhưthếnào)
định nghĩacấutrúclogic
củadữliệu, dữliệunào
đượclưutrữvà mối quan
hệgiữacácdữliệu
mô tảcách mà ngườisử
dụng có thểnhìn thấydữ
liệu
20
Tương
Tương ứ
ứng
ng 3
3 m
mứ
ức
cv
vớ
ới
ingôn
ngôn ng
ngữ
ữPascal
Pascal
•Mứcvậtlý: mộtbản ghi khach_hang đượcmôtả
nhưmộtkhốinhớ, chương trình dịch che dấucác
chi tiếtmứcnàyđốivớingườilập trình.
•Mứclogic: mỗibảnghiđượcmôtảbởimộtđịnh
nghĩakiểu, ngườilậptrìnhsửdụng ngôn ngữlập
trình làm việctạimứctrừutượng này.
•Mức khung nhìn: ngườisửdụng máy tính thấy
mộttậpcácch
ương trình ứng dụng, che dấu
những chi tiếtvềcác kiểudữliệu
Type khach_hang = record
ten:string;
ngay_sinh:string;
dia_chi:string;
end;
21
Ki
Kiế
ến
ntr
trú
úc
cc
củ
ủa
am
mộ
ột
th
hệ
ệqu
quả
ản
ntr
trị
ịCSDL
CSDL
Dữliệu (data) Siêu dữliệu
(metadata)
Bộxửlý
câu hỏiBộquảntrị
giao dịch
Bộquảnlý
lưu trữ
Các thay đổisơđồ Các truy vấnCácthayđổidữliệu
22
Qu
Quả
ản
nlý
lý lưu
lưutr
trữ
ữ
•Yêucầu
–lưutrữvà truy xuất
dữliệutrêncácthiết
bịnhớ
•Thựchiện
–Tổchứctốiưudữliệu
trên thiếtbịnhớ
–Tương tác hiệuquả
vớibộquảnlýtệpData & index
(chỉmục)
Quảnlýbuffer
Quảnlýtệp
Quản
lý
giao
dịch
Bộquảnlýlưu trữ
Metadata &
Data dictionary
(từ điểndữliệu)
23
X
Xử
ửlý
lý câu
câu h
hỏ
ỏi
i
•Yêucầu
–Tìmkiếmdữliệutrả
lờichomộtyêucầu
truy vấn.
•Thựchiện
–Biếnđổitruyvấnở
mức cao thành các
yêu cầucóthểhiểu
đượcbởihệCSDL.
–Lựachọnmộtkế
hoạch tốtnhấtđể trả
lờitruyvấnnày.
Bộxửlý câu hỏi
Data & index
Metadata &
Data dictionary
Bộquảnlý
lưu trữ
Bộbiên dịch
Bộđánh giá
Bộtốiưu
24
Qu
Quả
ản
ntr
trị
ịgiao
giao d
dị
ịch
ch
•Yêucầu
–Định nghĩagiaodịch: mộttập các thao
tác đượcxửlý nhưmộtđơnvịkhông
chia cătđược.
–Đảmbảotínhđúng đắnvàtínhnhất
quán củadữliệu.
•Thựchiện
–Quảnlýđiềukhiểntương tranh.
–Phát hiệnlỗivàphụchồiCSDL

5
25
Ngư
Ngườ
ời
id
dù
ùng
ng
•Ngườithiếtkếvà cài đặthệQTCSDL:
chịutráchnhiệmthiếtkếvà cài đặtcác
module củahệQTCSDL và các giao diện
dướihìnhthứccácgóiphầnmềm
•Người phát triểncôngcụ: chịutrách
nhiệmthiếtkếvà cài đặtcácgóiphầnmềm
hỗtrợcho việcthiétkê, sửdụng cũng như
tăng cường hiệunăng củacáchệCSDL.
26
Ngư
Ngườ
ời
id
dù
ùng
ng
•Ngườiphân tíchhệthống và phát triểnứng
dụng: chịutráchnhiệmxác định yêu cầucủa
ngườidùngcuối, xác định các giao dịch cầnthiết
để đáp ứng các yêu cầu người dùng. Ngườilập
trình ứng dụng cài đặtnhững yêu cầunàytrong
chương trình, kiểmthử, gỡrối, lậptàiliệucho
chương trình
•NgườithiếtkếCSDL: chịu trách nhiệmxác định
dữliệulưutrữtrong CSDL và cấutrúcbiểudiễn
và lưutrữnhững dữliệunày
27
•Ngườisửdụng cuối: là người khai thác các hệ
CSDL
•NgườiquảntrịCSDL: chịu trách nhiệmcho
phép truy nhậpCSDL, điềuphốivàkiểmtrasử
dụng CSDL, quản lý tài nguyên phầncứng và
phân mềmkhicầnthiết
•Ngườibảotrìhệthống: là những ngườiquản
trịhệthống chịutráchnhiệmviệchoạt động và
bảotrìmôi trường (phầncứng và phầnm
ềm)
cho hệCSDL
Ngư
Ngườ
ời
id
dù
ùng
ng
28
N
Nộ
ội
idung
dung chương
chương n
nà
ày
y
• 1.1 Các hệthống xửlý tệp
truyềnthống và những hạn
chếcủanó.
• 1.2 Các hệCSDL: khái niệm,
khảnăng, kiếntrúc, người
dùng củamộthệquảntrị
CSDL.
• 1.3 Sựphân loạicáchệ
CSDL.
)
29
1.3
1.3 Phân
Phân lo
loạ
ại
ic
cá
ác
ch
hệ
ệCSDL
CSDL
•Môhìnhdữliệu
–Mạng vs. phân cấpvs. quan hệvs. hướng đối
tượng vs. ...
•Số ngườisửdụng
–Một ngườidùngvs. nhiều người dùng
•TínhphântáncủaCSDL
–Tậptrungvs. Phân tán
•Tínhthống nhấtcủadữliệu
–Đồng nhấtvs. Không đồng nhất
• ...
30
C
Cá
ác h
c hệ
ệCSDL t
CSDL tậ
ập trung
p trung
•HệCSDL cá nhân: một người sửdụng đơn
lẻvừa thiết kế, tạo lập CSDL, cập nhật,
bảo trì dữliệu, lập và hiển thịbáo cáo.
→đảm nhiệm vai trò: người quản trị CSDL, người
viết chương trình ứng dụng, end-user.
•HệCSDL trung tâm: dữliệu được lưu trữ
trên một máy tính trung tâm.
•HệCSDL khách-chủ:
– Các máy tính trung tâm lớn → đắt so với các
máy nhỏvà máy trạm.
–Các ứng dụng máy khách truy nhập dữliệu
được quản lý bởi máy chủ.

