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

Giáo trình nhập môn hệ cơ sở dữ liệu

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 (9.35 MB, 281 trang )


N G U Y Ễ N TUỆ

Giáo trình




C

Ơ

S

O

D

í7\í/ Ihỉỉi l()n ílìử /ìlìã ỉ}

N H À X U Ấ T BẢN G IÁ O D Ụ C



L

I



l l




i'h ịu tních nhiộin Muìt bcin :
C h u t ị cli ! H ) Q I k i ê i n T o n g G i a m đ õ c N C X ) 1 R Á N A I

Phó Tong Giam đôc kiêm Tổng biên tập NGUYÈN QL Y '1HA(0
T ô í /ìưv hcỉn thíỉo ! '
C hủ tịc ii H Ĩ)Q 1 kiêm G iám đôc CVtng tv C'P Sách O H - D N

TRẦN N H Â T TÂN
B iâ iì t ậ p vả sửcì / vừi / / ! :

D ỏ Ỉ IỬL’ Pỉ lú
T rìn h hà V hìd :

LƯU C ỉ l í DÓNG
c 'hê hán :

Q U A N G CHÍ Ni H

Công ty Cô phần sách Đại học - Dạy nghế - Nhà xuất ban Giáo dục glữ quy'ẽn
còng bò tác phãm.
Moi tổ chức, cá nhàn muốn sử ơụng rác phẩm dườ mọi hình thCrc phải ơi/ạ; sự ơóng y auH
chù sò hCru quyền tàc già.

04 - 200VCX1V2 1 2 - 2 1 1 7/(}lJ)

M;1 số : 7B662>9 - DA I



