Tải bản đầy đủ (.pdf) (29 trang)

BÀI GIẢNG HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU CHƯƠNG 1

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.47 MB, 29 trang )


LOGO
!"#$%&'#()*#+,# #/0#12"%##
!"#$%&Nguyễn'Trường'Sơn'
&
Chương'1:&
$'(!&)*+(&",&
-)$&./0##
Nội dung
Nội dung
!  123&453&67&89&:;<3&=>?@A&./0#&&
!  BCD;&@;<E&-)$&./0#&&
!  B;F@&=>G4&4HI&EJ=&-)$&./0#&
!  KCL@&:?M;&-)$&./0#&&
Yêu cầu về dữ liệu trong CSDL
!  09&:;<3&=>?@A&./0#&NCO;&PQR4&=CS&C;<@&T&4D4&EU4&PJ&=>V3&
=QR@A&WCD4&@CI3&XY&EU4&PJZ%&
[  \U4&@A?];&X^_=`>@I:&:`6`:Z&
a  \b&=O&EJ=&NC5@&4HI&./0#&E]&EJ=&Pc;&=QR@A&d&EJ=&@CeE&@AQf;&8g@A&
PQR4&h3i7@&=;FN&4j@&
[  \U4&:3j@&:k&X#?A;4&:`6`:Z&&
•  Mô tả nC9@A&=Cb@A&=;@&Al&PQR4&:Q3&=>9&=>?@A&./0# và&@C9@A&Ec;&h3I@&
C<&A;9I&@C9@A&=Cb@A&=;@&Pe&&
[  \U4&6j=&:k&XKCim;4I:&:`6`:Z&
a  09&:;<3&PQR4&:Q3&=>9&@CQ&=CF&@]?&=>2@&=C;F=&no&:Q3&=>9p&
"&#]E&=q@A&=r@C&PJ4&:jN&Xdata'independenceZ&4HI&4D4C&=CU4&
:Q3&=>9&89&:;<3s&=C;F=&WF&89&:;<3&6]&4CQt@A&=>l@C&mu&8v@A&89&
:;<3p&
Yêu cầu về dữ liệu trong CSDL
!  .D4&EU4&PJ&=>V3&=QR@A&4HI&89&:;<3%&
3456789:&


/4C`EI&w
3456789:&
/4C`EI&x
3456789:&
/4C`EI&Y
1;<=>9:#/4C`EI
?@AB=>9:#
/4C`EI
/2-C#
Yêu cầu về dữ liệu trong CSDL
!  09&:;<3&=>?@A&./0#&45@&4e&4D4&Py4&=>Q@A%&
[  z=&C?y4&WCb@A&=>g@A&:{N&89&:;<3&
[  .C;I&m|&4C?&@C;73&@AQf;&8g@A&E]&WCb@A&ALi&>I&_3@A&PJ=&
[  +@&@;@Cs&nO?&Ej=&
[  BCb;&NCv4&WC;&4e&m}&4c&
[  ~J4&:jN&89&:;<3&
•  Độc lập luận'lý: Khả năng =CIi&P•;&:QR4&P€&EU4&:3j@&:k&E]&WCb@A&:OE&
O@C&CQT@A&PF@&:QR4&P€&@A?]; cũng như chương trình ứng dụng.&
•  Độc lập vật'lý%&Khả năng =CIi&P•;&=•&4CU4&6j=&:k&4HI&./0#&E]&WCb@A&:]E&
O@C&CQT@A&PF@&:QR4&P€&:3j@&:kp&&
!  "l&6ji&45@&4e&EJ=&C<&=Cc@A&h3O@&:k&C;<3&h3O&89&:;<3&=>?@A&
./0#p&
Lợi ích của tính độc lập dữ liệu
!  Độc lập l3j@&:k:
–  Cho phép thêm bớt thuộc tính, bảng, các
mối quan hệ mà không cần phải viết lại
chương trình,
!  Độc lập vật lý:
–  Cho phép thay đổi thiết bị lưu trữ, cách
thức lưu trữ, các cấu trúc dữ liệu, các tổ

chức tập tin khác nhau, các kiểu tổ chức
chỉ mục khác nhau, &
3456789:&
/4C`EI&w
1;<=>9:#/4C`EI
?@AB=>9:#
/4C`EI
/2-C#
Khái niệm HQT CSDL
!  #]&EJ=&@D#5@E8<#F@G8#HIH&43@A&4•N&4D4&4b@A&4v&PS&_Li&
8}@As&WCI;&=CD4&6]&h3O@&:k&4t&mT&89&:;<3p&
[  JKA#LM8<&X/u&8v@A&@Ab@&@A9&00#Z%&&~o@C&@AC‚I&4•3&=>G4&./0#s&:Q3&
=>9&89&:;<3&&
[  C@9=#5@N>#X/u&8v@A&@Ab@&@A9&0\#Z%&$>3i&6•@&89&:;<3s&.jN&@Cj=&89&
:;<3&&
[  $OP8#:Q%&
a  )3O@&:k&I@&=?]@&6]&nO?&Ej=&&
a  ~;73&WC;S@&=>3i&_3•=&P€@A&=Cf;p&
a  BCb;&NCv4&WC;&4e&m}&4cp&&&
a  ƒ&
!  \J=&mc&-)$./0#%&\/&/)#&/`>6`>s&„>I4:`s&0…xs&ƒ&
Các lợi ích của HQT CSDL
!  Độc lập dữ liệu
!  Truy cập dữ liệu hiệu quả
!  Toàn vẹn dữ liệu
!  An ninh dữ liệu
!  Truy xuất đồng thời
!  Khôi phục sau sự cố
!  Giảm thời gian phát triển ứng
dụng#

