®¹i häc quèc gia hµ néi
Trêng §¹i Häc Khoa Häc Tù Nhiªn
Khoa C«ng nghÖ Th«ng tin
Vò ViÖt Hµ
C¸c c«ng nghÖ sö dông trong
C¬ së d÷ liÖu ph©n t¸n vµ ORACLE
LuËn v¨n tèt nghiÖp cö nh©n khoa häc
Ngµnh tin häc M· sè: 01-02-10
Gi¸o viªn híng dÉn :
1. TrÇn Xu©n ThuËn
2. Vò M¹nh Cêng
Gi¸o viªn ph¶n biÖn:
NguyÔn TuÖ
Hµ Néi - 1998
LuËn v¨n tèt nghiÖp
C¸c c«ng nghÖ sö dông trong CSDL ph©n t¸n
Môc lôc
Lêi giíi thiÖu...............................................................................................................
phÇn I: tæng quan vÒ hÖ c¬ së d÷ liÖu ph©n t¸n............................................................
I. Giíi thiÖu chung...................................................................................................
II. C¸c ®Æc ®iÓm chÝnh cña hÖ ph©n t¸n..................................................................
1. Chia xÎ tµi nguyªn..........................................................................................
2. TÝnh më...........................................................................................................
3. Kh¶ n¨ng song song........................................................................................
4. Kh¶ n¨ng më réng..........................................................................................
5. Kh¶ n¨ng chÞu lçi............................................................................................
6. TÝnh trong suèt................................................................................................
III. C¸c lÝ do sö dông CSDL ph©n t¸n......................................................................
1. XuÊt ph¸t tõ chÝnh yªu cÇu thùc tÕ vÒ tæ chøc vµ kinh tÕ.................................
2. Sù liªn kÕt c¸c CSDL ®ang tån t¹i...................................................................
3. Sù ph¸t triÓn më réng......................................................................................
4. Lµm gi¶m tæng chi phÝ t×m kiÕm.....................................................................
5. Tr¶ lêi truy vÊn nhanh.....................................................................................
6. §é tin cËy vµ kh¶ n¨ng sö dông ®îc n©ng cao................................................
7. Gi¸ thµnh truyÒn th«ng thÊp h¬n.....................................................................
IV. H¹n chÕ cña CSDL ph©n t¸n..............................................................................
phÇn II: C¸c c«ng nghÖ sö dông trong hÖ CSDL ph©n t¸n..............
I. KiÕn tróc c¬ b¶n cña CSDL ph©n t¸n...................................................................
1. S¬ ®å tæng thÓ.................................................................................................
2. S¬ ®å ph©n ®o¹n..............................................................................................
3. S¬ ®å ®Þnh vÞ:..................................................................................................
4. S¬ ®å ¸nh x¹ ®Þa ph¬ng:..................................................................................
II. ThiÕt kÕ hÖ thèng CSDL ph©n t¸n.......................................................................
1. Khung lµm viÖc chung cho thiÕt kÕ hÖ CSDL ph©n t¸n...................................
2. C¸c ph¬ng ph¸p thiÕt kÕ hÖ CSDL ph©n t¸n....................................................
3. ThiÕt kÕ CSDL ph©n ®o¹n...............................................................................
4. KÕt luËn..........................................................................................................
III. Giíi thiÖu vÒ giao t¸c.........................................................................................
1. §Þnh nghÜa......................................................................................................
2. C¸c ®iÒu kiÖn kÕt thóc cña giao t¸c.................................................................
3. C¸c thuéc tÝnh cña giao t¸c.............................................................................
3. C¸c lo¹i giao t¸c..............................................................................................
4. KiÕn tróc cña giao t¸c.....................................................................................
IV. §iÒu khiÓn t¬ng tranh ph©n t¸n.........................................................................
1. Kh¸i niÖm xung ®ét vµ lÞch ®Çy ®ñ.................................................................
2. C¸c c¬ chÕ ®iÒu khiÓn t¬ng tranh....................................................................
3. Qu¶n lý khãa chÕt...........................................................................................
3. KÕt luËn...........................................................................................................
V. Lçi vµ chÞu lçi trong hÖ ph©n t¸n........................................................................
1. C¸c kh¸i niÖm.................................................................................................
2. C¸c lçi trong HÖ ph©n t¸n...............................................................................
Trang 2
LuËn v¨n tèt nghiÖp
C¸c c«ng nghÖ sö dông trong CSDL ph©n t¸n
3. C¸c c¸ch chÞu lçi trong HÖ ph©n t¸n...............................................................
PhÇn III: c¬ së d÷ liÖu ph©n t¸n trªn oraclE........................................
I. C¸c kh¸i niÖm c¬ b¶n...........................................................................................
1. Snapshot..........................................................................................................
2. Sao b¶n c¬ së..................................................................................................
3. C¸c nhãm sao b¶n ( Replication Groups).......................................................
4. C¸c vÞ trÝ sao b¶n (Replication Sites)..............................................................
5. Danh môc sao b¶n...........................................................................................
6. Database link..................................................................................................
II. C¸c thao t¸c chÝnh víi Read-Only Snapshot.......................................................
1. Quy t¾c ®Æt tªn cho Snapshot..........................................................................
2. T¹o Read-Only Snapshot.................................................................................
3. Söa ®æi c¸c Snapshot.......................................................................................
4. Xo¸ Snapshot..................................................................................................
5. Index Snapshot................................................................................................
6. Sö dông Snapshot............................................................................................
7. T¹o View vµ Synonyms dùa trªn Snapshot......................................................
III. Updatable Snapshot...........................................................................................
IV. C¸c vÊn ®Ò c¬ b¶n vÒ Snapshot log....................................................................
1. §Þnh nghÜa......................................................................................................
2. T¹o c¸c Snapshot log.......................................................................................
3. Söa ®æi c¸c tham biÕn cña Snapshot log..........................................................
4. Xo¸ c¸c Snapshot log......................................................................................
5. Qu¶n lý Snapshot log......................................................................................
V. Giíi thiÖu vÒ c¸c nhãm lµm t¬i Snapshot............................................................
1. T¹o nhãm lµm t¬i Snapshot.............................................................................
2. Söa ®æi nhãm lµm t¬i Snapshot.......................................................................
VI. VÊn ®Ò lµm t¬i c¸c Snapshot.............................................................................
1. Giíi thiÖu........................................................................................................
2. C¸c ®iÒu kiÖn ®Ó thùc hiÖn lµm t¬i Snapshot...................................................
3. Tù ®éng lµm t¬i Snapshot................................................................................
4. Lµm t¬i Snapshot b»ng tay..............................................................................
VII. C¸c m« h×nh ph©n t¸n d÷ liÖu trong Oracle ....................................................
1. Ph©n t¸n d÷ liÖu hoµn toµn..............................................................................
2. Ph¬ng ph¸p ph©n t¸n Partition........................................................................
3. Ph¬ng ph¸p ph©n t¸n sö dông c¸c Replicate...................................................
4. KÕt hîp c¸c chiÕn lîc......................................................................................
VIII. Gi¶i quyÕt xung ®ét trong Oracle...................................................................
1. Giíi thiÖu........................................................................................................
2. Xo¸ c¸c xung ®ét............................................................................................
3. C¸c nhãm cét..................................................................................................
4. Giíi thiÖu mét sè ph¬ng ph¸p gi¶i quyÕt xung ®ét.........................................
5. Khai b¸o ph¬ng ph¸p gi¶i quyÕt xung ®ét......................................................
PhÇn IV: C¬ Së D÷ LiÖu Ph©n T¸n trong bµi to¸n WSc.......................
I. Giíi thiÖu kh¸i qu¸t vÒ hÖ thèng vµ c¸c vÊn ®Ò liªn quan ®Õn hÖ thèng...............
1. M« h×nh tæ chøc vµ m« h×nh m¹ng cña C«ng ty WSC....................................
2. Ph¹m vi cña hÖ thèng......................................................................................
II. M« h×nh ph©n t¸n d÷ liÖu t¹i WSC.....................................................................
Trang 3
LuËn v¨n tèt nghiÖp
C¸c c«ng nghÖ sö dông trong CSDL ph©n t¸n
1. Ph©n t¸n chøc n¨ng ho¹t ®éng gi÷a trung t©m vµ chi nh¸nh t¹i WSC............
2. M« h×nh d÷ liÖu chung t¹i WSC......................................................................
3. M« h×nh d÷ liÖu ph©n t¸n t¹i WSC..................................................................
4. C¸c chó ý khi t¹o c¸c b¶ng t¹i c¸c chi nh¸nh trong cÊu h×nh CSDL ph©n t¸n.
III. Ph©n t¸n d÷ liÖu Kh¸ch Hµng trong WSC.........................................................
1. Giíi thiÖu c¸c thùc thÓ trong øng dông qu¶n lÝ Kh¸ch Hµng..........................
2. Thùc hiÖn ph©n t¸n CSDL...............................................................................
KÕt luËn.....................................................................................................................
Trang 4
LuËn v¨n tèt nghiÖp
C¸c c«ng nghÖ sö dông trong CSDL ph©n t¸n
Lêi giíi thiÖu
Ngµy nay, khi c¸c thµnh tùu cña ngµnh C«ng NghÖ Th«ng Tin ®· trë nªn th©n
thuéc víi ®êi sèng con ngêi, th× yªu cÇu cña ngêi sö dông còng ngµy cµng cao h¬n,
®ßi hái c¸c nhµ lµm tin häc ph¶i kh«ng ngõng thiÕt kÕ vµ ph¸t triÓn c¸c hÖ thèng híng tíi møc ngµy cµng hoµn thiÖn.
Cã mét thùc tÕ lµ: Mét C«ng ty cã nhiÒu chi nh¸nh ®Æt ë nhiÒu n¬i, mçi chi
nh¸nh cã mét nhiÖm vô riªng biÖt víi mét lîng d÷ liÖu lín vµ ®a ngêi sö dông. NÕu
dïng C¬ Së D÷ LiÖu (CSDL) tËp trung ®Ó qu¶n lý hiÖu suÊt c«ng viÖc thu ®îc cã
nhiÒu h¹n chÕ v×: CSDL lu tr÷ t¹i tõng ®iÓm lµm viÖc qu¸ lín, d thõa d÷ liÖu cao,
viÖc më réng CSDL khi cã thªm c¸c chi nh¸nh míi lµ t¬ng ®èi khã kh¨n ... Vµ
CSDL ph©n t¸n ra ®êi dùa trªn nÒn t¶ng chÝnh cña CSDL tËp trung nhng víi ®Æc
®iÓm riªng næi bËt lµ thiÕt kÕ theo ph¬ng ph¸p ph©n ®o¹n vµ sö dông c¸c sao b¶n
(Replication), d÷ liÖu ph©n t¸n sÏ ®îc cËp nhËt vµ lu t¹i c¸c chi nh¸nh, mçi chi
nh¸nh thùc hiÖn mét sè chøc n¨ng nhÊt ®Þnh, t¹i trung t©m lµ C¬ Së D÷ LiÖu tæng
hîp.
ViÖc kÕt nèi gi÷a c¸c CSDL tõ xa ®îc thùc hiÖn qua CSDL kÕt nèi (Database
link) vµ d÷ liÖu ®îc truyÒn qua ®êng ®iÖn tho¹i hoÆc ®êng truyÒn trùc tiÕp ®· ®¸p
øng ®îc mét sè tiªu chuÈn c¬ b¶n lµ:
- C¶i thiÖn n¨ng suÊt thùc hiÖn c«ng viÖc.
- §¶m b¶o an toµn d÷ liÖu.
- Gi¶m gi¸ thµnh truyÒn th«ng.
- B¶o mËt cao.
- Khi cÇn thay ®æi sÏ dÔ dµng...
Tuy nhiªn CSDL ph©n t¸n còng kh«ng tr¸nh khái ®îc nh÷ng h¹n chÕ vÒ: Sù
toµn vÑn d÷ liÖu, tiÕn tr×nh kÕt nèi c¸c vÞ trÝ d÷ liÖu côc bé khã, gi¸ thµnh vµ sù
phøc t¹p cña phÇn mÒm cao ...
LuËn v¨n tr×nh bµy c¸c néi dung chÝnh nh sau:
1. Kh¸i qu¸t vÒ ®Æc ®iÓm, c¸c c«ng nghÖ sö dông trong CSDL ph©n t¸n.
2. C¬ së d÷ liÖu ph©n t¸n trªn ORACLE .
3. Ph©n t¸n c¬ së d÷ liÖu cho bµi to¸n Qu¶n lý Kh¸ch Hµng vµ xö lý Ho¸ ®¬n
tiÒn níc cña C«ng ty cÊp níc Thµnh phè Hå ChÝ Minh (WSC:Water Supply
Trang 5
LuËn v¨n tèt nghiÖp
C¸c c«ng nghÖ sö dông trong CSDL ph©n t¸n
Company).
Trong ®ã viÖc ph©n t¸n C¬ së d÷ liÖu cho bµi to¸n WSC lµ nh÷ng t×m tßi cã ®îc
cña luËn v¨n. C¸c gi¶i ph¸p c«ng nghÖ lµ nh÷ng néi dung ®Ò xuÊt cña luËn v¨n.
LuËn v¨n ®îc tr×nh bµy víi môc ®Ých thiÕt thùc lµ ®a ra c¸c m« h×nh ph©n t¸n
thÝch hîp cho tõng øng dông cô thÓ trong thùc tÕ. Gióp ngêi dïng tiÕt kiÖm thêi
gian, kinh phÝ, c¶i thiÖn ®îc n¨ng suÊt lao ®éng ... trong qu¸ tr×nh sö dông c¸c HÖ
ph©n t¸n.
Cuèi cïng t«i ch©n thµnh c¶m ¬n sù hç trî vµ híng dÉn tËn t×nh cña thÇy gi¸o
Hµ Quang Thôy, thÇy gi¸o NguyÔn TuÖ, thÇy gi¸o TrÇn Xu©n ThuËn, anh Lª Huy,
anh Vò M¹nh Cêng cïng toµn thÓ c¸c thÇy gi¸o, c« gi¸o khoa C«ng NghÖ Th«ng
Tin, c¸c anh chÞ nh©n viªn C«ng ty CSE vµ c¸c b¹n ®· gióp ®ì t«i rÊt nhiÒu trong
suèt qu¸ tr×nh häc tËp, thùc hµnh, vµ nghiªn cøu ®Ò tµi.
LuËn v¨n ®· hoµn thµnh víi sù gióp ®ì, ®éng viªn cña thÇy c« vµ b¹n bÌ. Mét
lÇn n÷a t«i xin ®îc bµy tá lßng biÕt ¬n tíi tÊt c¶ c¸c thÇygi¸o, c« gi¸o khoa C«ng
NghÖ Th«ng Tin, C«ng ty CSE, vµ bÌ b¹n.
Hµ Néi ngµy 6/5/1998
Sinh viªn: Vò ViÖt Hµ
Trang 6
LuËn v¨n tèt nghiÖp
C¸c c«ng nghÖ sö dông trong CSDL ph©n t¸n
phÇn I
tæng
quan vÒ hÖ c¬ së d÷ liÖu ph©n t¸n
I. Giíi thiÖu chung.
§Þnh nghÜa: HÖ CSDL ph©n t¸n lµ mét tËp hîp d÷ liÖu mµ vÒ mÆt logic tËp d÷
liÖu nµy thuéc vÒ mét hÖ thèng, nhng ®îc tr¶i trªn c¸c vÞ trÝ kh¸c nhau vµ chóng cã
thÓ kÕt nèi víi nhau th«ng qua mét m¹ng th«ng tin d÷ liÖu.
Cã hai ®iÓm quan träng ®îc nªu ra trong ®Þnh nghÜa lµ:
- Ph©n t¸n: D÷ liÖu kh«ng c tró trªn mét vÞ trÝ, mµ ®îc ph©n bè réng kh¾p trªn
nhiÒu m¸y tÝnh ®Æt t¹i nhiÒu vÞ trÝ kh¸c nhau.
- T¬ng quan logic: D÷ liÖu cã mét sè c¸c thuéc tÝnh rµng buéc chóng víi nhau,
®iÒu nµy gióp chóng ta cã thÓ ph©n biÖt mét CSDL ph©n t¸n víi mét tËp hîp CSDL
côc bé, c¸c tÖp c tró t¹i c¸c vÞ trÝ kh¸c nhau, hay hÖ thèng CSDL ph©n quyÒn trong
mét m¹ng m¸y tÝnh.
HÖ thèng m¹ng th«ng tin cho phÐp ngêi dïng chia sÎ d÷ liÖu, v× vËy ngêi sö
dông hoÆc øng dông ë vÞ trÝ A ®Òu cã thÓ truy cËp hay cËp nhËt d÷ liÖu t¹i vÞ trÝ B.
C¸c vÞ trÝ cña mét hÖ thèng ph©n t¸n cã thÓ tr¶i réng trªn mét khu vùc lín (toµn
thÕ giíi) hoÆc mét ph¹m vi hÑp (toµ nhµ). Còng nh vËy m¸y tÝnh ë c¸c vÞ trÝ ph©n
t¸n cã thÓ lµ bÊt cø lo¹i nµo, tõ micro-computer cho ®Õn supercomputer.
II. C¸c ®Æc ®iÓm chÝnh cña hÖ ph©n t¸n.
HÖ ph©n t¸n cã c¸c ®Æc ®iÓm:
1. Chia xÎ tµi nguyªn.
ThuËt ng÷ tµi nguyªn dïng ®Ó chØ tÊt c¶ mäi thø cã thÓ chia xÎ bëi HÖ ph©n t¸n,
bao gåm c¸c thiÕt bÞ phÇn cøng: §Üa, m¸y in ... tíi c¸c ®èi tîng nh file, c¸c cöa sæ,
CSDL vµ c¸c ®èi tîng d÷ liÖu kh¸c.
ViÖc chia xÎ tµi nguyªn trªn hÖ ph©n t¸n - n¬i mµ c¸c tµi nguyªn bÞ lÖ thuéc vÒ
mÆt vËt lý víi mét m¸y tÝnh nµo ®ã - ®îc thùc hiÖn th«ng qua truyÒn th«ng. §Ó chia
xÎ tµi nguyªn mét c¸ch hiÖu qu¶ mçi tµi nguyªn cÇn ph¶i ®îc qu¶n lý bëi mét ch¬ng tr×nh cã giao diÖn truyÒn th«ng, c¸c tµi nguyªn cã thÓ ®îc truy nhËp, cËp nhËt
mét c¸ch tin cËy vµ nhÊt qu¸n. Qu¶n lý tµi nguyªn ë ®©y lµ lËp kÕ ho¹ch dù phßng,
®Æt tªn cho c¸c líp tµi nguyªn, cho phÐp tµi nguyªn ®îc truy nhËp tõ n¬i kh¸c, ¸nh
x¹ tªn tµi nguyªn vµo ®Þa chØ truyÒn th«ng ...
M« h×nh m¹ng m¸y tÝnh thêng ®îc sö dông lµ: M« h×nh xö lý Client-Server.
Trang 7
LuËn v¨n tèt nghiÖp
C¸c c«ng nghÖ sö dông trong CSDL ph©n t¸n
M« h×nh xö lý Client-Server:
Lµ mét m« h×nh trong ®ã cã viÖc xö lý hîp t¸c ®èi víi c¸c yªu cÇu cña Client
nªu ra víi m¸y Server. M¸y Server tiÕn hµnh xö lý vµ göi tr¶ kÕt qu¶ vÒ cho Client.
ViÖc xö lý hîp t¸c Client-Server thùc tÕ lµ mét d¹ng riªng cña xö lý ph©n t¸n
víi tµi nguyªn (vµ nhiÖm vô ¶nh hëng tíi tµi nguyªn) ®îc tr¶i qua hai hay nhiÒu hÖ
thèng tÝnh to¸n rêi r¹c.
M« h×nh xö lý Client-Server ®· næi lªn nh mét møc cao h¬n cña viÖc xö lý dïng
chung thiÕt bÞ ®· cã trong mang côc bé (LAN). Trong m«i trêng xö lý dïng chung
thiÕt bÞ, c¸c m¸y tÝnh c¸ nh©n (PC) ®îc g¾n víi thiÕt bÞ hÖ thèng ®Ó cho phÐp c¸c PC
nµy dïng chung tµi nguyªn tÖp trªn ®Üa cøng vµ m¸y in lµ c¸c thÝ dô tiªu biÓu. Theo
thuËt ng÷ LAN, c¸c thiÕt bÞ dïng chung nh vËy ®îc gäi lµ c¸c Server (phôc vô).
Tªn phôc vô lµ thÝch hîp h¬n c¶ v× c¸c thiÕt bÞ dïng chung nµy dïng ®Ó nhËn c¸c
yªu cÇu cÇn phôc vô tõ c¸c PC. Trong xö lý dïng chung thiÕt bÞ trªn LAN, c¸c yªu
cÇu cña PC nµy thêng bÞ giíi h¹n vÒ c¸c dÞch vô liªn quan tíi tÖp dïng chung hay
tÖp xö lý in. Nhîc ®iÓm hiÓn nhiªn cña c¸ch tiÕp cËn nh vËy lµ ë chç mäi xö lý øng
dông ®Òu ®îc thùc hiÖn trªn c¸c PC riªng lÎ, vµ chØ mét chøc n¨ng nµo ®ã (in, vµo
ra tÖp) míi lµ ph©n t¸n. Do ®ã, toµn bé tÖp ph¶i ®îc göi cho mét PC ®· ban ra yªu
cÇu READ tÖp ®ã. NÕu tÖp ®îc cËp nhËt th× toµn bé tÖp ®ã bÞ kho¸ bëi PC ®· t¹o ra
yªu cÇu cËp nhËt tÖp ®ã.
ChÝnh v× c¸c lý do trªn mµ m« h×nh xö lý Client-Server lµ viÖc më réng tù nhiªn
cña viÖc dïng chung thiÕt bÞ vµ vai trß cña c¸c tr¹m lµm viÖc trë thµnh kh¸ch cña
m¸y chñ. PhÇn cã ý nghÜa nhÊt cña m« h×nh nµy lµ xö lý øng dông ®îc ph©n chia
(kh«ng nhÊt thiÕt ph¶i chia ®Òu) gi÷a Client vµ Server. Xö lý thùc tÕ ®îc khëi ®Çu vµ
kiÓm so¸t mét phÇn bëi n¬i yªu cÇu dÞch vô lµ Client nhng kh«ng ph¶i theo kiÓu
chñ-kh¸ch. Thay v× ®iÒu ®ã, c¶ Client vµ Server ®Òu hîp t¸c ®Ó thùc hiÖn thµnh c«ng
øng dông. Ch¼ng h¹n nÕu PC ch¹y ch¬ng tr×nh cÇn mét b¶n ghi ®Æc biÖt nµo ®ã tõ
mét tÖp dïng chung th× nã sÏ chuyÓn yªu cÇu cho Server CSDL tiÕn hµng xö lý côc
bé råi nhËn l¹i ®óng b¶n ghi ®· yªu cÇu.
Nh vËy vÒ mÆt kiÕn tróc xö lý Client-Server cho thÊy:
- §êng liªn l¹c tin cËy, ch¾c ch¾n gi÷a Client vµ Server.
- C¸c trêng hîp t¬ng t¸c Client-Server do Client khëi xíng.
- Ph©n t¸n xö lý øng dông gi÷a Client vµ Server.
- Server kiÓm so¸t c¸c dÞch vô mµ Client yªu cÇu.
- Server lµm träng tµi cho c¸c yªu cÇu tranh chÊp.
Trang 8
LuËn v¨n tèt nghiÖp
C¸c c«ng nghÖ sö dông trong CSDL ph©n t¸n
Víi HÖ CSDL ph©n t¸n, m« h×nh Client-Server cã c¸c u ®iÓm:
- C¸c c«ng ty lîi dông ®îc c«ng nghÖ tÝnh to¸n cña PC. PC ngµy nay cung cÊp
mét n¨ng lùc tÝnh to¸n ®¸ng kÓ (mµ tríc ®©y chØ c¸c m¸y tÝnh lín míi cã ®îc) nhng
l¹i víi mét gi¸ thµnh nhá.
- Cho phÐp xö lý ®îc thùc hiÖn t¹i gÇn nguån d÷ liÖu cÇn xö lý (c¸c CSDL trªn
Server). Do ®ã lu lîng vµ thêi gian ®¸p øng cña m¹ng gi¶m ®i rÊt nhiÒu, hiÖu n¨ng
vµ kh¶ n¨ng chuyÓn t¶i cña m¹ng ®îc t¨ng lªn.
- T¹o ®iÒu kiÖn cho viÖc dïng giao diÖn ®å ho¹ (GUI) cã s½n trªn c¸c tr¹m lµm
viÖc hiÖn cã.
- Cho phÐp vµ hç trî hÖ thèng më: Client vµ Server cã thÓ ch¹y trªn c¸c nÒn
phÇn cøng vµ phÇn mÒm kh¸c nhau.
Tuy nhiªn kh«ng ph¶i lµ m« h×nh Client-Server ®· hoµn chØnh, nã vÉn cßn c¸c
nhîc ®iÓm sau ®©y:
- NÕu cã kh¸ nhiÒu thµnh phÇn logic cña øng dông ®îc chuyÓn vÒ Server th×
Server sÏ trë thµnh cæ chai y nh m¸y tÝnh lín (main frame) m« h×nh thiÕt bÞ ®Çu
cuèi. C¸c tµi nguyªn h¹n chÕ cña Server sÏ ë tr¹ng th¸i bÞ ®ßi hái lµm viÖc ë møc
cao h¬n do viÖc t¨ng sè ngêi tiªu thô tµi nguyªn (End User).
- C¸c øng dông ph©n t¸n, ®Æc biÖt lµ nh÷ng øng dông ®îc thiÕt kÕ cho xö lý hîp
t¸c thêng phøc t¹p h¬n c¸c øng dông kh«ng ph©n t¸n. Tuy nhiªn cã thÓ gi¶m bít ®é
phøc t¹p b»ng c¸ch thu nhá vÊn ®Ò lín thµnh mét tËp hîp vÊn ®Ò nhá h¬n, cã thÓ ®îc tÝnh ®éc lËp nhau, t¬ng tù nh trong hÖ thiÕt kÕ ®¬n thÓ.
2. TÝnh më.
TÝnh më cña mét hÖ thèng m¸y tÝnh lµ tÝnh dÔ dµng më réng phÇn cøng (thªm
c¸c thiÕt bÞ ngo¹i vi, bé nhí, c¸c giao diÖn truyÒn th«ng ... ) vµ phÇn mÒm (C¸c m«
h×nh hÖ ®iÒu hµnh, c¸c giao thøc truyªn th«ng, c¸c dÞch vô dïng chung tµi
nguyªn ...) cña nã.
Mét HÖ ph©n t¸n cã tÝnh më lµ hÖ cã thÓ ®îc t¹o nªn tõ nhiÒu lo¹i phÇn cøng vµ
phÇn mÒm cña nhiÒu nhµ cung cÊp kh¸c nhau víi ®iÒu kiÖn lµ c¸c thµnh phÇn nµy
ph¶i theo mét tiªu chuÈn chung.
TÝnh më cña HÖ ph©n t¸n ®îc xem xÐt theo møc ®é bæ sung vµo c¸c dÞch vô
dïng chung tµi nguyªn mµ kh«ng ph¸ háng hay nh©n ®«i c¸c dÞch vô ®ang tån t¹i.
TÝnh më ®îc hoµn thiÖn b»ng c¸ch x¸c ®Þnh hay ph©n ®Þnh râ c¸c giao diÖn chÝnh
cña mét hÖ vµ lµm cho nã t¬ng thÝch víi c¸c nhµ ph¸t triÓn phÇn mÒm (hay c¸c giao
diÖn chÝnh lµ phæ dông).
Trang 9
LuËn v¨n tèt nghiÖp
C¸c c«ng nghÖ sö dông trong CSDL ph©n t¸n
TÝnh më cña HÖ ph©n t¸n dùa trªn viÖc cung cÊp c¬ chÕ truyÒn th«ng gi÷a c¸c
tiÕn tr×nh vµ c«ng khai c¸c giao diÖn dïng ®Ó truy nhËp c¸c tµi nguyªn chung.
3. Kh¶ n¨ng song song.
HÖ ph©n t¸n ho¹t ®éng trªn mét m¹ng truyÒn th«ng cã nhiÒu m¸y tÝnh, mçi
m¸y tÝnh cã thÓ cã mét hay nhiÒu CPU. Trong cïng mét thêi ®iÓm nÕu cã N tiÕn
tr×nh cïng tån t¹i, ta nãi chóng ®îc thùc hiÖn ®ång thêi. ViÖc thùc hiÖn c¸c tiÕn
tr×nh theo c¬ chÕ ph©n chia thêi gian (mét CPU) hay song song (nhiÒu CPU).
Kh¶ n¨ng lµm viÖc song song trong HÖ ph©n t¸n ®îc thùc hiÖn do hai t×nh
huèng sau:
- NhiÒu ngêi sö dông ®ång thêi ®a ra c¸c lÖnh hay t¬ng t¸c víi c¸c ch¬ng tr×nh
øng dông.
- NhiÒu tiÕn tr×nh Server ch¹y ®ång thêi, mçi tiÕn tr×nh ®¸p øng yªu cÇu tõ c¸c
tiÕn tr×nh Client.
4. Kh¶ n¨ng më réng.
HÖ ph©n t¸n cã kh¶ n¨ng ho¹t ®éng tèt vµ hiÖu qu¶ ë nhiÒn møc kh¸c nhau.
Mét HÖ ph©n t¸n nhá nhÊt cã thÓ ho¹t ®éng chØ cÇn hai tr¹m lµm viÖc vµ mét File
Server. C¸c hÖ lín h¬n th× gåm cã hµng ngh×n m¸y, nhiÒu File Server, Printer Server.
Kh¶ n¨ng më réng cña mét hÖ ph©n t¸n ®Æc trng bëi tÝnh kh«ng thay ®æi phÇn
mÒm hÖ thèng vµ phÇn mÒm øng dông khi hÖ ®îc më réng. §iÒu nµy chØ ®¹t ë møc
®é nµo ®ã ®èi víi c¸c HÖ ph©n t¸n hiÖn t¹i. Yªu cÇu cho viÖc më réng kh«ng chØ lµ
sù më réng vÒ phÇn cøng hay vÒ m¹ng mµ nã tr¶i réng trªn tÊt c¶ c¸c khÝa c¹nh khi
thiÕt kÕ hÖ ph©n t¸n. Mét vÝ dô ®¬n gi¶n lµ tÇn suÊt sö dông mét file lín t¬ng ®¬ng
víi viÖc t¨ng thªm sè ngêi sö dông trªn m¹ng. §Ó tr¸nh t×nh tr¹ng t¾c nghÏn x¶y ra
khi chØ cã mét Server ®¸p øng c¸c yªu cÇu truy nhËp file ®ã, ngêi ta nh©n b¶n file
®ã trªn mét vµi Server vµ hÖ thèng ®îc thiÕt kÕ sao cho viÖc thªm Server dÔ dµng.
Mét sè gi¶i ph¸p kh¸c lµ sö dông Cache vµ c¸c b¶n sao d÷ liÖu.
5. Kh¶ n¨ng chÞu lçi.
ViÖc thiÕt kÕ kh¶ n¨ng chÞu lçi cña c¸c hÖ thèng m¸y tÝnh dùa trªn hai gi¶i ph¸p
sau:
- Dïng kh¶ n¨ng thay thÕ ®Ó ®¶m b¶o sù ho¹t ®éng liªn tôc vµ hiÖu qu¶.
- Dïng c¸c ch¬ng tr×nh phôc håi d÷ liÖu, th«ng tin khi x¶y ra sù cè.
§Ó x©y dùng mét hÖ thèng cã thÓ kh¾c phôc sù cè theo c¸ch thø nhÊt th× ngêi ta
nèi hai m¸y tÝnh víi nhau ®Ó thùc hiÖn mét ch¬ng tr×nh, mét trong hai m¸y ch¹y ë
Trang 10
LuËn v¨n tèt nghiÖp
C¸c c«ng nghÖ sö dông trong CSDL ph©n t¸n
chÕ ®é Standby (kh«ng t¶i hay chê). Gi¶i ph¸p nµy kh¸ tèn kÐm v× ph¶i nh©n ®«i
ph©n cøng cña hÖ thèng. Mét gi¶i ph¸p ®Ó gi¶m phÝ tæn lµ c¸c Server riªng lÎ ®îc
cung cÊp c¸c øng dông quan träng ®Ó cã thÓ thay thÕ nhau khi cã sù cè xuÊt hiÖn.
Khi kh«ng cã sù cè c¸c Server ho¹t ®éng b×nh thêng (nghÜa lµ vÉn phôc vô c¸c yªu
cÇu tõ Client). Khi cã sù cè trªn mét Server nµo ®ã, c¸c øng dông Client tù chuyÓn
híng sang c¸c Server cßn l¹i.
Víi c¸ch thø hai th× c¸c phÇn mÒm phôc håi ®îc thiÕt kÕ sao cho tr¹ng th¸i d÷
liÖu hiÖn thêi (tr¹ng th¸i tríc khi x¶y ra sù cè) cã thÓ ®îc kh«i phôc khi lçi ®îc ph¸t
hiÖn.
C¸c hÖ ph©n t¸n cung cÊp kh¶ n¨ng s½n sµng cao ®Ó ®èi phã víi c¸c sai háng
phÇn cøng. Kh¶ n¨ng s½n sµng cña hÖ thèng ®îc ®o b»ng tû lÖ thêi gian mµ hÖ
thèng s½n sµng lµm viÖc so víi thêi gian cã sù cè. Khi mét m¸y trªn m¹ng bÞ sai
háng th× chØ cã c«ng viÖc liªn quan ®Õn c¸c thµnh phÇn sai háng bÞ ¶nh hëng. Ngêi
sö dông cã thÓ chuyÓn ®Õn mét tr¹m kh¸c nÕu m¸y hä ®ang sö dông bÞ háng, mét
tiÕn tr×nh Server cã thÓ ®îc khëi ®éng l¹i trªn mét m¸y kh¸c.
6. TÝnh trong suèt.
TÝnh trong suèt cña hÖ ph©n t¸n ®îc hiÓu nh lµ sù che khuÊt ®i c¸c thµnh phÇn
riªng biÖt cña hÖ ®èi víi ngêi sö dông vµ nh÷ng ngêi lËp tr×nh øng dông. Ngêi sö
dông cã quyÒn truy cËp ®Õn d÷ liÖu n»m t¹i bÊt cø vÞ trÝ nµo. C¸c thao t¸c ®Ó lÊy
hoÆc cËp nhËt d÷ liÖu t¹i mét ®iÓm d÷ liÖu ë xa ®îc tù ®éng thùc hiÖn bëi hÖ thèng
t¹i ®iÓm ®a ra yªu cÇu. Ngêi sö dông kh«ng cÇn biÕt ®Õn sù ph©n t¸n cña tÊt c¶ d÷
liÖu trªn m¹ng dêng nh n»m ë m¸y tÝnh côc bé cña ngêi sö dông.
III. C¸c lÝ do sö dông CSDL ph©n t¸n.
Tuy viÖc qu¶n trÞ mét hÖ thèng CSDL ph©n t¸n gÆp nhiÒu khã kh¨n h¬n so víi
hÖ CSDL tËp trung nhng xu híng x©y dùng c¸c hÖ CSDL ph©n t¸n ngµy cµng ph¸t
triÓn vµ cã nhiÒu øng dông trong thùc tÕ v× c¸c nguyªn nh©n sau:
1. XuÊt ph¸t tõ chÝnh yªu cÇu thùc tÕ vÒ tæ chøc vµ kinh tÕ.
Trªn thùc tÕ nhiÒu tæ chøc lµ kh«ng tËp trung, d÷ liÖu ngµy cµng lín vµ phôc
vô cho ®a ngêi dïng n»m ph©n t¸n v× vËy CSDL ph©n t¸n lµ con ®êng thÝch hîp víi
cÊu tróc tù nhiªn cña c¸c tæ chøc ®ã. §©y lµ mét trong c¸c yÕu tè quan träng thóc
®Èy viÖc ph¸t triÓn CSDL ph©n t¸n.
Mét vÝ dô minh ho¹ cho vÊn ®Ò nµy lµ hÖ thèng b¸n vÐ m¸y bay thèng nhÊt trªn
toµn thÕ giíi. Mçi h·ng hµng kh«ng cã mét hÖ CSDL riªng, cã sù qu¶n lý riªng vµ
kh«ng thÓ cã lý do nµo ®Ó CSDL nµy tËp trung ë mét chç ®îc. Tuy vËy c¸c h·ng
Trang 11
LuËn v¨n tèt nghiÖp
C¸c c«ng nghÖ sö dông trong CSDL ph©n t¸n
hµng kh«ng l¹i cã quan hÖ víi nhau trong viÖc b¸n vÐ hµnh kh¸ch cho nh÷ng tuyÕn
®êng thuéc ph¹m vi qu¶n lý cña nhiÒu h·ng. Do vËy hÖ thèng d÷ liÖu vÒ chuyÕn bay
cña c¸c h·ng hµng kh«ng chÝnh lµ mét hÖ CSDL ph©n t¸n ®îc qu¶n lý thèng nhÊt
t¹i trung t©m ®iÒu khiÓn bay ®Æt t¹i mét ®Þa ®iÓm nµo ®ã.
2. Sù liªn kÕt c¸c CSDL ®ang tån t¹i.
CSDL ph©n t¸n lµ gi¶i ph¸p tù nhiªn khi cã c¸c CSDL ®ang tån t¹i vµ sù cÇn
thiÕt thùc hiÖn x©y dùng mét øng dông toµn côc. Trong trêng hîp nµy CSDL ph©n
t¸n ®îc t¹o tõ díi lªn (bottom-up) tõ c¸c CSDL ®· tån t¹i tríc ®ã. TiÕn tr×nh nµy cã
thÓ ®ßi hái cÊu tróc l¹i côc bé ë mét møc ®é nhÊt ®Þnh. Dï sao, nh÷ng söa ®æi nµy
lµ nhá h¬n rÊt nhiÒu so víi viÖc t¹o lËp mét CSDL tËp trung hoµn toµn míi.
3. Sù ph¸t triÓn më réng.
C¸c tæ chøc cã thÓ më réng b»ng c¸ch thªm c¸c ®¬n vÞ míi, võa cã tÝnh tù trÞ
võa cã quan hÖ t¬ng ®èi víi c¸c tæ chøc kh¸c. Khi ®ã CSDL ph©n t¸n hç trî mét sù
më réng uyÓn chuyÓn víi mét møc ®é ¶nh hëng tèi thiÓu tíi c¸c ®¬n vÞ ®ang tån
t¹i.
Víi CSDL tËp trung, còng cã thÓ khëi t¹o kÝch thíc lín cho viÖc më réng trong
t¬ng lai. §iÒu ®ã rÊt khã tiªn ®Þnh vµ chÞu mét phÝ tæn lín, mÆt kh¸c sù më réng
nµy cã ¶nh hëng lín kh«ng chØ trªn c¸c øng dông míi mµ cßn trªn c¸c øng dông
®ang tån t¹i.
4. Lµm gi¶m tæng chi phÝ t×m kiÕm.
ViÖc ph©n t¸n d÷ liÖu cho phÐp c¸c nhãm lµm viÖc côc bé cã thÓ kiÓm so¸t toµn
bé d÷ liÖu cña hä. Tuy vËy t¹i cïng thêi ®iÓm, ngêi sö dông cã thÓ truy cËp ®Õn d÷
liÖu ë xa nÕu cÇn thiÕt. T¹i c¸c vÞ trÝ côc bé, thiÕt bÞ phÇn cøng cã thÓ ®îc chän sao
cho phï hîp víi c«ng viÖc xö lý d÷ liÖu côc bé t¹i ®iÓm ®ã.
5. Tr¶ lêi truy vÊn nhanh.
Dùa trªn c¸ch thøc d÷ liÖu ®îc ph©n t¸n, hÇu hÕt c¸c yªu cÇu truy vÊn d÷ liÖu tõ
ngêi dïng t¹i bÊt kú vÞ trÝ côc bé nµo ®Òu ®îc tho¶ m·n bëi d÷ liÖu ngay t¹i thêi
®iÓm ®ã. §iÒu nµy lµm t¨ng ®¸ng kÓ tiÕn tr×nh xö lý c¸c yªu cÇu truy vÊn d÷ liÖu
cña ngêi dïng. HÖ thèng CSDL ph©n t¸n cßn cho phÐp c¸c b¶ng truy vÊn phøc t¹p
cã thÓ chia thµnh nhiÒu b¶ng nhá ®Ó cã thÓ thùc hiÖn tiÕn tr×nh xö lý song song
cïng lóc trªn nhiÒu vÞ trÝ côc bé kh¸c nhau. Kü thuËt nµy còng n©ng cao tèc ®é xö
lý d÷ liÖu trªn hÖ thèng.
Trang 12
LuËn v¨n tèt nghiÖp
C¸c c«ng nghÖ sö dông trong CSDL ph©n t¸n
6. §é tin cËy vµ kh¶ n¨ng sö dông ®îc n©ng cao.
Khi hÖ thèng CSDL tËp trung bÞ háng, toµn bé CSDL trë nªn v« dông víi tÊt c¶
ngêi sö dông. Cßn ®èi víi hÖ thèng CSDL ph©n t¸n, nÕu cã mét thµnh phÇn nµo ®ã
cña hÖ thèng bÞ háng, hÖ thèng vÉn cã thÓ duy tr× ho¹t ®éng tuy nhiªn còng kh«ng
thÓ hiÖu qu¶ nh khi nã cßn hoµn h¶o. Dï sao, viÖc thu ®îc môc ®Ých nµy kh«ng ph¶i
kh«ng r¾c rèi vµ ®ßi hái sö dông c¸c kü thuËt vÉn cha ®îc hiÓu biÕt hoµn chØnh.
Kh¶ n¨ng xö lý tù trÞ cña c¸c vÞ trÝ kh¸c nhau tù nã kh«ng ®¶m b¶o mét tÝnh tin cËy
toµn bé cao cña hÖ thèng, nhng nã ®¶m b¶o mét thuéc tÝnh graceful degration. Nãi
mét c¸ch kh¸c, sù cè trong CSDL ph©n t¸n cã thÓ thêng xuyªn h¬n mét CSDL tËp
trung v× cã sè lîng thµnh phÇn lín h¬n, nhng hËu qu¶ cña sù cè ®îc h¹n chÕ chØ tíi
c¸c øng dông sö dông d÷ liÖu cña vÞ trÝ cã sù cè, ®æ vì hoµn toµn cña hÖ thèng lµ
®iÒu hiÕm x¶y ra.
7. Gi¸ thµnh truyÒn th«ng thÊp h¬n.
Víi CSDL ph©n t¸n, d÷ liÖu cã thÓ ®Æt gÇn n¬i nã ®îc sö dông nhiÒu nhÊt. §Æc
®iÓm nµy ®· lµm gi¶m chi phÝ chuyÒn t¶i d÷ liÖu rÊt lín so víi hÖ CSDL tËp trung.
IV. H¹n chÕ cña CSDL ph©n t¸n.
HÖ thèng CSDL ph©n t¸n bªn c¹nh nh÷ng u ®iÓm nh trªn còng cã nh÷ng mÆt
h¹n chÕ nh sau:
- Gi¸ thµnh vµ sù phøc t¹p cña phÇn mÒm: C¸c phÇn mÒm sö dông trong m«i trêng CSDL ph©n t¸n rÊt phøc t¹p, ®Æc biÖt lµ phÇn mÒm sö dông cho viÖc qu¶n trÞ
m«i trêng CSDL ph©n t¸n.
- Khã kh¨n trong tiÕn tr×nh kÕt nèi c¸c vÞ trÝ d÷ liÖu côc bé: C¸c vÞ trÝ côc bé
ph¶i trao ®æi th«ng ®iÖp víi nhau vµ thùc hiÖn thªm c¸c tÝnh to¸n phøc t¹p ®Ó ®¶m
b¶o sù kÕt nèi ®óng ®¾n gi÷a c¸c vÞ trÝ ®ã.
- Sù toµn vÑn d÷ liÖu: Mét s¶n phÈm mang nhiÒu tÝnh phøc t¹p sÏ lµm gia t¨ng
kh¶ n¨ng x¸o trén trong viÖc b¶o ®¶m tÝnh toµn vÑn d÷ liÖu.
- Tèc ®é truy cËp sÏ trë nªn rÊt chËm: NÕu d÷ liÖu kh«ng ®îc ph©n t¸n theo
®óng yªu cÇu sö dông hoÆc c¸c b¶ng truy vÊn ®îc thiÕt lËp kh«ng ®óng ®¾n th× viÖc
t×m kiÕm vµ xö lý d÷ liÖu sÏ rÊt chËm.
Trang 13
LuËn v¨n tèt nghiÖp
C¸c c«ng nghÖ sö dông trong CSDL ph©n t¸n
phÇn II
C¸c c«ng nghÖ sö dông trong
hÖ C¬ së d÷ liÖu ph©n t¸n
I. KiÕn tróc c¬ b¶n cña CSDL ph©n t¸n.
Tuy kh«ng lµ kiÕn tróc têng minh cho tÊt c¶ c¸c CSDL ph©n t¸n, nhng kiÕn tróc
díi ®©y thÓ hiÖn c¸ch thøc tæ chøc chung cña mét CSDL ph©n t¸n:
S¬ ®å tæng thÓ
S¬ ®å ph©n ®o¹n
S¬ ®å ®Þnh vÞ
S¬ ®å ¸nh x¹ ®Þa ph ¬ng 1
S¬ ®å ¸nh x¹ ®Þa ph ¬ng 2
DBMS cña vÞ trÝ 1
DBMS cña vÞ trÝ 2
CSDL ®Þa ph ¬ng
t¹i vÞ trÝ 1
CSDL ®Þa ph ¬ng
t¹i vÞ trÝ 2
C¸c vÞ trÝ kh¸c
:
:
...
...
:
:
H×nh 1.II: KiÕn tróc HÖ CSDL ph©n
t¸n
1. S¬ ®å tæng thÓ.
§Þnh nghÜa tÊt c¶ d÷ liÖu sÏ ®îc lu tr÷ trong CSDL ph©n t¸n. Trong m« h×nh
quan hÖ, s¬ ®å tæng thÓ bao gåm ®Þnh nghÜa cña tËp c¸c quan hÖ tæng thÓ.
2. S¬ ®å ph©n ®o¹n.
Mçi quan hÖ tæng thÓ cã thÓ chia thµnh mét vµi phÇn t¬ng ®èi ®éc lËp víi nhau
®îc gäi lµ fragments (®o¹n). Cã nhiÒu c¸ch kh¸c nhau ®Ó thùc hiÖn viÖc ph©n chia
nµy: Ph©n ®o¹n ngang, ph©n ®o¹n däc, ph©n ®o¹n hçn hîp sÏ ®îc tr×nh bµy trong
c¸c phÇn sau.
Trang 14
LuËn v¨n tèt nghiÖp
C¸c c«ng nghÖ sö dông trong CSDL ph©n t¸n
3. S¬ ®å ®Þnh vÞ:
Fragments (c¸c ®o¹n) lµ c¸c phÇn logic cña quan hÖ tæng thÓ ®îc ®Þnh vÞ vËt lý
t¹i mét hoÆc nhiÒu vÞ trÝ trªn m¹ng. S¬ ®å ®Þnh vÞ ®Þnh nghÜa ®o¹n ®Þnh vÞ t¹i tõng
vÞ trÝ. Lu ý r»ng kiÓu ¸nh x¹ ®îc ®Þnh nghÜa trong s¬ ®å ®Þnh vÞ quyÕt ®Þnh CSDL
ph©n t¸n lµ d thõa hay kh«ng.
4. S¬ ®å ¸nh x¹ ®Þa ph¬ng:
Thùc hiÖn ¸nh x¹ c¸c ¶nh vËt lý vµ c¸c ®èi tîng ®îc lu tr÷ t¹i mét tr¹m lªn c¸c
CSDL ®Þa ph¬ng.
II. ThiÕt kÕ hÖ thèng CSDL ph©n t¸n
ThiÕt kÕ mét hÖ thèng ph©n t¸n lµ viÖc s¾p ®Æt d÷ liÖu vµ ch¬ng tr×nh tíi c¸c
tr¹m lµm viÖc cña m¹ng m¸y tÝnh. Trong trêng hîp thiÕt kÕ DBMS (Distibute
database managment system) cã hai vÊn ®Ò chÝnh lµ:
- Sù ph©n bè d÷ liÖu cña DBMS.
- Sù ph©n bè c¸c ch¬ng tr×nh øng dông ch¹y trªn nã.
PhÇn sau ®©y tr×nh bµy kh¸i qu¸t c¸ch thøc chung ®Ó thiÕt kÕ mét hÖ thèng
CSDL ph©n t¸n.
1. Khung lµm viÖc chung cho thiÕt kÕ hÖ CSDL ph©n t¸n.
Tõ s¬ ®å kiÕn tróc cña HÖ CSDL ph©n t¸n, ngêi ta ®a ra s¬ ®å thiÕt kÕ chung
cho HÖ CSDL ph©n t¸n nh sau:
ThiÕt kÕ lîc ®å quan niÖm: M« t¶ toµn bé d÷ liÖu sÏ ®îc dïng trong øng dông.
ThiÕt kÕ CSDL vËt lÝ: Lµ qu¸ tr×nh thùc hiÖn ¸nh x¹ lîc ®å quan niÖm vµo c¸c
vïng chøa vµ x¸c ®Þnh c¸ch thøc truy nhËp thÝch hîp cho chóng.
ThiÕt kÕ ph©n ®o¹n: Thùc hiÖn viÖc ph©n chia d÷ liÖu thµnh c¸c phÇn, kÌm theo
c¸ch thøc truy nhËp thÝch hîp.
ThiÕt kÕ sù ph©n phèi c¸c phÇn: C¸c ®o¹n d÷ liÖu ®îc ®a vµo c¸c vÞ trÝ lu tr÷
thÝch hîp víi yªu cÇu ho¹t ®éng thùc tÕ cña hÖ thèng.
VÝ dô: Ta kh«ng thÓ ®a d÷ liÖu vÒ C¸n bé cho phßng qu¶n lý Sinh viªn vµ ngîc
l¹i.
Trang 15
LuËn v¨n tèt nghiÖp
C¸c c«ng nghÖ sö dông trong CSDL ph©n t¸n
ThiÕt kÕ c¸c l îc ®å quan niÖm
ThiÕt kÕ CSDL vËt lÝ
ThiÕt kÕ ph©n ®o¹n
ThiÕt kÕ sù ph©n phèi c¸c thµnh phÇn
H×nh 2.II: S¬ ®å thiÕt kÕ chung cho CSDL ph©n t¸n
2. C¸c ph¬ng ph¸p thiÕt kÕ hÖ CSDL ph©n t¸n.
Theo khung lµm viÖc chung cho thiÕt kÕ hÖ CSDL ph©n t¸n, ®Õn nay cã hai ph¬ng ph¸p thiÕt kÕ ®iÓn h×nh lµ: TOP-DOWN vµ BOTTOM-UP.
A. Ph¬ng ph¸p TOP-DOWN:
TOP-DOWN: Lµ ph¬ng ph¸p thiÕt kÕ tõ trªn xuèng vµ ®îc chia ra lµm nhiÒu
giai ®o¹n, mçi giai ®o¹n ®Òu cã nhiÖm vô riªng, giai ®o¹n nµy nèi tiÕp giai ®o¹n
kia, ®Çu ra cña giai ®o¹n tríc ®îc lµm ®Çu vµo cho giai ®o¹n kÕ tiÕp sau nã.
S¬ ®å thiÕt kÕ CSDL ph©n t¸n theo m« h×nh TOP_DOWN (H×nh 3.II):
C¸c ®Þnh nghÜa: §Þnh nghÜa m«i trêng hÖ thèng, d÷ liÖu vµ c¸c tiÕn tr×nh cho tÊt
c¶ nh÷ng kh¶ n¨ng vÒ d÷ liÖu cña ngêi sö dông.
Tµi liÖu vÒ nh÷ng ®iÒu kiÖn cÇn thiÕt n»m trong hai tham sè: ThiÕt kÕ View vµ
ThiÕt kÕ møc quan niÖm.
ThiÕt kÕ View: Ho¹t ®éng ph©n phèi víi sù ®Þnh nghÜa nh÷ng c¸i chung cho ngêi sö dông.
ThiÕt kÕ møc quan niÖm: Lµ mét tiÕn tr×nh kiÓm tra vµ x¸c ®Þnh râ hai nhãm
quan hÖ Ph©n tÝch thùc thÓ vµ Ph©n tÝch chøc n¨ng:
a. Ph©n tÝch thùc thÓ: Liªn quan tíi sù x¸c ®Þnh c¸c lo¹i thùc thÓ, c¸c thuéc tÝnh
vµ c¸c mèi quan hÖ gi÷a chóng.
b. Ph©n tÝch chøc n¨ng: X¸c ®Þnh c¸c chøc n¨ng c¬ së.
Lîc ®å tæng thÓ møc quan niÖm, mÉu truy nhËp th«ng tin vµ External Schema
Definition: TËp hîp kÕt qu¶ cña c¸c bíc trªn, s¾p xÕp c¸c thùc thÓ trªn c¸c vÞ trÝ cña
hÖ thèng ph©n t¸n vµ chuyÓn tíi bíc tiÕp theo.
Trang 16
LuËn v¨n tèt nghiÖp
C¸c c«ng nghÖ sö dông trong CSDL ph©n t¸n
C¸c
®Þnh nghÜa
System Requirements
(Objectives)
ThiÕt kÕ møc
quan niÖm
L îc ®å tæng thÓ
møc quan niÖm
User Input
View Integration
Truy nhËp
th«ng tin
ThiÕt kÕ
view
External Schema
Definitions
ThiÕt kÕ
ph©n t¸n
User
input
L îc ®å logic
møc quan niÖm
ThiÕt kÕ
vËt lý
L îc ®å
vËt lý
Trao ®æi
Bé
kiÓm tra
Trao ®æi
H×nh 3.II: S¬ ®å thiÕt kÕ CSDL ph©n t¸n theo m« h×nh TOP-DOWN
ThiÕt kÕ ph©n t¸n: ThiÕt kÕ ph©n t¸n bao gåm hai phÇn ph©n ®o¹n vµ ®Þnh vÞ
CSDL.
Lîc ®å møc quan niÖm: T¹o ra c¸c lîc ®å CSDL møc quan niÖm.
ThiÕt kÕ vËt lý: Thùc hiÖn ¸nh x¹ c¸c lîc ®å CSDL møc quan niÖm ra c¸c ®¬n vÞ
lu tr÷ vËt lÝ cã gi¸ trÞ t¹i c¸c vÞ trÝ t¬ng øng.
Bé kiÓm tra: KiÓm tra c¸c giai ®o¹n cña qu¸ tr×nh thiÕt kÕ CSDL. NÕu mét giai
®o¹n bÞ sai sÏ tiÕn hµnh thiÕt kÕ l¹i.
Ph¬ng ph¸p TOP-DOWN lµ cã hiÖu qu¶ khi mét hÖ thèng CSDL ®îc thiÕt kÕ tõ
®Çu. Tuy nhiªn trong thùc tÕ cã mét sè hÖ CSDL ®· tån t¹i th× nhiÖm vô cña ngêi
thiÕt kÕ lµ liªn kÕt chóng l¹i thµnh mét thÓ thèng nh©t trong CSDL míi, khi ®ã ngêi
thiÕt kÕ thêng sö dông ph¬ng ph¸p BOTTOM_UP.
Trang 17
LuËn v¨n tèt nghiÖp
C¸c c«ng nghÖ sö dông trong CSDL ph©n t¸n
B. Ph¬ng ph¸p BOTTOM-UP.
BOTTOM-UP: Lµ ph¬ng ph¸p ngîc l¹i víi ph¬ng ph¸p TOP_DOWN. Trong
thiÕt kÕ CSDL ph©n t¸n BOTTOM-UP sÏ b¾t ®Çu thiÕt kÕ nh÷ng lîc ®å ë møc quan
niÖm sao cho chóng ®éc lËp víi nhau. Sau ®ã chóng ®îc kÕt hîp l¹i trong mét s¬ ®å
tæng thÓ ( Global Conceptual schema ).
3. ThiÕt kÕ CSDL ph©n ®o¹n.
ThiÕt kÕ ph©n ®o¹n lµ mét trong nh÷ng ®Æc trng c¬ b¶n trong thiÕt kÕ CSDL
ph©n t¸n. Môc ®Ých cña thiÕt kÕ ph©n ®o¹n lµ ph©n chia CSDL tæng thÓ thµnh c¸c
phÇn kh«ng giao nhau, mçi phÇn ®ã ®îc gäi lµ mét ®o¹n.
a. C¸c ®iÒu kiÖn cho thiÕt kÕ ph©n ®o¹n.
Ph¬ng ph¸p thiÕt kÕ ph©n ®o¹n ®óng ®¾n ph¶i tho¶ m·n ba ®iÒu kiÖn rµng buéc
sau:
- TÝnh ®Çy ®ñ: Toµn bé d÷ liÖu thuéc quan hÖ tæng thÓ ph¶i thuéc c¸c ®o¹n quan
hÖ vµ ngîc l¹i.
- TÝnh th¸o rêi ®îc: C¸c ®o¹n ph¶i tèi thiÓu ho¸ sù giao nhau.
- X©y dùng l¹i: CSDL cña quan hÖ tæng thÓ cã thÓ x©y dùng l¹i tõ c¸c ®o¹n.
b. C¸c ph¬ng ph¸p ph©n ®o¹n.
Cã hai ph¬ng ph¸p chÝnh lµ: Ph©n ®o¹n ngang vµ ph©n ®o¹n däc. Ph©n ®o¹n
hçn hîp lµ ph¬ng ph¸p kÕt hîp cña hai ph¬ng ph¸p trªn.
+ Ph©n ®o¹n ngang:
Ph©n ®o¹n ngang c¬ së: Ph©n ®o¹n ngang c¬ së tËp trung ë c¸c hµng cña
b¶ng. Quan hÖ tæng thÓ sÏ ®îc chia thµnh c¸c quan hÖ con cã cïng tËp thuéc tÝnh
nhng sè lîng c¸c hµng lµ nhá h¬n.
Chó ý lµ mçi hµng cña quan hÖ thuéc mét vµ chØ mét ®o¹n.
VÝ dô: Cho quan hÖ KHACH_HANG cã cÊu tróc nh sau:
KHACH_HANG:
MAKH
J1
J2
J3
J4
TENKH
Jonh
Mary
Bill
Clark
DIACHI
21 Ly Nam De
16 Tran Phu
106 Ton Duc Thang
12 Ba Trieu
CHINHANH
SaiGon
ChoLon
SaiGon
ChoLon
Trang 18
LuËn v¨n tèt nghiÖp
C¸c c«ng nghÖ sö dông trong CSDL ph©n t¸n
Thùc hiÖn ph©n ®o¹n ngang c¬ së thµnh hai quan hÖ KHACH_HANG1 vµ
KHACH_HANG2:
KHACH_HANG1:
MAKH
J1
J3
TENKH
Jonh
Bill
DIACHI
21 Ly Nam De
106 Ton Duc Thang
CHINHANH
SaiGon
SaiGon
DIACHI
16 Tran Phu
12 Ba Trieu
CHINHANH
ChoLon
ChoLon
KHACH_HANG2:
MAKH
J2
J4
TENKH
Mary
Clark
Nh vËy thùc chÊt cña qu¸ tr×nh ph©n ®o¹n ngang lµ thùc hiÖn c©u lÖnh SELECT
víi c¸c ®iÒu kiÖn cô thÓ. Trong vÝ dô trªn cã hai c©u lÖnh SELECT ®îc thùc hiÖn lµ:
KHACH_HANG1:
Create table KHACH_HANG1 as
Select MAKH, TENKH, DIACHI, CHINHANH from KHACH_HANG
where CHINHANH = 'SAIGON";
KHACH_HANG2:
Create table KHACH_HANG2 as
Select MAKH, TENKH, DIACHI, CHINHANH from KHACH_HANG
where CHINHANH = 'CHOLON";
Ph©n ®o¹n ngang suy diÔn: B¾t nguån tõ kÕt qu¶ cña qu¸ tr×nh ph©n ®o¹n
ngang c¬ së, ph©n ®o¹n ngang suy diÔn ®îc sö dông ®Ó kÕt nèi c¸c ®o¹n, t¹o ra
CSDL thÝch hîp cho c¸c øng dông. Qu¸ tr×nh kÕt nèi yªu cÇu ph¶i cã thuéc tÝnh kÕt
nèi.
VÝ dô:
Cho quan hÖ DIENTHOAI cã cÊu tróc nh sau:
DIENTHOAI:
MAKH
J1
J2
J3
J4
DIENTHOAI
8.243.654
9.564.734
8.777.253
8.372.564
Trang 19
LuËn v¨n tèt nghiÖp
C¸c c«ng nghÖ sö dông trong CSDL ph©n t¸n
Thùc hiÖn ph©n ®o¹n ngang suy diÔn gi÷a c¸c quan hÖ: KHACH_HANG1,
KHACH_HANG2 vµ DIENTHOAI víi trêng liªn kÕt lµ MAKH kÕt qu¶ cho ta hai
quan hÖ sau:
KH-DT1:
MAKH
J1
J3
TENKH
Jonh
Bill
DIACHI
21 Ly Nam De
106 Ton Duc Thang
CHINHANH
SaiGon
SaiGon
DIENTHOAI
8.243.654
8.777.253
TENKH
Mary
Clark
DIACHI
16 Tran Phu
12 Ba Trieu
CHINHANH
ChoLon
ChoLon
DIENTHOAI
9.564.734
8.372.564
KH-DT2:
MAKH
J2
J4
Nh vËy thùc chÊt cña qu¸ tr×nh ph©n ®o¹n ngang suy diÔn lµ thùc hiÖn phÐp nöa
kÕt nèi tõ kÕt qu¶ cña qu¸ tr×nh ph©n ®o¹n ngang c¬ së cïng quan hÖ mµ ta cÇn kÕt
nèi. Trong vÝ dô trªn quan hÖ KH_DT1 vµ KH_DT2 lµ kÕt qu¶ cña hai phÐp thùc
hiÖn sau:
KH-DT1:
Create table KH-DT1 as
select KHACH-HANG1.MAKH, TENKH, DIACHI, CHINHANH,
DIENTHOAI from KHACH_HANG1,DIENTHOAI
where KHACH_HANG1.MAKH = DIENTHOAI.MAKH;
KH-DT2:
Create table KH-DT2 as
select KHACH-HANG2.MAKH, TENKH, DIACHI, CHINHANH,
DIENTHOAI from KHACH_HANG2,DIENTHOAI
where KHACH_HANG2.MAKH = DIENTHOAI.MAKH;
+ Ph©n ®o¹n däc: Ph©n ®o¹n tËp chung ë c¸c thuéc tÝnh, trong c¸c thuéc tÝnh
cña quan hÖ chän ra thuéc tÝnh kÕt nèi. KÕt qu¶ thu ®îc lµ mét tËp c¸c quan hÖ con,
chóng cã thÓ kÕt nèi l¹i t¹o thµnh quan hÖ tæng thÓ.
VÝ dô: Thùc hiÖn ph©n ®o¹n däc víi thuéc tÝnh liªn kÕt lµ MAKH tõ quan hÖ
KH-DT2, ta thu ®îc hai quan hÖ QH1 vµ QH2 nh sau:
QH1:
MAKH
J2
J4
TENKH
Mary
Clark
DIACHI
16 Tran Phu
12 Ba Trieu
Trang 20
- Xem thêm -