H ời nói đ a u
( ác hộ C(r sư dữ liệu dónu vai Irò quan trọnu troim v iệc ửne ciụna
còn\ ới sự liên bộ của kỳ thuật, nhiều írnu dụnii mới cùa c ơ scr

dừ liệu cũni:

tlant’ đư ợc pliát trièn mạnh. i ) c c o thè thiết ke. cài dặt và ứnu dụiiL’.

tot

các hẹ 'ca S(V dừ liệu, trước híi't cân hiẻu rõ c á c khái niệni c ơ ban cần

llìicl. (iiáo n in h IShập tuôn h ệ c ơ s ớ d ữ liệu nhàm tranu hị cho sinh
\ ièii

cúl'

k v t h u ậ t CO' h a n c u a c ơ s ư d ữ l i ệ u I r u y è n t h ố n u . V ứ i n h ữ n g k i è n

thưc do. siiih \ itMi c ỏ ỉliè x à \ tiụnụ dư ợc các cư sư dữ liệu tru sền tlióiìu

dò dua \ à o írtm dụn<’ tronu cuộc sônu hàne níià\ \ à cũnu là ca so dê
niỉliièii c ử u s â u hcrn. t ạ o ra c á c c ơ S(y d ừ li ẹu d á p ử i m \ ói c á c \ ê u c â u

ứnu dụ n e inới. ( ì i á d iriniì hao ựỏiii 7 clnayim :
( /iirtrnự I. C ác k h á i Iiiộm CO’ bàn về hộ CO’ sò’ d ữ liệ ii
c l ì i a n m n àv t r in lì Iiax c a c k h á i Iiiệ m C(T ban \ è hộ c a S()T dù liệ u như
c


\ à íiiiìo diện, c o n imirời sư dụnti hệ c ơ s ở dừ liệu. I h ò im qua chu(rn <4
Iià\. Iiuuời d ọ c năni cluợc (.lịnh imliĩa và ý imliĩa của c á c tluiậl imữ (.iùnụ
troim liè c o s a dữ iiệu.

( 'iiinmíị II. Mô liinh ĩ hực flic - Liên kcl
MỘI t r o n u c á c p h i r ơ n u ịiliáp t hi ê t kô c ơ s o d ữ ỉ i ộu ( q u a n hộ) la híìt

dàu lii \ iộc (hict kê luợc (!ỏ t!iực ihè - liên kCM, Chươnu nà\ Innh bà\ các
k h á i n i ệ m C(T b a n c u a I11Ò hì nl i t l i ụ c t h ê - l i ê n k e l v à c á c h l l i i êt k è n ó .

( 'lìinmí; / / / M ô h ìn h quan hệ
c hirơnii này uiúp c h o imuời d ọ c làm CỊuen với c á c khtii niộni c o ban
\ è niò hinh c ơ s ơ dữ liệu quan hệ. các rànu b u ộ c trên m ỏ liìnii C(í SII' (iữ
l i ệu tỊiiaii h ệ \ à c á c l i tliiỏt k ế C(y s ớ d ữ l i ệu q u a n h ộ b ằ n u v i ệ c c h u v c ỉ i t!ôi
t ừ m ò liinli t h ự c i hô - l i ên kốt.

3


( 'hiioriỊ^ Ị l

i ác |)hép toán tr c ii mô [lìn h CO' Síi' (lũ liệ u (ịu a n hệ và

ngôn nịĩũ SQl.
D ê c ó thò là y d ư ợ c t h ỏ n u tin ra từ n i ộ l C(T S(y d ử i i ệ u q u a n h ệ . nm rởi

diiim phái liicu rõ Ý Iiuhĩa, m ụ c đích cua các tliao tác trên c a s a d ữ liộu.
C á c p h é p Uián tròn c ư S(T d ừ l i ệ u q u a n liệ s c d ư ợ c Irìiih bà\- \ à i!Ìái thicli


rõ Ironu clunnm nà\'. C iinti với các phcp toán dó. chưcrna nà\ con trinh
bày một iiíỊÔn nuữ dược sư dụiiỉi cliiì yeu tronu các liệ cỊiian trị 0(T sơ dữ
liệu quan liệ (nuòii nuiì SQL). Nhừnt 2 kicn tliức ca ban vè im ôn imử
SQL giúp neirời dọc có thè diỗn dạl dược các truy v ắn doi \ ới c a sơ dữ
liệu quan hệv Nựoài ra. troim ch ưan u nay còn de cập dciì inột pl iưaim
pháp toi ưu truy van ; loi ưu hầim cách hiến dôi các hièii thức đại sô
quan hệ thành các bièu thức tưmm diUTiie \ ới hy \ ọnu la sẽ d ư ợ c thục
hiện nh an h h
ClìUĩrníỊ ì ’, l.ý t h i i y t t xâv tlựng cơ sổ' (lữ liệii q u a n hệ
Một phươim pháp khác de xâ> dựnL: một c a sơ dữ liệu quan hệ là
xày dựnu dựa tixMi phân lích. Kỹ thuật chu veii là dựa trên 1} th u y è t phụ
thuộc hàm. pliàn tích các pliụ thuộc hàm Lĩiữa các thuộc tiiih c u a một
quan hệ. x á c dịnh dạiiu ch uân cùa quan lìệ và tácli cá c quan hệ d e Ció niộl

cơ sơ dữ liộu bao uồm các quan hệ (Vdạnu chuấii tliícli hợp. tối thiô:u hoá
sự dư thừa [hônii tin. Nhừnu vấn đề dưực trìĩihi bày tronu chưansì n à v là
dịnh nuliĩa và linh cliất của các phụ thuộc iiáni. các (lạnu chiiân cua quan
hệ. các phưaniỉ pháp tách (uhuân hoá) quan hệ.
( 'ìvroníỉ 17 K h á i niệm ve co’ sỏ' (lữ liệu phân tán

'ỉ ronu diều kiỌn c o sở kỹ ihuật dã dược phát tricn \ :i >èu cầiu m(v
rộim v i ệ c q u a n ly hiện na y, v i ệ c p h àn tán n i ộ l C(r scr clữ liẹii t iè i) iriột hộ

thông mạnu m;'i\ tính là một hưmm phát triC'n mạnh mẽ cua c á c ửiie
dụng cơ sơ dữ liộii. Chinmo nàv trinh bà\ kliái niệm \ ỏ c o sơ dĩữ liệu
phàn tán : định imliìa C(T sơ (.lữ liệu phàn lán, các d;jc irirnu cua C(r sở dù
liộii. cá cl i xà> ciựim C(y s ơ d ừ liệu, c á c p l i i n n m p h á p pliàn đ o ạ n , dịịnli vị

c a sơ dữ liệu. Ihực hiện các truv van trên cơ sờ dữ liệu. Nhũrna, khái

niệm này uiúp cho nmròi dọc làni quen với C(T sơ dừ liệu phân tán \ à làm
c ơ s ơ d ê di sàii nnhicMi c ử u v ê c a s ứ d ữ li ệu ph àn íán v è sau.

( 'ìnarnịỊ 17/ Luii trĩr CO’ sỗ' (lữ liệu ỏ’ bộ nhó' n«>oài
Một tronu các hước thiêt kè một cơ sỏ' dữ liệu !à tliièt k ẽ \'ậ t !y.
neiiĩa là thièt kê \ iộc lưu trữ cơ sơ dữ ỉiệu trên bộ nhó nuoài \ à phiium '2


pliap IriiN cập dẽn !1 Ó. Cluroiiii nà\ tniili bà\ một sô phu'crniz pliap liru Irũ
các lĩlc c a s a (lử licii írC-n bô n h ó imoai \ a mội so kỹ thuật làm lăne lốc

dộ liiii kicin dừ liệu
( liiio triiìli co icli cho eac sinh \ iêii nuành Cônu lìuhộ tliòim tiii cũnu
như làl ca Iihửnu ai I11UÒI1 liin hièu \ e (J() sư clữ liệu. ỉ)ê dọc lỗl uiao Irmh
nà\. Iiuiròi dọc cân co mộl sò it kiên thức vỏ Toán cao cáp. l oàn rời rạc
và ỉ 111 học CI) so.

Mặc dù dã cò iiănu iriiili bà> các van dc một cách chinh xác \ á dễ
hiêu. iLiy nliièn do lliời man \'à kinh imhiệm còn hạn chê. chăc chăn giáo
trỉiih \ ầ n còn nhicLi thieii SÓI. Mặt kliác. đây là một tíiáo trinh nhập mòn
nên kliônu cỏ dièii kiện dô trình hà\ nhieu khía cạnh khác cua co sư dữ
liệu nliir quan trị c a sơ dữ liệu, an ninh cơ sờ dừ liệu... Tác uia mong
nhận được sự uỏp ý cua bạn dọc dê cuốn sách dirợc hoàn thiện han iroim
lần xuất ban saii.
I hư uỏp ý xin uưi \ ề ; Cònti ly Cò pliần Sách ỉ)ại luK' - Dạv nghê,
25 llàn 1h u \è n . 1iủ Nội.
7;i( ’ (j/À


CHUONC; 1


CÁC KHÁI NIỆM C ơ BẢN
C ũnií như các Píiành chuvèn môn khác, cơ sư dữ liệu cũim
các
thuậi nụừ riêim của nó. 'ĩroim cỉurơiig này cliúrm la làm quen \ ớ Cik'
kliai niệm cơ ban trong hệ cư sớ dữ l i ệ u như cơ s a dừ liệu, hệ quan t'Ị C(T
sơ dữ liệu, inô hình cơ sờ dữ liệu và các thuật ngừ c a ban khác.

1.1. HỆ C ơ S ở D ữ LIỆU
1.1.1. Cơ sờ dữ íiệu
Cơ sờ dữ liệu và kv thuật cơ sớ dữ liệu đã có ãnh hưởng rất lứn dếi.
việc sứ dụim máy tính. Có thè nói rầng, c a sư dữ liệu dóng vai trò quan
trọnụ trong mọi lĩnh vực có sir dụng máy tính như uiáo dục, thươiiíí mại,
kỹ nuhệ, khoa học, thư viện,... riiuật nmì c a sứ dữ liệu trờ ihàiih một
thuặl ngừ phô dỊing.
MỘI cơ sư J ữ liệu là một tập hợp các dữ liệu cỏ lièn quan với nhau.
Iiìỏ hinh hoá các dối tiụyng của một phần the ụiói thực (một cônụ ly, mội
irườim học....). D ữ liệii là nhừnu sụ kiện có thè uhi lại dược và có ý nuhĩa.
Vi dụ, de quan lý việc học tập troim mộl mỏi truờnt’ đại học. các dừ
liCu ià các tiiỏiig tin về sinh viên, về các mòn iiọc, (liếm thi,... Cliiinạ ta
lò chức các dừ liệu dó thành các bantĩ và lưu trữ chúng vào sô sách, hoặc
sư dụim một phan mềm máv tính dể Iiru trừ chúim trên máy tính. 'l'a có
một lập các dữ liệu có liên quan đến nhau \'à niarm nhiều ý nehTa. đỏ là
một cư sở dữ liệu.

1.1.2. Các tính chất của một cơ sở dữ liệu
Một cơ sớ dữ liệu có các tính chất sau ;
1.

Một cơ sở dừ liệu biểu thị một khía cạnh nào đó cùa thế giứi thực.


Những thay đồi cùa thế giới ihực phài dược phản ánh một cácli Irunu
thực vào trong cơ sở dữ liệu.


2. Mội co sờ ilữ liệu !à niộl tập hợ|) dữ liệu iiên kếí \ớ i nliau một
cacli lỏuic \;ì inaiii.’ một ý nuhĩa c ô hữu nào đỏ. M ột Lơ S(í dữ liệu khôiiL’

Ị>hai la niộl tập hợp tùy tiện.
3. MỘI C(r S(f tlừ liệu duợc tliiêl kê va duạc piiõ bièn oho IIIỘI mục
ctícii riòiiu,. No co niột nhóm nẹuời sư (.lụng có chu dịiih va có niộl số
inìg cỉụnụ d ư ợ c \ á c (lịnh phù h ạ p với môi quan tâm cua nmrm s ứ dụiií’.

Nói cách khác, mộl c a sơ dừ liệu cỏ một neuôn cunu câp dữ ỉiệu.
niội niức dộ liiXTim tác với các sự kiện tronu tlic tiiứi thực và mội nhóm
nmnvi cỊuan tàni tích cực dếii các nội dinm của nó.
Một cư sở dừ liệu có thê có cờ tùy ý và có độ phức lạp thay dôi. Có
nhìnm cơ sở dừ liệu chi gồm vài trăm bàn ehi (như cơ sơ dừ liệu phục vụ
việc quản lý lưcmtí ớ một cơ quan nhó), và cỏ những cơ sở dừ liệu có
dune lirợnụ rấl lán (như các c a sờ dừ liệu phục vụ cho việc tinli cirớc
diện thoại, quan lý nhân sự trên mội phạm vi kVn). Các cư sờ dữ liệu
Ịiliai d ư ợ c tô c h ứ c qu án lÝ s a o c h o nliữniỉ nmrời sir d ụ i m c ó thè lì m k i ê m

dữ liệu, cập nhật dừ liệu và lay dữ !iệu ra khi cần tliiêl. MỘI co sờ dữ liệu
có thê dược tạo ra \ à du> trì một cách thu công và cunu có í!ic (iuọc tin
học hỏa. Một cơ sơ dữ liệu lin học hóa được tạo ra và duy tri banẹ một
nlióni chưcTim trình ứim dụnu hoặc băng một hệ quan írị co sà' d ữ liệu.

1.1,3. Hệ quản trị co* sờ dữ liệu
Một hệ íỊiiun irị ccr sớ d ữ tiệỉi là niột tập hợp chiuynti trình giúp cho

aiĩiròi sứ d ụ n c tạo ra, bào iri và khai thác niột cơ sở dĩr liệu. Nó là một
hệ thốnụ phân mềm phổ dụim. thuận tiện cho quá trình dịnh ngliĩa, xây
ciựnti và thao tác cơ sở dữ liệu với các ímg dụng khác nhau.
- ỉ ^ ị n h n íỉh ĩa một cơ sở dừ liệu bao gồm việc đặc tà các kiếu dữ

liệu, các cấu trúc và các ràng buộc cho các dữ liệu sẽ dược liru trữ trong
c a sơ dừ liệu.
- X ú v íỉựnịi một cơ sờ dừ liệu là quá trinh lưu trữ các dừ liệu trên
các phưorng tiện kru Irừ được hệ quàn trị cơ sờ dừ liệu kiêm soát,
- Thao tác một cơ sớ dừ liệu bao gồm các chức năng như truy vẩn
cư sơ dừ liệu dê lấy ra các dữ liệu cụ thê, cập nhật cơ sở dữ liệu để phán
ánh các thav đôi trong thế giới nhò và tạo ra các báo cáo từ các dữ liệu.

7


Các liệ quàn Irị cư SO' dữ liệu diini> ciè thô hiộn một cơ sờ dừ liệu tin
học hóa cỏ thê là pliỏ ciụnu (là một phân mcm dónụ uói). lioặc cỏ tliè
ía cliuvèn dụntí (là niột lập các plian mềm dược tạo ra với một n ụ c
dich riênt>).
Nmròi ta íiọi cơ s a dừ liệu và hộ cỊiian trị cơ sở dừ liệu bàng n ộ t
thuật ntỉữ chung là /ĩệ cư SO' íỉữ ìicii (I)atabase system). llình 1.1 mc ta
một m ỏi triKTim dưn uian cua hệ c ơ sở dữ liệu :

Hình 1.1. Môi trường đơn giản của hệ co> sở dữ liệu

1.1.4. Các đặc trưng cùa giải pháp cơ sờ dữ liệu
ĩrướ c khi khái niệm cơ sở dữ liệu ra dời. hệ thống tệp (tìle) là một
phương pháp được áp dụníì trong việc quán lý. Một tệp có thê dược xcm
là inột cặp hồ sơ lưu trừ các thông tin liên quan đến tìmg công việc riêng


biệt. Ví dụ, trong một cơ quan, bộ phận tài VỊI sẽ có một cặp hồ sơ liên
quan đến lương của các nhàn viên ; hộ phận tổ chức có cặp hồ sơ liên
quan đến vấn đề nhân sự,... Việc xừ lý để lấy ra các thông tin như các
thống kê về lương, về quá trinh công tác,... lúc đầu được thirc hiện một
cách thù công. Dần dần, khối lượng thông tin ngày càng lớn, việc x ứ !ý
8


t h ỏ im tin nL’à \ càiiLí Ịihử c tạp. Iiụ irừ i ta sir (iụ n u m á)' tính \à () v iệ c q u a n

iý. C'ác cập hò S(T d u ợ c c li u \ ê ii thành các tệp Ucn niáy lính và v i ệ c x ư lý

lliònu tin dirợc llụrc liiệii hăiie cách lập trinli (ironu một imòn Iiụữ lập
Iriiili tlic liẹ 3).
Viẹc CỊIUIII lý tlic(> ưiai pháp liệ ihônu, tệp có nhiêu nliược diêni. riiứ
nliiil. do la sự tiir tlúra thỏim tin ; ciinu một tliòim tiii duực lưu Irữ nhiòu
làn (chănu iiạii. chinh sacli nhãn \ ÌL'11 cỏ mặt irorm lộp liRTnu \ à cũnu cỏ
mặt cà troiiu tệp nliàn sự). Dicu dó eày ra việc lãnu phí bộ nhớ \ à dễ gây
sai sot tronii khi cập nliật dữ ỉiệu. dề sinh ra các dữ liệu khôrni dúnu dãn.
i liử hai, dó ia viỌc ptụi tiniộc uiừa chirơnu trinh ửim dụng \ à dữ liệu.
Mồi khi có sự tha> dòi cấii Iríic tệp và các dừ liệu tronu tệp, chương
trinh írim ciụrm khai thác thôtm tin trên tệp đó cũng thay dồi theo. Diều
dó uây ra khỏ khăn kVii cho \ iệc bao trì. Giài pháp c o sở dữ liệu ra đời
dã giãi qu> ét dược nliừng nhưực điêm đó. Cụ thế. giai pháp cơ sơ dừ liệu
có nhữnu dặc trưim sau :
1. Ban chất tụ'
• inỗ tả cúa hệ• CO’ sỏ' d ữ liệu



Một dặc trirnu c a bàn cua uiai pháp c a sở dừ liệu là hệ thong cơ sờ
dữ liệu khỏim chi gồm có bán thân cơ sở dừ liệu Iiià còn có cà định
nuhĩa. hoặc mô tà dầy du vè cấu trúc cơ sở dữ liệu và các ràng buộc.
Dịnh nuhĩa nà\ tlirợc lưu trừ trontí từ điển hệ thống, nó chứa các ihònu
tin nlìir cầu trúc cúa mỗi tệp, kiêu và dạiiL> liru trừ của từng mục dừ liệu.
C’ác thônu tin dược liru trữ tronụ lừ dièn uọi là siêu d ữ ỉiệư (meta - data)
và chủng mò ta cấu trúc cua dữ liệu im u\èn tliiìy. Phần mồm hệ quán trị
cơ sờ dữ liẹu và nhữnu nmrài sử dụng cơ sớ dữ liệu sứ dụiii; tir diC'n đè
lay lliònu, tin \ e cấu trúc cua c a sở dữ !iệu.
2. S ự (lộc lập f>iiTa chuoTiỊỉ trình và d ữ liệu

I ronti liộ tlìốnu tộp, cấu trúc cua các tẹp cơ sở dừ liệu được nhúng
vào trong các chưưnu trình truy cập. Vì vộv, bất kỳ một thay dối nào về
cấu trúc cua một lộp cũim đòi hoi phai thay dổi tất cà các chương trình
truy cập dến tệp dỏ. Nmrợc lại. các chưcmg trình truv cập của hệ quàn trị
cơ sở dữ liệu khônu dỏi !ioi \ iệc ihay dôi như thế. c ấ u trúc cùa các tệp
dừ liệu dược lưu trữ trong (ir diến tách rời với các chiumg trình «niv cập.
Tính cliấl này tzọi là sự dộc lập dừ liệu

chươnịi trĩnh.


Hô trọ các khiiti” nlùn ilử liệu nhiều íhànlì [iliần
M ộ l c ơ s ơ d ữ l i ệ u c ó n h i è u n g ư ừ i SII’ ciụniỉ,. n i ồ i m ộ l n u ư ớ i c o tlic d u :

lioi iiìột phôi caiih lioặc môí khuiiu ìihiii (\ic\v) khac Iihaii, Mộl khuiiL;
n l i i n c ỏ I h ê l à I i i ộl l ậ p c o n c u a c ư s ớ d ữ l i ẹ u , l ì o ặ c n ỏ c ó t h è c l i ử a c a c di r

l i ệu ao. d ó là c á c đ ừ i í ệu d ư ợ c i ri oh ra tù' c á c t ệ p VJƠ Sif tiir l i ệu k!iác n h a u


nhtnii!: khùng dirợc lini trữ mọi cácii iT) ráiiu. ỈVIỘI hẹ cỊuan trị cơ sơ dử
ỉịệu nỉiièu nmrởi su clịUig pliíii cune càp niiicii CÔIIL! cụ dò (lịiiii Híihìa cac
kíiunu nhin nhiêu llianli pliần.
4. C hia sẻ d ừ ỉiệu và nhiều nịiuòi sir tlụnị»

Một hệ quan irị c a sư dừ liệu nhiều người sứ dụnu phái cho phép
nhiều nuười sử dụnu iruv cập dôna thời dcn cư sò dũ' liệu. 1 lệ quan trị csớ dữ liệu phái cỏ phàii mèni kièin tra cạnh Iranh đc dam bao ràng, mọi
nuiròi sứ dụnu cập nhại dên cune mộl cư sơ dữ liệu pliai dược thụrc hiện
tliL-o c ách đ ư ợ c kicm ira dè cho kel qua cua các cập nhật la dú iig đàii.

1.1.5. Các khá năng của một hệ quản trị cơ sờ dữ liệu
Ntioài các chức nán” ớ trên, một hệ quán trị C(í sở dừ liệu còn co
nhiC'u khả năng uiúp CÌK) nụưòi quán trị hộ thoim thực hiện việc thiêl ké.
quaii irị \ à sìr dụnịi các hệ cơ sở dữ liệu nhièu Iiạirừị đunu. Các chức
Iiãniỉ d o là :

1. K icm t r a s ự (íir t h ừ a
Dư thừa dữ liệu lìỉihĩa !à cùng inột dừ liệu dược ỉưu irũ’ iihicLi lằn
tronu C(if sớ dữ liệu. Sự dir liùra duii (tên nhièu \ an dc ;
- I'hứ nhấl. phai thục hiện cập nhạt ciiiii’ một dừ !iộu nhiều lẩn, việc
i!o íun nhièii CÔIU’ ph'i va ha\ tian dcn sai sót,

-- Thứ hai, ciir llìừa iliôim lin làm lâng plii bộ như iuii trừ.
- Hiứ ba, các llic lưu trừ cùiiiỊ mộl dìr liỌu cỏ thè trơ nC'11 mâu thuẫn
khi viộc cập nhật kỉiôim dược thực hiện trèn tất cà các filc đó.
Kicni tra dư thừa cùa ỉiẹ quan trị cơ sở dừ liệii la ụiain các vấn đề trèn.
2. H ạn chế các tr u y cộị) kh ô n g đuự c phóp

Khi có nhiều imirư! sư dựim dùiiii chuim một [lệ cơ sư dữ liệu, sẽ có

một số người sử liụnu khônẹ dược phép truv cập íẮi ca thòng lin cua hệ
10


tliõiU!. i ' o n m r ờ i c h i đ i r ự c C|U\ỎÌ1 Irti)- c ạ p đ c l à \ ' i h ỏ n u t i n íìr Cii Mí dìV
l i ệ u r a l ì hi Hì í ^ k l ì ò n u t í ư ạ c c Ị u y c n c ạ p n h ạ t .

i ) i c u ỏ o ( ! ầ n ( t cỉ ì \ Ỉ C C p h í ì ỉ

k i ò i n í n i c ; í c t h a o í á c t r u y c ạ p c u a n m í ờ i sir cĨỊUiíi. i l ộ q u a ỉ ì ĩrị c ư s ơ d ử
l i c u c i i ĩ ì i i ca|'» ĩ ì ì ột h ộ i h ỏ n u c o i i c á p p h é p \ ' à a n n i n l i . N e u ừ i q u u ĩ ì ỈIỊ h ệ
t i i ỏ n u c o l l i ê sii' d ụ n u b c í h ỏ H i : c o n n ã y đ c l ạt) r a c á c t ài k h o a ỉ i c l u i n u i r ơ i

SIỈ' dụiìi> va haii chC- lru\ cập Irỏn các lài khoan dó.
3.

cap viẹc luu t r ừ lâu dài cho các đối íu ọ n ịí chuoMí* iru ih

và các câu trúc d ừ liệu
«
( ac dõi tuợnLi dĩr liệu phai d ư ợ c lưu trừ láu dài dê pluic \ ụ cli(!

nliiÔLi chiroim trinh khác nhau. Các hệ quàn trị cơ sư dừ liẹu cuiiii càp
các pliưtmu tiện dè lưu trữ cư sở dừ liệu dirtVi dạiiii các (ĩle cùng Iihir viỌc
hiên dòi dừ liệii từ khuôn dạnii nie sanu cấu trúc biến cua chiKíim trình.
4. í ho piiéf> th a m chiếu và hành d ộng bằii}Ị cách sừ ilụníi eác
quy tăc

{ íic ỉiè tnian trị CIÌ thè ciing câp các quy tăc suy dicn dô su\ ciien ra
các thỏnu ÍÌ!Ì niiĩi từ cac dừ liệu dược lưu trừ.

5. C uiiK cấp Iiliiềii ịĩiao diện n g u ò i sử dụiiịi

Do co sa dừ iiệu có nhiêu nmrời dìmíỉ có (rình dộ hiêii biẻ( sữ clụnụ
(.ơ sơ cỉừ ỉiộii khác n.ỉiau, niộl hệ quán trị cơ sứ dữ ỉiẹu phai cuiiu cầp
nliicu iíiao diẹn nưuàị sư dụnụ. Các uiao diện dỏ la các nuôn !ìgữ íruv
\'àn c h o imiròi sứ d ự n g hinli ihườim , uiao diẹn nụ ỏn nuữ lập trình cluì

các niiiiòi ỉập irinh ừnụ dụiisỊ, ưiao diện b àn ” chọn ỈKìặc ỉnẫu biêu (HỌÌ là
iỊÌLio diựn ììi^icời íỉiiní’ đó hoạ) cho những nụưừi sử dụiio dộc lập,...
6. JỊii‘ii diễn các moi lièn hệ phú c tạp giữa các d ừ liệu

Một cơ sơ clũ liệu cu Ihê íỊồm nhiều (Jữ liẹu liêii két \Ỏ 1 nhau Ihco
Iihièu cácli, Một hệ qiiaii Irị cơ sờ dừ liệu phai có khà nãiig hiổu diễn củc
niõi liên hệ ỊtluVc tỌỊ') uiũa các dữ liệu cũne như việc lây ra. hoậc cập nliàl
các dữ liệu cỏ liên quan vói nhau một cách dễ dàniỉ và có hiệu qua.
7. Á p dặt các ràn g buôc toàn vẹn

Nhieu ứnu dụnc cơ sở dừ ỉiệu có inột số rànạ buộc loàn vẹpi phái
thoà inãn dôi \ ới các dữ liệu, ỉỉệ quàn trị cơ sở dừ liệu cuim cáp cãc kha
nănii dịnh imhĩa va áp đặt các rànii buộc đó.


8. C iinị; cấp việc sao luii và phục hồi

Viẹc khai tiiác và sir dụnti hộ ihôiit’ cơ sa dữ liệu kliònẹ tiiè Ir.uili
khoi các honti hóc ve phân cứim \ à phan nieni. Sau mồi lần lioim lìỏc.
dữ liệu cân phai dược phục hôi. llệ thỏim con sao lưu vá phục lỉỏi của hệ
quan Irị cư sư tiữ liệu có nhiệm VỊI dó. Ví dụ. nêu một iiệ ihỏne may tính
bị hone một chiRrní> trinh cập nhặl phức tạp. thi nó cỏ nhiệm \ ụ dani h;u)
răim. cư so dữ liệu dược pliục hòi dC'ii Irạne thái cùa nó trước khi chư rnu

trình bất dầu thực hiện.

1.1.6. Ví dụ về một cơ sở dữ liệu
Chúnu la hãy xetn xét một cơ sở dữ liệu mà nhiêu nuirời đã quen
biết, đó là cư sờ dừ liệu 'I RUỜNG. Cơ sở dừ liệu này liru trữ các thòng
tin liên quan dến sinh viên, các môn học, diem... trona một trường dại
học. Cơ sờ dữ liệu dược tô chức thành 5 bàng, mỗi bủnu lưu trừ các ban
lỉhi dừ liệu cùiiíí một kiêu. Bảng SINH_V1ÊN lưu trữ dữ liệu ve các sinh
viên ; báng MÔN_I1ỌC lưu Irừ các dữ liệu về các môn học ; bang
B lÉ 'r _ T R l/Ở C lưu trữ thônu tin về các môn học cần biết trước cùa các
môn học ; bang HOC PỈỈÀN lưu trừ các dừ liộu về các học phần của
các môn học ; bàníỊ DI ÉM kru trữ diểm cùa lìrniỉ học phần cùa các sinh
viên. Cấu trúc của co sở dừ liệu và một vài mẫu dữ liệu ví dự dược trình
bày ờ hình 1.2.
Dẻ định Hịỉhĩa cơ sở dữ liệu này. chúim ta phái chí ra càu trúc cùa
các bán tihi của mồi tệp (baim) bằng cách dặc tà các kicu khác nhau cua
các phần tử dừ liệu sẽ được lưu trữ trong mỗi bản ghi. rh eo hình 1.2.
mỗi bán ghi S1NH_V1ÊN bao gồm các dừ liệu để biếu diễn Mã S ố _ sv ,
l ỉọ tên SV, IxVp, Cluiyên ntỊành. Mồi bản ghi MÔN_I lỌC bao gồm
các dữ liệu để biểu diễn Mã số MỈỈ, Tên MU, s ố f)V lỉ'r. Khoa,...
Chúng ta phải chi ra một kiều dữ liệu cho mồi phần tir bên trong các bàn
lihi. Ví dụ, có thề dặc là Họ tèn s v là một dãv ký tự có dộ dài nhò hơn
hoặc bànu, 30, M ã_số_SV là một so nguyên,...
ỉ)ể xây cìựng cơ sở dừ liệu TRU Ờ N G , chúnu ta lưu giữ các dữ liệu
để biểu diễn mồi sinh vicMi, mồi môn học,.., vào các tệp thích hợp. Đê ý
rằng, các bàn ghi trong các tệp khác nhau có thể có mối quan hệ với
nhau. Ví dụ, bán ghi dối với Nmiyễn Nam tronc tệp có IìCmi quan dèn hai
bàn ghi troỉiíi tệp DĨẺM. Các bàn ghi này chi ra đièm cùa Nguyền Nam
trong hai học phần. Tưưnu tự như vậy, các bàn uhi trong tệp SINIỈ VIÊN
12



co mòi quan !iệ vái các ban uhi tronu tệp M()N_11()C... 1hỏim tliườim
một c a S(V (lữ iiệu cỉiửa nliiẻu kiêu ban uhi \ à chứa nhiêu môi quan hệ
ui lìa các tệp.
SINH_VÍÊN

MÔN_HỌC

Họ_tên_sv

Mã_số_SV

Chuyén_nqành

Lởp

17

Nguyễn Nam

K45T

Tin học

8

Lè Bắc

K45C


Còng nghệ TT

M ã_sô_M H

Tên_MH

SỐ_ĐVHT

Khoa

101

Tin học cơ sờ

8

Cõng nghệ

102

Cáu trúc DL và GT

5

Công nghệ

103

Toán rời rạc


5

Công nghệ

104

Cơ sớ dũ’ liệu

3

Còng nghệ

BIÊT_TRƯ Ó ’C

M ă_sỏ_MH

M à_số_ MH_ biết_ trước

104

102

104

103

102

101


Mâ_số_HP

Mã_số__MH

Học_kỷ

Năm

Tèn_gịảo_vìên

1011

101

1

2001

Vản

1012

101

2

2002

Vân


1031

103

1

2001

Hoàng

1032

103

2

2002

Hoàng

1020

102

3

2002

Làn


1040

104

4

2002

Huy

ĐIẾM

M ã_số_SV

M ã_số_HP

Điểm

17

1031

8

17

1020

6


8

1031

9

8

1011

10

8

1020

7

8

1040

9

Hình 1.2. Cơ sờ dữ liệu TRƯỜNG

13



riìLUf ỉ a c

s a d ừ l i ệ u h a o UỎI11 \ i ẹ c l n i \

\ âĩ ì \ a c â p n ỉ i ậ l

sa Jừ

liọu. i ruv \ a n cct scr d ữ liệu là dirn ra c áe > 011 c a u cloi \ (Vị c(v s(t cìữ ỈIỌII

Í.ỈC IA\ ra cac ĩ!)ònu lin cân thiêl. Ví dụ. clìúnir ta có thc có các trin \ân
nlur ; ”1 iọt kò các môn liọc và đicin llìi cua sinh \icii N u u \c n Naiìi",
'Dưíi ra daiìlì s á c h c á c sinlì \ icn llìi i r ưạ l lììon C a S(V íiừ liộu". ('Ạ|> nhậí

Cí> so dù Ịịcu bao aỏiii \iẹc tlìcnì vào cơ stY liữ licu han uhi, xoa 1m> cac
ÍXỈU ulìi. ỉìoậc sưa ílỏi các iZÌá trị iroỉìii cát; han ulìi. C ác Iriiv \à n \ a cac
cặp nhại phai ciirạc dặc ta Íroiiíi nụòn nuữ hẹ ccy S(r dừ liệu niộl caclì
chiỉilì \ a c irirtVc khi eỉìúnu dược xư ly.
1.2. NGƯỜI S ư DỤNG HẸ c ơ s ớ DỮ LIẸU
\ ' ( n n i ỏ t c o s à d ữ l i ệ u !(Vn. r ã t n l i i ô u n ụ i r ờ i t h i i m u i a \ a o \ i ẹ c t h i ê t

kè. Mi’ dụỉìg và iìn\ tri cơ sơ dữ liệu. NMiữnii neười V\cn quan đèn hẹ C(r str
d ù liệu ùi rợc chi:i t h à n h hai nl i óm cliính. N h ó m llur íihàt
HLỉirơỊ mã còng vicc cùa họ liên quan lìàna nnáy dcn c a SCT dữ liọu ; dó la
những nuirảị quan trị co sở dữ liẹu. thiêí kê cơ sư dữ liẹu, sư ciụnL' ca sơ
dữ ìiệii phàn ticii hệ !honi» và lập trinh írne dụnu. Nhỏm lỉiứ hai uôm
n ỉ i ữ n u nei r ời l à m \ iệc d é d u y tri m ô i tnrờiiíi hệ C(T SO' d ữ liộu n h i r n u

klìỏim quan lâm ácn ban ihân co so dù liẹii ; dỏ là nhùnu imuời tliict kc

\ à cai dặt hẹ q u a n irị c ơ s ở d ữ liệu, phá t iricỉì c ô i m cụ, t h a o tác \ \ â ì \ à

bào ĩ ri.

1.2.1. Ngiròi quan trị hệ cơ sờ dữ liệu (Database Administrator DBA)
TronL’ inộl tỏ chức có nhiỏu nuiròi cùnu sử dụnu, các tcũ lìuuyên càỉì
phai

i nộl n^irời u i á m sát \ à q u a n lý. I r o n ẹ m õ i t r ư ò n u !iệ C(7 s ờ (ỈCr

liệu, cac lài nizu\cn là cư sờ dữ liẹu. liẹ quan irị co scr (iừ ỉiộu \ à các
p l ì a n n ỉ c n i liòn qiiaiì. N m r ờ i q u a n trị h ệ c ơ s ứ d ữ líộu la i m i r a i cl i ị u t r á c h

nhiỌìiì quan lý các lài nmivỏiì dó. Neười nàv chịu trách lìlúẹni \ c \'iệ'c
c h o p h é p t r u \ c ạ p c a s a d ữ liẹu, tô clìirc và h i r m m dầĩì v i ệ c su d ụ n u c a

sa íiữ liệu. c:ìp các phầĩì nicm và plìần ciriìíi llieo ycu cau.

1.2.2. Người thiết kế cơ sờ dữ liệu (Database Designer)
Nciroi ỉiav chịu trach nhiệm xác (lịnh các (lfr liệu sè tlirạc liru trừ
ĩronL’ c a

S
ỉiệu

N hữ ne

14


do.

cac

nhiẹm

c â u trú c ihicli h ạ p
vụ

nàv

được

ihực

(ỉc b i c u
hiện

ciicn v a

írưởc

khi

lini ír ừ c á c
c a



clừ


(iTr
liệu


(ỉuọv cài ù(u \ a Ị)ho biòn. N ein n íỉiièí ko co írúch nỉiiệrn LÚao tliiỘỊ' \nliùnu n iíu à i sir dụnụ lironu ỉai dè liìOu cỉirực eác dòi !i()ị cua lìọ va ítira
ra niội t hiẻí k c tlìoa inaỉì c ác yctí c â u dô. A n h la c ủ n y c ó nhiệĩìì ^■ụ ui a o
í h i c p \ ( n c ív c l ì l ì ó ỉ ì ì l ì u i r ừ i SU' ( l ụ i v a \ à

c ỏ k l ỉ a !iăn
c ac n h o n ì .

1.2.3. Người sù’ dụng (End User)
N l i ữ i u i i m i r à i s ư d ụ i ì u l à l ì i ì ù n g n i : ư ờ i n i a c ô n g v i ộ c c u a h ọ đ o i ỈK)i

i r u\ c ậ p clcn Ctr str (iữ ỉiọu d ê t r uy \ âiì. c ạ p nlíât \ à sinlì ra c á c t hôỉ ì g tin.

r ó ihc cỉìia nhữnu iìmrưi sir dụiìi^. thànỉì hai ỉihíìin chíỉilì ; nhữììi! nỊ:io-rị
Sĩr (Íụỉ ỉ ì : t h u d n ỉiỊỉ { t ư c l ã n í i ữ n e i m i r ờ i s ư d ụ n g k h ỏ i ì u c o n h i ê u k i c n i h i r c
\c

h ệ c ơ S(T ciiT l i ệ u ) \ ' à n h r r n g

Ị ìỊiim i s ư dụỉìỉ^ c h ìi iỉộ n ịỊ ( l à n h ừ ĩ ì i : ì ì Lì Uoi

có hièiỉ biet tòt vẻ hc C(T Sí'í dữ !iệu).
Chức năiìg cỏnự \ iộc -.ua nhiTim neiroi su dụnn thụ dộnụ íchiùni
pỉiầĩi iáỉì n h ữ n u Iigirời s ư ciụnu) Uiìn iiền voi vị ộc tru> v a n và c ậ p niìạt

l l ì ư ỡ n u \ u > ê n c a s ơ (lữ liệu b ã n u cáclì su dụíiL! c á c c ủ u hỏi \ à cao c ậ p
nhật chiiàii í e ọ i ỉà c á c ^ i a o ỉ a c d ị ì ỉ ỉ i s ú n ) dà dỉ rợe lậi) t r ì nh \ a kì cni tra

càn ìhàn. Nhữníj, nmròi nà\' chỉ cân bỉct niộl chúi \ c các phiranu liện (.io
liê qiiaiì Irị c a sơ ilữ liệu cviim càp \ à hicu cac kieu iiiao tác chuan dà
(ỉirợc tlìỉcl kc va cai tlạl ỉà du.
Nhì r ni ỉ n ụ ư ờ i s ơ d ụ n i 2 c h u d ộ n ẹ c ó lìiêu bict lõt v c hộ ccy SiT (íứ liệiK

!iọ có íhc lự cài dạl các ửnư dụn <4 riènự của minh dê ỉàiìi thoà màiì cac
\ êii cầu phức lap cua liợ.

1.2.4. Người phân tich hệ thống và lập trinh ứng dụng
Nmroi phàn úclì hệ ihỏnu xác dịnl) các vcu cau cua nlìừnu ỉìeuòi sư
(lụnu (clui vcu là nlìữim nmrừi sư dụnụ thụ clộnc) dc đặc la các cỊìươniỉ
t r i n h p h ù ỉ i ợ p \ ớ i NCU c ã u C(UI h ọ .

Nmrời \ ict clurtrna tnnlì ứnu dụne tỉic hiộỉì các vỉặc ía của íiiiừnu
ngi rời pỉ i ân t i c h i h à n h chuxTnu Irinli. s a u dó k i c n i tra, c h ạ y llìir, s u a !oi.

lùin tài liộu v à háo tri các uiao tác dịnh san,

1.2.5. Người thiết kế và cài đặt hệ quản trị CQ' sò' dữ iiệu
Đ ỏ là n h ừ i m n m r ò i thict kè, cài (ỉặi c á c m ỏ d u n . a i a o di ệ n CÌUÌ ỈIỘ

quán Irị c a sa dữ ỉiẹu tlìànìi các phân niciTì ỏỏmi ụỏị. Mộí liộ quản Irị ca

15


sở dừ liệ u là một hẹ tliô n u p hàn iiKMn p liứ c tạp. h a o u ồ m Iih ic ii tlià n li


plian (môdun). Dó là các niòdun củi dặt tù’ diC’ii ilĩr ÌÌCLI. niỉòn nm'r truy
vân, bộ \ ứ lý íiiao diện, truy cập dừ liệu, kiôin tra cạnh tianli. phục hồi
và aii toàn. 1lệ quan uỊ c a sa dữ liệu phai eiao tiêp voi c:ic hệ thổiiL’
Ịiliàn niêin khác nlur hệ clièu hànli \ à các cliưcrnu Irìnli dịch cho nhicu
n uô n n u ữ kliac Iiliau,

1.2.6. Người phát triển công cụ
l.à nhừnu nuirài thiêt kè và cài dặt cúc cônu cụ (tool) ; dỏ là các
phàn m è m ckSnu uỏi làm thuận tiện cho \ iệc thièt kê \ a SU’ dụim c a S(T
d ừ liệu.

1.2.7. Các thao tác viên và người bảo trì
Là nliừni’ nmrời cliịu trách nliiệm vc \ iệc chạv và bao tri pliần cứnu
và phàn Iiiêni cùa hệ tliôim.

1.3. MÔ HỈNH DỮ LIỆU, L ư ợ c Đ ỏ VÀ THẾ HIẸN
Các loại cau trúc cư sở dữ liệu \ à moi liên hệ uiữa chúim dỏim vai
Irò rất !cVn tronLí v i ệ c x á c địnli tính hiệu quá của hệ quan Irị c a s ờ dừ liệu,

Vi vậy. thiêt kố cơ sư dừ liệu trờ thảnh hoạt dộnu chinỉi tronu môi trirờna
cơ sớ dữ liệu.
Việc thiet kc ca sơ dừ liộu được thực iiiẹn đơn uiíin hơn nhiêu klii tn
sử dụiií’ các mò liình. C'ác mô liình là sự trừu tưcmu dơn uian cùa các SỊI'
kiện troim thế uiởi Ihực. Các trừu tirợim nhu' vậy cho phép kh;ui sát các
dặc dicMii cua các thực thê và các mỏi licMi hộ đưạc tạo ra ụiữa các thực
thè dỏ. Việc thict kc các mò hình lốt sè dira ra các c a sở dữ liệu lôl, và
ircMi c a sở dỏ sõ cỏ các ứng dụim lốt. Nmrợc lại. I11 Ô hình kliônu tổi sẽ
dưa don lliiêl kc cơ so dữ liệu toi và dần đen các ứim dụim kliỏim dủnụ.
M ộ t m ô h ì n h CO' .SY/ c / ữ l i ệ u


là m ộ t t ậ p iK.r]") c á c k h á i n i ộ m c i ù n i i đ ê

bièu diễn các cau trúc cua cơ sơ dữ liệu. C ầLi Irúc cua một C(T sớ dữ liệu
là các kiêu dữ liệu, các mỏi IìCmi kct \ à các ràim buộc phài luàn theo trên
các dừ liệu. Nhicu mò hìnli còn cỏ thêm một tập liợp các phép t(KÍn C(r
bàn dè dăc la các thao lác trôn co sờ dữ liêu.

16


1.3.1. Các loại mỏ hình ccy sò’ dữ liệu
C ó râl nliièu I1U) liinii d ừ liệu dã d u ự c dè Iiuhị. C h ú i m ta c ỏ tlỉè phà n
loại c á c i n õ i i ì nh d ừ iiộii ciụa t r ẽ n c á c k h a i I i i ẹm

cluìiii! sir dụiT.' óc

! 11Ỏ ta c á c c à u trúc C(y S(T clìi liộ ii.
( ' á c nió Ỉìiiìlỉ lỉữ liứu hũc cao h o ặ c IIÌÔ lìinh i/ữ liệii Dìửc tỊiiun nli-ni
c u n ụ c á p c á c kliái Iiiệm uãn liền với c á c h c a m nliận clừ liệu c u a nlìieu
niỉirài SU’ d ụ im . C á c m ỏ hinli nà> tập Iruní.! x à o baii cliầt l ô e i c c u a biôu
d iễ n d ữ liệ u , nó cỊuan t à m d cii cá i đư ọc biôu (iiễìi tr o n ụ C(T sơ dừ liệu cliử

k h ò n ụ p h ai c á c h hiòu ciicii cliì liệu.
C á c DIÔ h ì n h cỉừ l i ệ u h à c i h a p h o ặ c c á c lìỉô Ì ù ì i h ( ỉ ữ l i ệ u Vcìí ỉ ý c u n u

cap các khái niẹm mô t;i cliị lict ve \ iệc eác clừ liệu dược lưu trữ troiiL’
má\ lính nliư tlic nào. í ’ác iTiô hình dữ iiẹii vặt l\' inò ta cách iini trữ dù
l i ệu t r o i m i n á y tiỉih, ei(Vi I h i ệ u c á c thôn!>, tin nỉ)U' k l u i ỏ n d ạ n u b á n ulii. s ã p


\ ê p bán Líhi. đir(Viií> truv cập.... ( ’ác khái niệm do mô hinh dữ liệu vật Iv
ciinu c à p

n ó i c h u n g c ó \' i m l i ĩ a d ô i v ớ i c á e c l n i y C' n u i a m á v

l i n h v:hứ

không có ý nuhĩa niấ\ dôi \ (Vi nmrưi sư dụiiLĩ ihònu thuònu,
C) u i ữ a h a i l o ạ i n i ò h i n h nà>' là m ộ t ỉ ứp c a c mô hình íìừ liậit llìữ hiện.

c h ú n u c u n u cap nliữiiii kliãi n iệ m m à niỊirài sir dụnti c ó thc hiêii dirọc \ à

khôiiỉỊ khác nhiòu V(Vi cácỉi tô clnrc dữ liệu bên tronu máy tính. Nuuữi ta
c ò n L!,ọi loại n i ỏ hin h d ừ liẹu nàv là loại inô h ình J ữ ỉiệii m ứ c

( 'á c

m ô h ì i i h d ữ l i ệ u I hô h i ệ n c h c d a u m ộ t s ò clii licl \ c \ i ệc l ư u t r ừ d ữ liệu,
n h ư i m c ỏ the d ư ợ c Cíii dật tnrc tiêp trên hệ íliònti n i á \ tính.
I r o n u Cluicrne 1!. c l iú im la s ẽ n u h i è n c ử u m ộ l IVIỎ liình ciừ liệu m ứ c
t ị u a t i l ì i ệ i i i . i n ô l i i nl i t h ự c l l i ô - IìCmi k ò l . ụ ọ i l ãt l á iHfì h ì n h !'.R (Ì J i l i l v -

R elationship

M odcl).

M ỏ liinh Iià\

sư d ụ im cá c khái n iệ m


i h ự c lliè.

thuộc tinli, moi 1ÌC'I1 kèl tiè (licn dạt các doi UrợiiL’ cùa tlic uiái thực.
M ộ t m ỏ h i n h d ữ l i ệu b ạ c c a o k h á c là ìiìn lììnìì (lữ Hữu ìnrirnịi iỉãi

lirợiiiỊ. Nó sư cluim các kh;'ii niệm như lớp. lliùa kế, phuxTim tliửc, íliôni!
cliệp,... liạn dọc cỏ tliè lìm liièii vc mô hinh nà\ ironu, các tủi liệu 11 Ị. |2|.
C á c m ò hi nl i d ữ l i ệ u t h è h i ọ n lá c á c m ò b i n h d i r ọ c s ư ( l ụ n u t l n n n m

xuyên nliat troiii: các hệ cơ scr dữ liệu thiayn” mại. íĩa mò ỉiinh nôi tiên”
t lu iộ c loại n a y ỉà m ó h ìn h lỊìtdn hệ, m ô hììì/ỉ mạníỊ \ ;ì I}IÕ lììnii p h â n cáp.
( ' á c i n ò hìn h m ạ i i u \ à pliàii c ấ p ra đừi t r u ớ c và d ư ợ c s u cÌỊinu rộim rãi

o

.

4/ n0 4/ n0 3o

17


t r o i i e q u a kt ur (trníVc Iiăni 197 0) . V à o đ ẩ u Iihr r nu n ă m 7 0 c u a t h ế k v X X ,

nió hìnii lỊuaii hệ ra clừi. I)o tínli iru việt cua nó, mô hinh quan hộ dần
dàỉi !ha> thè các

111 Ò hình

mạnu và phân cấp. Chủng ta sẽ imhiên cửu vồ


m ô h i i i h q u a n li ệ I r o i m C h i r ơ n i í l ỉ í ,

1.3.2. Lược đồ và trạng thái cơ sờ dữ liệu
I ronu I11ỘI mò liinh (lừ liệu can phái phân biệt rõ tiiĩra mõ tả cua cơ
s ơ d ữ liệ u \ à ỉ \ i n íh à n CO' SO' d ữ liệu. M ô tá của một c ơ s ờ dữ liệu đư ợc
uoị là ỉ ư ụ c íỉô CO' .Ví/ cỉữ liệu, n ó d ư ợ c x á c d ị n h r õ t r o n g q u á t r in h thiế t kố
. ư s ơ dữ liệu \ a k h ô n u bị th;i\ đòi thirờnii x u y ê n . Đa s ố cá c m ô hinh dữ

liệu có cac qu\ irỏc liiC'11 thị các lược do. 1liôii thị cùa một lược dồ được
!íoi !à hiún lĩồ cua krợc đồ đó. Một biêu đồ luợc đo chi thế hiện một vài
khía cạtiỉi cua luọv tio như các kiểu bàn t>hi, các mục dừ liệu và một so
kièu ránu buộc, C'ác khía cạnh khác khônu được the hiện troníí biểu đồ
ỉược dỏ.
Các dù liệu troim một ccy sở dừ liẹu có the thay đổi một cách lliư(Vng
\ u \ ẻn ( 'ác tlũ liộu tionư m ộ l c a s ờ dữ liệu tại một thời d iêm cụ thê đư ợc
i.’oi ia niột irạ iiỊ' íh á i c ơ s ư iiừ liệìi hoặc là a n h (sn a p s h o t ) cúa c ơ s ớ dữ

ỉiệu. Nhiổu trạnu ihái quan liộ cỏ ihe dược xây dựng đê làm tương ứng
vói inộl lu ạ c dò c a S(y dtì liệu cụ thé. M ỗi khi c h ú n g ta c h è n v à o hoặc

ỉoại bo một haii ahi, sưa dôi niá trị cùa một mục dừ liệu tronu, một bàn
iihi, cỉiúnsi ỉa dã làm thay dối trạnu thái cua cơ sở dữ liệu sang một trạng
iháị kliac.
Việc pỉiãn biệt iiiũa Iirợc dồ ccr sờ dữ liệu và trạng thái cơ sở dữ liệu
ia rất quan irọiìu. Khi cliúnu ta dịnh niiliTa một cơ sở dừ liệu mới, ta chì
(Lu’ la luxK dỏ CO' S(T tiũ liẹu clici !iộ quàn Irị ca sở dữ liệu. 1'ại thời diểm
i\ày, trạiiL’ ihai CIUI ca sa dữ liệu !à một trạng thái rỗng, không có dữ liệu.
Cluìnt> ta Iiỉiận duợc trạng ihái ban đầu của cơ sở dữ liệu khi nhập dữ
iịệu lan dầu lièii. rìr dỏ trớ di, mỗi khi một phép toán cập nhật dược thực

'ìiệii doi \(íi co sà (lữ liệu, chúim ta nhận được một trạnụ thái cơ sờ dừ
!iệu khác. 1ại mọi iliời dièm. cơ sở dữ liệu cỏ một trạng thái hiện tại. Hệ
q i i a n IIỊ c ơ s a (iừ Itệu c ó Iracli n h i ệ m d â m b á o r ă n u , m ỗ i I r ạní í t h á i c ơ s ờ

dù liệu là niột irạnu tliái \ ừnu chắc, nuliTa là một trạnu thái thoà niãn cấu
íruc và cac ranu hiiộc dirợc dặc la trone liroc dò. Vì vậv, việc đặc tà một

8


lược ciồ dúnu dần cho lìỌ quan trị cơ sơ dữ liệu là một viẹc làm cực k>
quan Irọim, và lirạc dỗ phai clirợc tlìict kc một cáciì can thận, llệ quan írị
ca sa ciìr liệu liru irữ các mỏ ta cua các càu trúc lược đỏ và các rane
buộc, c ò n
SÍU)

ÍZỌÌ là s ỉ Cỉ t d ừ l i èỉ t \ ' à o t r o n u l ừ diên ( c a l a l o u ) c u a h ộ q u á n

cho pháiì Iiìcni hẹ quan trị

trị.

dừ liệu có ihỏ tham khao dcn hrợc

C(T S(y

dồ khi cần. D ỏ i khi nuưừi ta còn uọi lược do là mục íicii ( i n l c n s i o n ) \ à

trạng thái cơ sa dữ liệu là m ư rỘNíỉ (cxtcnsion) cứa lược đỏ.
Vi íJụ : ỉ lình 1.3 írìiìh bàv lược dồ cúa c

SiNH_VIÊN
M ã_sồ_SV

H ọ jê n _ s v

Lớp

Chuyên_ngành

Tên MH

Số ĐVHT

Khoa

MÔN__HỌC
Mâ số MH
..........L ... -

!

BIẾT_TRƯỚ C
Mâ_số_!VIH

Mã_số_MH_biết_trước

HỌC^PHAN
M ã_số_HP

Mã_số_MH


Học_kỳ

Năm

Tên_giáo_viẽn

ĐIẾM
M ã_số_SV

Mã__số_HP

Điểm

Hỉnh 1.3. Lược đồ cơ sở dừ liệu 'TRƯỜNG'*

1.4. KIẾN TRÚC HỆ C ơ sờ D Ữ LIẸU VÀ ĐỘC L Ạ P D Ữ LIỆU
Troim phần này chiìnu ta làm quen inộl kiến trúc cho hộ cơ sờ dữ
liệu, gọi là kién Irúc hci lư ợc đỏ (1 lì ICC - Schcma Arcliitccturc). và kliai
niệm đ ộ c lậ p cỉữ ìiệii.

1.4.1. Kiến trúc ba lược đồ
Mục dích của kien trúc ba lược dồ là tách rời các ứng dụnu cua
imười dùnti \'à cơ sò dữ liệu vậl lý. 1ronu kicMi irúc nay, cac !irực dò có
the dược xác định ờ ba mức sau dây :

19


1. iVlửc tr o n s (Intcriial level) - Lm/C (lồ trong (Internai scheina)


Múc tioim niò ta câu trúc lưu irữ vật iỷ của cơ sở ciữ liệu. Lược clồ
tronL! sư (lụiiu một mô hình dừ liệu vật lý và mô la các chi tiết dầy du
cua \ iòc Imi trữ dữ iiệu và các dườni’ dẫn iniy cập dối với co sở d ừ liệu.
2. Mức quan niệm (C oiiceptual lcvel) - 1-uọ'c d ồ quan n iệm

Mức cỊiiaii niệm mỏ ta càu trúc của toàn bộ cơ sờ (.iữ liệu cho một
cộim doniĩ nuưííi sư dimu. Lưọc đo quan niệm che dấu các clii tièt của
cấu iriìc lưu trử \ ậ t lý \ à tập trunu v à o m ô tả các thực thế. c á c kièii dữ

liệu, các Iiiôi liên kết. cac thao lác của nt>ưòi sử dụrií’ và các rànu buộc.
Một inô hinh dừ liệu hậc cao. hoặc một mỏ hinh dữ liệu thế hiện có thê
dược sir clụne ớ mức nàv.
3. Mức ngoài hoặc mức k h u n g nhìn

Mức naoài hoặc mức khium nhìn gồm một số các lược dồ ngoài
hoặc các khuim nhiii cùa neười dùim. Mỗi lược dồ ntìoài m ô tả niột phần
cua ccr sa dối \ á i nhom này pliần còn lại của cơ sở dữ liệu. Một mô hình dữ liệu
bậc ca-i. hoặc inột inò hinh dừ liệu thế hiện c ó ihể đư ợ c s ừ cÌLinu ờ m ức

nà\ . I !inh 1.4 niò tá kiốn trúc ba lược đồ.
Kiến trúc ba lược do là một công cụ thuận tiện cho người sử dụng
iiinh ciuim ra các mức krợc dồ trong niột hệ cơ sở dữ liệu. Da số các hệ
quán tiị c ơ S(Y d ỡ liệu kh ò im phân tách ba m ứ c m ộ t cách da y dủ. nhirim

hỗ trợ kicn trúc ba lược dồ ỡ một mức nhất dịnh.
Kién trúc ba lược dồ chi là mò tá của dữ liệu, bản thân dữ liệu chi
ĨÒI1 lạị o m ứ c \ ậ l lý. ỉ r o n g m ộ t h ệ c ơ s ở d ữ liệ u d ự a t r ê n k i ế n trúc b a
krợi.- d ò , m ỗ i n h o i n n m r ò i s ư d ụ i m c h i t h a m c h i ế u d e n l i rợc d ồ I i g oà i c ú a


họ. Nltư \ậ v , hệ quán trị cơ sờ dữ liệu phái chuven đôi một yêu cầu được
chi ra trẽn lirạc d ồ imciái tỉiànli m ột y è u cầu trên lược dồ qu an n iệ m và
sau do ihánli Iiìột >CII c a u trên l ư ợ c d o tron g d ê xir !ý trên c ơ s ớ d ữ liệu

dirợc liru trừ. Nếu một _\ òu cầu là lấv clừ liệu ra. các dữ liệu được lây ra
phai dirợc dịiih dạnií lại cho phù hạp với khung nhin bên ngoài của
nuưừi sư dụnu. C’ác tiến trình chuvển đồi các yôu cẩu và các ket quà
uiữa các mức clirợc ụọi là cúc ánh xạ. Các ánh xạ này có thổ liêu tốn thời
gịíin, \ I \ ậy mộl số hệ quán Irị cơ sở dừ liệu, nhất là các hệ hỗ trự các cơ

20


S(y dữ liệu nhỏ không hỗ írợ các khunu nhin Iiuoài. 1 Li\ nlìicn. ĩmav

tronu các hộ như vạy cùng phái có một so ánh xạ (!ỏ clìUN êìì tlỏi các ycu
câu giữa mức quan niẹni và niức Iroim.
Người dùng cuối

Anh xạ quan niệm/trong

MỨC TRONG

C ơ Sớ Dữ LIỆU ĐƯỢC LƯU TRỮ

Hình 1.4. Minh hoạ kiến trúc ba iược đồ

1.4.2. Sự độc lập dữ liệu
Kiến trúc ba lược đồ có thể được sử dụng dể giái thích khái niệm

độc lập dừ liệu. Dộc lập dữ liệu có thể định nghĩa nhir là khả năng thay
đổi lược đồ tại một inức của một hệ cơ sở dữ liệu mà khôníi làm ihay đổi
lược đồ ở ‘rnức cao hơn tiếp theo. Có hai loại dộc lập dừ liệu :
ỉ. Đ ộc lập d ữ liệu lôgic

ỉ)ộc lập dữ liệu lỏgic là khả năng làm thay đồi lược đồ quan niệm
mà không làm thay đổi các lirợc đồ nuoài hoặc các chươnụ Irình ứng
dụng. Chúng ta có thể thay đổi lược đồ quan niệm đe niở rộnu cơ sờ dữ
liệu (bàng cách thêm vào một kiêu bán ghi hoặc mộí mục dữ liệu), hoặc
làm íìiảm cơ sở dữ !iệu (bàng cách loại bỏ một kiểu ban ụhi hoặc một

21


Iiụic dữ liệu). 1roiiu (rườim hợp làin eiani, các lirực dô niioài clii tliam
chicii dèn các dừ liệii, còn lại sõ kliỏnu bị anh liLRTim. Chi có dịnh imliìa
khune nhìn \ à các ánh \ ạ can dược tliay dôi tronu một hệ cơ so dừ liệu
hồ trự dộc lập dữ liệu, ('ác chircrnu trình ứng dụní; tham chieu các câu
triic lược dò ntioài phai làin \ iệc như trưóc dó, sau khi lược dỏ quan
Iiiộni chịu niột s ự (ò c h ứ c k.ii lôuic. Các thav doi doi với các ràne buộc

cCiim có ihò dirọc áp dụim clic) lược do quan niệm !iià khỏnu iàiii thay dỏi
các lược đô imoài hoặc các chiKriiu trình ứim clụnu.
2. Đ ộ c lậ|) d ử liệu vật lý

Dộc lập dữ liệu \ ậ l lý là kha nănu thay dôi lược đồ tronu mà không
làm thay đôi các lược dô quan niệm hoặc các lược dồ ngoài. Các thay
dôi dối với lược dồ Irong có thè cần thiết, bơi vi một số ílle vật lý phai
dược tỏ chức lại. Ví dụ, bànu cách tạo ra các câu Irúc truy cập phụ đê cài
thiện tiiao lác lẩy ra hoặc cập nhật. Nếu các dừ liệu như trước dò còn lại

tronụ cơ sớ dữ liệu, chúnu ta sẽ không làm thay dôi lược dồ quan niệm.
Khi chúim ta có mộl hệ quàn trị cư sở dữ liệu nhiều mức. từ điển
(catalog) cua nỏ phai dược mở rộnu đế chứa ihông tin vê việc ánh xạ các
vôu cầu và các dừ liệu iíiữa các mức khác nhau như thê nào. Hộ quán trị
cơ sơ dữ liệu sư dụnii một phần mềm phụ đê thực hiện các ánh xạ này,
bànu cách tliam chiếu đến thông tin ánh xạ tronti catalog. Sir độc lập dừ
liệu sẽ dirợc thực hiện, bới vi khi một lược đ ồ bị thay đồi tại m ộ t m ứ c

nào đó thi krợc dồ ơ mức cao ỈKTII tiếp dó sẽ không bị thay đôi, chi có
ánh xạ íiiữa liai mức là thay dồi.

1.5. NGÒN NGỮ C ơ S ở DỮ LIỆU VÀ GIAO DIỆN
1.5.1. Các ngòn ngữ hệ quàn trị cơ sờ dữ liệu
Một khi \ iệc thiet ke cơ sờ dừ liệu dã hoàn thành, cần phải chọn một
hệ quán trị cơ sở dữ liệu đè cài dặt cư sờ dừ liệu. Trong các hệ quán trị
cơ sư dừ liệu íiìCmi nay thirờnụ có các ntiỏn imừ : ntíòn ngừ định nghĩa dừ
liệu (l)aUi Dcrinition Langiiagc - DDL) và ngôn ngữ thao lác dữ liệu
(Data Manipiilation l.anmiage - DMI.).
Ngôn ngừ dịnh nghĩa dừ liệu dược sử dụng để định ntihĩa các lược
đồ. Hệ quán trị cơ sở dữ liệu có một chương trinh dịch ngôn ngữ DDL,
nhiệm vụ của nó là xừ ỉý các càu lệnh DDỈ. đê xác định mô ta của câu
trúc lược đồ và lưu trữ mô lá lược đồ vào từ điền cùa hộ quản trị cơ sờ
dừ liệu.
22


Ntiỏn imữ ihao tác dữ liệu được sử dụim dc ihat) tác CO' sa diì liệii.
Các thao tác ciiính ^om có lây ra. chèn \ ào. loại bo \ à sua (lũi các dù
liệu. C'ó hai kiêu neôn nuừ Ihao tác dữ liệu chinh : nuôn nuữ iliao tác diì
liệu inírc cao hoặc ngôn nuừ phi thú tục và imỏn Iiinì lluto lác dừ liệu

imrc thấp.
Neôn imữ thao tác dữ liệu tnức cao có thê dược sir dụim t!c diễn cta!
cac phép toán co sò dừ liẹu một cách nẹãn tiọii, Phần lỏii các hệ tỊiuui lr|
cơ sơ dừ liệu cho phép nhập các lệnh cũa neôn nuữ !hao tác dữ iiẹu miK
cao theo cách tziao liêp (nuhĩa là sau khi nliập một lệnh, hệ thòim sẽ thực
hiện lỌnli dó rôi mới nhập lệnh tiổp theo), hoặc dược nlúiiiu \à() một
ntĩỏn ngữ lập trinh vạn năiií’. 'I rorm tnàm g hợp nhuim vào nuõii imù k!iac.
các iệnh cùa ngôn tiíỉữ thao tác dừ liệu phai được xác dịnli hên tronu
chưcmg trinh, sao c h o m ột chircnig trình ticn dịcli c ó ihè nhạn ra cliíing \ à

được hệ quản trị cơ sở dừ liệu xử lý.
Níĩôn nuữ thao tác c o sở dữ liệu mức thâp hoặc ĩiuỏn nuử thu lụe
phái được nhủníi vào troníi một nuôn nuìr lập trinli \ ạ n nãim Ngỏn ngừ
thao tác cơ sớ dừ liệu kiêu nà\ thirờnu lâ) ra các han uhi hoặc các dùi
tirợng riêng rẽ và xử lý chúng một cách riênu rẽ. Vi vậy. chúiiụ câii ptìa:
sư dụntí các cấu trúc ngôn nm'r lập trình như vònụ lặp. dicu kiện.... dê là>
ra từng bàn t;hi một từ một tập các bản t>hi. Ngôn ni>ừ th.ao lác dừ liỌu
mức thàp dirợc tiọi là ntĩôn ngừ mộl lan mội him ựhi. Các nuíìii nuữ thao
lá c d ữ liệu m ứ c c a o c ó thể d ù n g m ộ t lện h d ê lấy ra m ộ l iúc iihicLi ban

tihi, nên chúng được uọi là níiôn nuừ mộl làn một lập hợp.

1.5.2. Các loại giao diện hệ quản trị cơ sờ dữ liệu
Các hệ quán trị cơ sờ dừ liệu cung cấp rất nhiều loại uiao diệĩi Iiuười
dùiiíí thân thiện. Các loại eiao diện chính gồm có ;
1. G ia o diện d ự a trên b ảng chọn

C'ác giao diện này cung cấp cho níiirừi sư dụng danli sách các lựa
chọn, gọi là hang chọn (mcnu) và hircVng dẫn nmrcyi sứ ilụim diễn dạl
một yêu cầu lừ dầu đến cuối. Các bảnu chọn làm CÌK) người sir dụiiiĩ

khônu cần nhớ các lệnh và củ pháp của ntiôn ngừ truy van, C'ác hatm
chọn thà xuống đã trở thành kỳ thuật phồ biến trong các ưiao diện dựa
trên cứa sồ. C h ú n g th ường được sư dụng trong các giao diện quét, cho
phép người sừ dụng nhìn thay nội dung của một cơ sò dữ liệu theo cách
không có cấu trúc.

23


2. (t^iao diộn (lựa trên ÌÌIỈÌII bicii

Cac uiao diện Iiày ìúCmi lliỊ một mầu hicu cho nuuời sư clụnu. Nlìữnn u u o i SU' dụiiL’ c ó lliè d i c n \ à ( ) tal c a c á c ô c ú a m ẫ u b i c u d c n h ậ p c á c d ừ
!iẹu n io i. lio ặ c họ CÍII d iê n \ ;iO m ộ t so ò, cò n hệ q u a n I r ị C(í S(V d ừ liệ u sè

ducỉ ra các dữ iiệu |)liù liợp clio các ô khác. Cac Iiiẫu hiêu ihirừnu đirợc
lỉiict kc v;i dưực lạp tnnh clio cac imirừi dùng dcni uian. Một so iiệ tliônu
c ỏ cac iiện ích uiúp Iiuirới sir dụnu lìrnu hư ớ c x à y dựníi một m ẫu biêu

trèn inan hinh.
3. C ia o diện đổ hoạ

Mọt uiao diện đồ hoạ (Ciraphical User Interface - GUI) thường hiên
ihị riiột lược dồ cho neirơi sử dụng dưới dạnu biêu đô. Nuirời dùng có
lliê thực hiện một Iruv vẩn bằng cách thao tíic trên biêu đồ. Trong nhiều
lrư(mn hợp, GUI sư dụnu ca các bảnụ chọn và các mẫu biêu. Da sò các
( ìl '1 sư dụne các cônu cụ Iro !ihư chuộl, phim đè kích các pliân cua sơ dô.
4 . ( ỉ i a o d iệ n c h o I i ị í i i ò i q u ả ii t r ị h ệ th ố n í*

Da số các hộ quàn tri C(r sơ dừ liệu cỏ các lệnh ưu tiên, chi có nhũ’ng

niiưưi quan irị liộ thỏna mới dược sử dụnii các lệnh dó. Dó lá các lệnh
tạo ra các tài klioan (account), dặt các thain số cho hệ thống, cấp các tài
khoan, thay đỏi lược đồ hoặc tố chức lại các cấu trúc lưu trừ của cơ sơ
đ ừ liệu.

1.6 MÔÍ TRƯỜNG HỆ c ơ s ờ DỮ Liẹu
I ronu phần này, chúnc, ta thào luận \’ề các kiéu thành phần phần
nicp.i tạu nt'i) các hộ quán trị cơ sớ dữ liệu và các kieu phân mèm hệ
ihổim irià hệ quán Irị cơ sớ dữ liệu uiao liếp vứi chúng.

1.6.1. Các môđun thành phần của hệ quản trị ccy sờ dữ liệu
MỘI hệ quán trị cư sơ dữ liệu là một hệ thống phần mềm dầy dii,
iịOVã cac niôđun thành phần sau dây :
1.

M ô đ u n quản trị dũ liệu được liru trữ m ú c ca o (H ig h e r - level

stored data m a n a g e r)

C a sơ (iừ liệu và từ điốn cùa hệ quan trị dữ liệu thiròaiu được Uru trữ
trên đĩa. Việc truy cập dên đĩa trước hét do hộ diều hành (Opcrating
system,) kiêm soát, nó lập lịch ra/vào (input/output) đTa. Mòđiin quàn trị
dừ liệu mức cao kiếm tra lru\ cập đến thònụ tin của hệ quan trị cơ sớ dữ
24


×