!  &&
!  &&
!  &&
Lịch sử phát triển của các HQT CSDL
RS#@T8@#
HU8<#
RS#@T8@#
F@K8#>VF#
RS#@T8@#
WO98#@D#
RS#@T8@#
XE=#5YZ8<#
';#-$1#
/959[9B6##
SABRE#
system##
CODASYL##
IMS#
Ingres#
System5R#
28<76B#+;7F#
R-#-$1#-67\67#
-A[9B6#
-$1]/-#
/^_#
`::[9B6#
a79>:6#
';8b-5;F#-$1#
/6>9L6#;c#)/^R-#
defgB#

dehgB#
?;B5<76-$1#
L^`-3#
R;8<;/^i#a79>:6#
';-$1#/959[9B6i#
`F9>@6#
+9BB98L79#i#jjj#
#
#
dekgB#l#deegB#
_gggB#
$%31#
?7;5;5AF6B#
c;7#a/^R-#
-3$%31##
-$1#
Kiến trúc của một HQT CSDL
Web$forms
Application$Front$
Ends
SQL$Interface
Plan$Executor Parser
Operator$Evaluator Optimizer
Files$and$Access$methods
Buffer$Manager
Disk$Space$Manager
Recovery$
Manager
Transaction$
Manager

Lock$
Manager
Query&
Evaluation&
Engine
Concurency&
Control
SQL$COMMANDS
DATABASES
DBMS
Unsophisticated-users-(customers,-travel-agents,-etc.)
Sophiscatedusers,-application-
programmers,-DB-administrators
Index$files
Data$files
System$Catalog
command&flows
interactions
references
Kiến trúc của một HQT CSDL
!  Các thành phần chính:&
m=9;#L=D8#:nF#57T8@##
`8#ninh \o#[P;#Hn5#
Jp#:Q#57OA#4OV5#Xq8<#
5@r=
Xử lý câu 57OA#\V8
C@S=#F@s>#B9O#BM#>E
(t#>@u>#WOP8#:Q#:YO#
57v#
Người sử dụng

Thành phần Giao diện lập trình
!  -)$./0#&43@A&4•N&A;I?&8;<@&:jN&=>l@C&8†&mu&8v@A&6‡;&EJ=&
@Ab@&@A9&:jN&=>l@C&./0#%
–  Giao diện: tương tác dòng lệnh (command line), đồ họa (GUI)
–  Ngôn ngữ: SQL, T-SQL&
[  "0%&\/&/)#&/`>6`>&43@A&4•N&@Ab@&@A9&$>I@mI4;?@&/)#&X$ˆ/)#Z&
!  .D4&:?M;&@Ab@&@A9&mu&8v@A&=>?@A&-)$./0#%&
[  Ngôn'ngữ'định'nghĩa'dữ'liệu (DDL – Data Definition Language)%&
!;GN&@AQf;&8g@A&>I&:<@C&4C?&-)$./0#&=M?&>I&4D4&4•3&=>G4&89&:;<3&
4HI&./0#&X.D4C&=•&4CU4&89&:;<3&6]&Ec;&:;2@&C<&A;9I&4D4&Pc;&=QR@A&
89&:;<3Zp&&
[  Ngôn'ngữ'thao'tác'CSDL (DML – Data Manupulation Language) %&
!;GN&@AQf;&8g@A&=r4C&:3‰s&C;<3&4CŠ@C&6]&WCI;&=CD4&89&:;<3&&
Thành phần An ninh và bảo mật
!  Bảo mật dữ liệu: HQTCSDL hỗ trợ các tính năng về chứng
thực, phân quyền giúp k;SE&m?D=&=c=&@C9@A&@AQf;&8g@A&CRN&
NCDN&4HI&hệ thống
!  An ninh dữ liệu: HQTCSDL hỗ trợ các phương pháp mã hóa
dữ liệu để nAq@&4Cy@&4D4&=•@&4b@A&4HI&@C9@A&Pc;&=QR@A&=;@&
=y4 (đánh cắp thông tin trên đường truyền, đánh cắp nội dung
CSDL).&
Thành phần Khôi phục sau sự cố
!  \v4&=;23%&~OE&nO?&m}&=•@&=C•=s&mI;&me=&67&Ey=&89&:;<3&:]&r=&
@C•=&4e&=CSp&&
!  .D4C&=;FN&4j@%&~S&POE&nO?&=r@C&n7@&69@A&4HI&./0#s&E‹;&
=CIi&P•;&:2@&./0#&NCO;&PQR4&AC;&@Cj@&:M;&=>?@A&@Cj=&Wk&
X#?AZ&
!  .D4&=C]@C&NC5@&CŒ&=>R&h3D&=>l@C&WCb;&NCv4&mI3&m}&4c%&&
[  Bộ'phận'quản'lý'nhật'ký'(Log'manager)'%&POE&nO?&AC;&@Cj@&P5i&PH&
6]&4Cr@C&_D4&E‹;&=CIi&P•;&=>2@&./0#&6]?&@Cj=&Wkp&

[  Bộ'phận'quản'lý'khôi'phục'sự'cố'(Recovery'Manager)%&8}I&6]?&@Cj=&
Wk&PS&NCv4&C€;&:M;&./0#&67&=>M@A&=CD;&@C•=&h3D@&=>Q‡4&Pe&X$>M@A&
=CD;&=C?O&=•=&4O&•…$"&4HI&./0#Z&
Xử lý truy xuất đồng thời
!  Mục tiêu:
–  Đảm bảo các xử lý có thể được thực hiện đồng thời mà làm không làm
cho dữ liệu bị mất tính nhất quán (vi phạm các ràng buộc toàn vẹn)
!  Các thành phần con: Bộ phận quản lý giao tác (Transaction
Manager & Locking Manager)
!  Phương pháp:
–  Sử dụng khái niệm giao tác (transaction) để biểu diễn một đơn vị xử
lý, một giao tác bao gồm các hành động mà được thực hiện tòn bộ hoặc
không có hành động nào được thực hiện.
–  Bộ lập lịch (scheduler) 4e&@C;<E&6v&:jN&w&:o4C=C}4&C;<@&=V&@&A;I?&=D4&
WCb@A&=D4C&n;<=&67&=Cf;&A;I@&mI?&4C?&WF=&h3O&WCb@A&6;&NCME&=r@C&
@C•=&h3D@&4HI&./0#.
–  Sử dụng ct&4CF&WCeI&X:;>wZ&để khóa các đơn vị dữ liệu nào đó khi cần
"&@Aq@&x&A;I?&=D4&4g@A&=CI?&=D4&:2@&w&Pt@&6o&89&:;<3&•i&=M;&4g@A&w&
P;SE " Hỗ trợ để lập lịch.&





T
Điều khiển đồng thời (tt)
-3)x3)#
+123'(#d#
+123'(#3#
+123'(#2#






































1*+!#yz'm#(!{2#
1*+!#(%|'#(}#
T1#
T2#
T3#









Điều khiển đồng thời (tt)
!  Vấn đề d`I8:?4W&
–  Do&mu&8v@A&4t&4CF&WCeI&@2@&4D4&A;I?&=D4&m|&NCO;&4Cf&WC;&45@&=>3i&
_3•=&w&Pt@&6o&89&:;<3&PI@A&no&WCeIp&
[  $l@C&C3c@A&4Cf&6‚@C&6;†@&E]&6Ž@&WCb@A&PQR4&=>3i&_3•=&Pt@&6o&89&
:;<3&no&WCeI&A‹;&:]&0`I8:?4W&XWC?D&4CF=Z&
a  .D4&A;I?&=D4&4Cf&PR;&:Ž@&@CI3&PS&PQR4&4•N&NCD=&=];&@A3i2@&6]&WCb@A&
A;I?&=D4&@]?&4e&=CS&C?]@&=•=.
[  $C]@C&NC5@&h3O@&:k&A;I?&=D4&m|&NCO;&4I@&=C;<N&6]?:&
a  -?y4&CHi&n•&EJ=&=>?@A&4D4&A;I?&=D4&ALi&8`I8:?4W&

a  -?y4&@Aq@&4Cy@&=V&=>Q‡4&PS&WCb@A&nI?&A;f&mOi&>I&8`I8:?4W&
Xử lý truy vấn
!  …;S3&8;†@&4L3&=>3i&6•@&T&8M@A&@Ab@&@A9&4•N&4I?&X/)#Z&6]&
=C}4&C;<@&4L3&=>3i&6•@&4e&C;<3&h3O.&
!  )3`>i&4?EN;:`>&[&n;2@&8o4C&=>3i&6•@&
)3`>i&NI>m`>#
)3`>i&
N>`N>?4`mm?>&#
)3`>i&
?N=;E;•`>&
[  ‘Li&8}@A&4•3&=>G4&NCL@&=r4C&4L3&=>3i&
6•@&8Q‡;&8M@A&4Li&
[  B;SE&=>I&@A9&@AC‚I&4HI&4L3&=>3i&6•@&
[  .C3iS@&P•;&4•3&=>G4&4Li&mI@A&@Ab@&
@A9&PM;&mc&h3I@&C<&
[  /{N&_FN&4D4&NC’N&=?D@&@C“E&Ev4&Pr4C&
=c;&Q3&CeI&4L3&=>3i&6•@
Quản lý lưu trữ
!  $C]@C&NC5@&4e&@C;<E&6v&P;73&WC;S@&6;<4&P‹4dAC;&89&:;<3&
h3I&:M;&A;9I&nJ&@C‡&6]&=C;F=&no&:Q3&=>9&
!  #]E&6;<4&6‡;&4D4&WCD;&@;<E:&
[  $jN&=;@&89&:;<3&
[  $V&P;S@&89&:;<3&
a  #Q3&=>9&4D4&E`=I8I=I&X/;23&89&:;<3Z&67&&4•3&=>G4&4HI&./0#s&Py4&n;<=&:]&
:QR4&P€&4HI&./0#&
[  .CŠ&Ev4&
a  !;GN&4C?&6;<4&=lE&W;FE&09&:;<3&PQR4&@CI@C&4Ce@A&
Phân loại HQT CSDL
!  $C`?&Eb&Cl@C&89&:;<3% &&
[  KCL@&4•N&

[  \M@A&
[  )3I@&C<&
[  ~c;&=QR@A&&
!  $C`?&W;F@&=>G4&=r@C&=?D@%&
[  $jN&=>3@A (Centralized database system)&
[  BCD4C&d&4CH (Client server database system)&
[  KCL@&=D@ (Distributed database system)&
!  $C`?&Py4&=r@C%&
[  -)$./0#&=Cf;&A;I@&=C}4 (>`I:ˆ=;E`&8I=InIm`&mim=`E)&
[  -)$./0#&4Co3&:Œ;&4I?&(high fault tolerance database system)&
[  -)$./0#&PI&NCQt@A&=;<@ (multi-media database syste)&&
Mô hình phân cấp
DEPT
EMP
CHILD OFFICE
!"#$%&'()*"+#%,
! /0#&'(1/2#,!03/4"(567#'(6+#,
!567#'(164689,
17,$25M
Adam,$14K
John,$12K
Fisher,$10K
Peter,$4
Sue,$10
12,$500
Dave,$7
12,$500
12,$500
Mô hình mạng
DEPT

EMP
CHILD
OFFICE
!"#$%&'()*"+#%,
! /0#&'(1/2#,
!03/4"(567#'(6+#,
!567#'(164689,
17,$25M
Adam,$14K
John,$12K
Fisher,$10K
Peter,$4
Sue,$10
Dave,$7
12,$500
Mô hình quan hệ
/3?(&X0^K$&”s&…*0!^$Z&
a~~2+3&X„••–.^&”s&/–—^Z&
3R?&X(+\^s&/+#+•1Z&
+!21/&X –#0&(+\^s&+!^Z&
•a)C-&X0^K$&”s&(+\^Z&
a~~-?)2'm&X(+\^s& –#0&(+\^Z&
a++%?23/&X(+\^s&„••–.^&”Z&
0^K$&&
17& 25M&
„••–.^&
12& 500&
^\K&
Fisher& 10K&
John& 12K&

Adam& 14K&
˜„•B/&
17& Fisher&
17& John&
17& Adam&
a++%?23/#
Fisher& 12&
John& 12&
Adam& 12&
–#0&
Sue& 10&
Peter& 4&
Dave& 7&
„••/K•–(!&
Fisher& Sue&
Fisher& Peter&
Jone& Dave&
Phân loại HQTCSDL
!  $C`?&W;F@&=>G4&=r@C&=?D@%&
$jN&=>3@A:
KCL@&=D@&
BCD4C&d&4CH&

×