You are on page 1of 18

8/25/2012

1



Chng II
Cc h c s d liu
phn tn
1


Nguyn Kim Anh
anhnk-fit@mail.hut.edu.vn



B mn H thng Thng tin, SoICT

Ni dung
Tng quan v cc h CSDLPT
Phn on d liu
Biu din cc yu cu vi cc mc trong
sut khc nhau
Thit k CSDLPT
Ti u ha CSDL phn tn
Qun tr giao dch v iu khin tng
tranh
2
M u
Cc h CSDL quan h c in, tp trung thu c
nhng thnh tu to ln v c phng din l thuyt v
thc hnh.
Hn ch ca CSDL quan h tp trung: vn t chc, lu
tr v khai thc d liu khng ph hp vi cc t chc x
nghip c quy m ln, rt ln v hot ng trn cc a
bn rng ln nhiu v tr a l cch xa nhau
Hng nghin cu m rng c xut:
Xy dng h CSDL phn tn
3
Ti liu tham kho
J.D.Ullman, Principle of Knowledge-base and
Database Systems, 1988.
S.Ceri&G.Pelagatti, Distributed Databases,
Principles&Systems, 1984.
M.T. zsu & P. Valduriez, Principles of
Distributed Database Systems. Prentice-Hall,
1999.


4
8/25/2012
2
Tng quan v cc h CSDL
CSDL phn tn?
H qun tr CSDL phn tn
Phn loi cc h CSDL phn tn
Kin trc ca CSDL phn tn
Cc mc trong sut khc nhau
u/nhc im ca vic xy dng h CSDL
phn tn

5
CSDL phn tn?
Mt CSDL phn tn l mt tp hp nhiu CSDL c quan h
logic vi nhau v c phn tn trn mt mng my tnh
- Tnh cht phn tn: Ton b d liu ca CSDL phn tn khng
c c tr mt ni m c tr trn nhiu trm thuc mng my
tnh, iu ny gip chng ta phn bit CSDL phn tn vi CSDL tp
trung n l.
- Quan h logic: Ton b d liu ca CSDL phn tn c mt s cc
thuc tnh rng buc chng vi nhau, iu ny gip chng ta c
th phn bit mt CSDL phn tn vi mt tp hp CSDL cc b
hoc cc tp c tr ti cc v tr khc nhau trong mt mng my
tnh.
6
CSDL phn tn?
7
CSDL phn tn?
-ng dng cc b: yu cu v thc hin
ti mt trm trong h CSDL phn tn v
ch lin quan n CSDL ti nt .
-ng dng phn tn (tng th): yu cu truy
nhp d liu ti nhiu trm thng qua mng
truyn thng.

8
8/25/2012
3
9
V d:
10
H qun tr CSDL phn tn
H qun tr CSDL phn tn (Distributed
DataBase Management System-DDBMS) l
mt h thng phn mm cho php to lp
CSDL phn tn v iu khin mi truy nhp
i vi CSDL phn tn. c bit, DDBMS
m bo vic phn tn l trong sut i
vi ngi s dng.

11
H qun tr CSDL phn tn
H qun tr CSDL phn tn gm 1 tp cc phn mm (chng
trnh) sau y:
Cc chng trnh qun tr cc CSDL a phng ti cc
trm (DBMS a phng)
Chng trnh qun tr cc d liu phn tn
Cc chng trnh qun tr vic truyn thng d liu
Cc chng trnh qun tr t in d liu.


12
8/25/2012
4
Phn loi cc h CSDLPT
H CSDL phn tn thun nht:
+c thit k bng cch chia nh mt CSDL
hp nht thnh mt tp cc CSDL cc b.
+ Cc CSDL cc b u c m hnh ha bi
cng mt m hnh d liu
+ Cc CSDL cc b u c qun tr bi cng
mt h qun tr CSDL a phng.


13
Phn loi cc h CSDLPT
H CSDL phn tn khng thun nht:
+ c thit k bng cch tch hp cc
CSDL cc b c, ang tn ti , ang
hot ng.
+ Cc CSDL cc b c th c m hnh
ha bi cc m hnh d liu khc nhau
+ Cc CSDL cc b c th c qun tr bi
cc h qun tr CSDL a phng khc nhau

15
Phn loi cc h CSDLPT
H CSDL lin hip:
Mt tp hp cc CSDL c ghp ni yu
(ghp ni lng) m ngi dng c th truy cp
v thao tc thng qua mt ngn ng c bit
(ngn ng a c s) cho php nh ngha cc
DL a c s, cc rng buc gia cc c s v cc
thao tc DL a c s

16
8/25/2012
5
H CSDL phn tn thun nht

18
H CSDL phn tn khng thun nht
19
H CSDL lin hip
20
8/25/2012
6
Kin trc ca CSDL phn tn
21
Kin trc ca CSDL phn tn
- S tng th: nh ngha tt c cc d liu s c lu tr
trong CSDL phn tn. S dng m hnh quan h, s tng th
bao gm mt tp cc nh ngha quan h tng th.
- S phn on: Mi quan h tng th c th c chia thnh
mt hay nhiu phn khng bao trm ln nhau c gi l cc
on (fragments). C nhiu cch khc nhau thc hin vic
phn chia ny.
nh x (mt - nhiu):
{quan h tng th} {on}
c nh ngha trong s phn on.
K hiu R
i
l on th i ca quan h tng th R

22
Kin trc ca CSDL phn tn
- S nh v: Cc on l cc b phn logic ca mt quan h tng
th c nh v vt l ti mt hoc nhiu trm trn mng my tnh.
S nh v xc nh mi on c nh v ti cc trm no. Lu
rng kiu nh x c nh ngha trong s nh v quyt nh CSDL
phn tn l d tha hay khng.
K hiu R
i
j
l bn sao ca on th i ca quan h tng th R ti trm j
v R
j
l tp cc bn sao ca cc on ca quan h tng th R c nh v
ti trm j
R
j
c gi l nh vt l ca quan h tng th R ti trm j
nh x (mt mt):
{quan h tng th, trm} {nh vt l}
c nh ngha trong s nh v.


23
Kin trc ca CSDL phn tn
24
8/25/2012
7
Kin trc ca CSDL phn tn
- S nh x a phng ti trm j:
nh x:
{nh vt l ti trm j} {CSDL ti trm j}
25

Cc mc trong sut khc nhau
Tnh trong sut ca mt h CSDL phn tn c hiu l vic che giu s
phn tn ca d liu i vi ngi s dng v nhng ngi lp trnh ng
dng.
Mc trong sut phn on: : Ngi s dng biu din cc yu cu trn cc quan
h tng th m khng cn bit v vic phn on ca cc quan h tng th
vic phn on l c che giu i vi ngi s dng
Mc trong sut nh v: Ngi s dng biu din cc yu cu trn cc on m
khng cn bit v vic phn on ca cc quan h tng th cng nh vic nh v
cc on ti cc trm vic nh v cc on l c che giu i vi ngi s
dng
Tnh trong sut lp li: vic lp li cc bn sao on l c lp i vi ng
dng ca ngi s dng
Mc trong sut nh x a phng: Ngi s dng biu din cc yu cu trn
cc bn sao ca cc on m khng cn bit v vic phn on ca cc quan h
tng th, vic nh v cc on ti cc trm cng nh nh x a phng ti cc
trm vic nh x a phng ti cc trm l c che giu i vi ngi s
dng


26
u im ca h CSDL phn tn

-Ph hp vi c cu v qui m ca cc t chc ln phi
tp trung
-Nng cao kh nng chia s v tnh t tr a
phng.
-Gim chi ph truyn thng
-Nng cao tnh sn sng.
-Nng cao tin cy.
-Nng cao hiu nng.
-D m rng.
27
Nhc im ca h CSDL phn tn

-Thit k CSDL phc tp hn.
-Kh iu khin tnh nht qun d liu.
-Kh pht hin v kh li.
-Gi thnh cao.
-Thiu chun mc.
-Kh m bo an ton v bo mt d liu.

28
8/25/2012
8
Ni dung
Tng quan v cc h CSDLPT
Phn on d liu
Biu din cc yu cu vi cc mc trong
sut khc nhau
Thit k CSDLPT
Ti u ha CSDL phn tn
Qun tr giao dch v iu khin tng
tranh
29
Phn on d liu
1 - Phn on quan h l g?
Vic chia/tch mt quan h tng th thnh
nhiu quan h nh hn hay nhiu on c gi
l phn on quan h.


30
Phn on d liu
2 Cc l do phi phn on d liu:
Khung nhn hoc n v truy xut ca cc ng
dng khng phi l ton b quan h tng th
m thng l mt on.
Vic phn r mt quan h thnh nhiu on,
mi on c x l nh mt n v, s cho
php thc hin nhiu giao dch ng thi.
Vic phn on cc quan h s cho php thc
hin song song mt cu truy vn bng cch
tch n ra thnh mt tp cc cu truy vn con
thc hin trn cc on.

31
Phn on d liu
3 Cc kiu phn on:
Phn on ngang (horizontal fragmentation)
phn on ngang n gin (primary horizontal
fragmentation)
phn on ngang suy din (derived horizontal
fragmentation)
Phn on dc (vertical fragmentation).
Phn on hn hp (hibrid fragmentation)
Ch : Vic phn on d liu phi c gn lin
vi vic nh v d liu

32
8/25/2012
9
Phn on d liu
4- Cc iu kin i vi mt phn on
Vic phn on mt quan h tng th phi tun
theo mt s iu kin nht nh khi ti thit
li quan h c vn bo m ng ngha ca n.
Mt phn on ng n phi tha mn ba iu
kin sau:
Tnh y (completeness)
Tnh ti thit c (reconstruction)
Tnh tch bit (disjointness):
33
Phn on d liu
* Tnh y :
Nu mt quan h R c phn r thnh cc on
R
1
, R
2
, ..., R
k
th mi mc d liu xut hin trong R
phi xut hin trong t nht mt on R
i
no .


34
Phn on d liu
* Tnh ti thit c:
Nu mt quan h R c phn r thnh cc on
R
1
, R
2
, ..., R
k
th phi tn ti mt ton t u sao cho
R = u(R
1
, R
2
, ..., R
k
).
Ton t u ph thuc vo tng kiu phn on.
Trong thc t, khi cc on c phn on ngang
th u l php hp, phn on dc th u l php ni
v phn on hn hp th u l mt biu thc i s
bao hm c php hp v php ni.

35
Phn on d liu
* Tnh tch bit:
Nu mt quan h R c phn r thnh cc quan h
R
1
, R
2
, ..., R
k
v mc d liu t
i
nm trong on R
i
th
n s khng nm trong mt on R
k
, k=i.
Tiu chun ny bo m s bao trm gia cc on
l ti thiu hay cc on phi c tch ri nhau.

36
8/25/2012
10
Phn on ngang n gin
Mt on ngang c xc nh bng php chn trn
quan h tng th .
R
i
=
Fi
(R); 1in
F
i
l iu kin chn/tiu chun ca on R
i
Phn on ngang n gin l ng n nu tha
mn ba iu kin sau:
Tnh y : beR, - 1 i n, b tha F
i
Tnh ti thit c : R = R
1
R
2
.. R
n

Tnh tch bit : F
i
v F
j
l loi tr nhau vi ij


37
Phn on ngang n gin

Phn on ngang suy din
L phn on ngang mt quan h tng
th (quan h thnh vin) suy din ra t s
phn on ngang ca mt quan h tng
th khc (quan h ch)
39
K (Kha chnh)
K (Kha ngoi)

quan h ch
quan h thnh vin
Phn on ngang suy din
Mt on ngang c xc nh bng php na kt ni ca
quan h thnh vin (R) v on tng ng ca quan h
ch (S) .
R
i
= R>< S
i
; 1in
iu kin ni F
i
c dng: K = K, trong K l kha
chnh ca S v l kha ngoi trong R
Phn on ngang suy din l ng n nu tha mn ba
iu kin sau:
Tnh y : R cha kha ngoi tham chiu n
kha chnh ca S (rng buc ton vn tham chiu)

Tnh ti thit c : R = R
1
R
2
.. R
n

Tnh tch bit : K l kha chnh ca S
40
8/25/2012
11
Phn on dc
Mt on dc c xc nh bng php chiu
trn quan h tng th .
R
i
=
Ui
(R); 1 in
U
i
l tp thuc tnh ca on R
i
Phn on dc l ng n nu tha mn ba
iu kin sau:
Tnh y : U = U
1
U
2
.. U
n


Tnh ti thit c : R = R
1
R
2
. R
n

Tnh tch bit : U
i
U
j
l ti thiu vi ij


41
Phn oan dc

Phn on hn hp
L phn on c thc hin bng cch p
dng mt cch qui/ng thi c phn on
ngang v phn on dc
43
Phn on hn hp

8/25/2012
12
Phn on hn hp
Cy phn on

45
R
Rs1


Rs2
Rs3
Rs4
V d:
Xt c s d liu ca mt cng ty my tnh c t
chc nh sau:
NHANVIEN (MANV, TENNV, CHUCVU): quan h ny
cha d liu v nhn vin ca cng ty.
TLUONG (CHUCVU, LUONG): quan h ny cha d
liu lin quan v lng v chc v ca nhn vin.
DUAN (MADA, TENDA, NGANSACH): quan h ny
cha d liu v cc d n m cng ty ang pht trin.
HOSO (MANV, MADA, NHIEMVU, THOIGIAN): quan
h ny cha d liu v h s ca nhn vin c phn cng
thc hin d n.

46
V d:
MANV TENNV CHUCVU
A1
A2
A3
A4
A5
A6
A7
A8
Nam
Trung
ng
Bc
Ty
Hng
Dng
Chin
Phn tch HT
Lp trnh vin
Phn tch HT
Phn tch HT
Lp trnh vin
K s in
Phn tch HT
Thit k DL
MA
NV
MA
DA
NHIEMVU THOI
GIAN
A1
A2
A2
A3
A3
A4
A5
A6
A7
A8
D1
D1
D2
D3
D4
D2
D2
D4
D3
D3
Qun l
Phn tch
Phn tch
K thut
Lp trnh
Qun l
Qun l
K thut
Qun l
Lp trnh
12
34
6
12
10
6
20
36
48
15
47
NHANVIEN (E) HOSO (G)
V d:
MADA TENDA NGANSACH
D1
D2
D3
D4
CSDL
CI T
BO TR
PHT TRIN
20000
12000
28000
25000
CHUCVU LUONG
K s in
Phn tch HT
Lp trnh vin
Thit k DL
1000
2500
3000
4000
48
DUAN (J)
TIENLUONG (S)
8/25/2012
13
V d v phn on d liu:
V d v phn on ngang n gin quan h TLUONG
(CHUCVU, LUONG):
TLUONG
1
=
LUONGs2500
(TLUONG)
TLUONG
2
=
LUONG>2500
(TLUONG)
V d v phn on ngang suy din quan h
NHANVIEN (MANV, TENNV, CHUCVU) t s
phn on ngang ca quan h TLUONG :
NHANVIEN
i
= NHANVIEN

>< TLUONG
i
; 1i2
49
V d v phn on d liu:
50
V d v phn on d liu:
V d v phn on ngang suy din:
DUAN(MADA, TENDA, NGANSACH): quan h ch
cha kha chinh MADA
HOSO(MANV, MADA, NHIEMVU, THOIGIAN):
quan h thnh vin cha kha ngoi MADA tham
chiu n DUAN
HOSO
i
= HOSO

>< DUAN
i
; 1i2

51
V d v phn on d liu:
V d v phn on ngang suy din:
NHANVIEN (MANV, TENNV, CHUCVU): quan h
ch cha kha chinh MANV
HOSO(MANV, MADA, NHIEMVU, THOIGIAN):
quan h thnh vin cha kha ngoi MANV tham
chiu n NHANVIEN
HOSO
i
= HOSO

>< NHANVIEN
i
; 1i2

52
8/25/2012
14
V d v phn on d liu:
V d v phn on dc quan h HOSO(MANV,
MADA, NHIEMVU, THOIGIAN):
HOSO
1
=
MANV,NHIEMVU,TID
(HOSO)
HOSO
2
=
MADA,THOIGIAN,TID
(HOSO)


53
V d v phn on d liu:
V d v phn on hn hp quan h
HOSO(MANV, MADA, NHIEMVU, THOIGIAN):
HOSO
1
=
MANV,NHIEMVU,TID
(HOSO)

>< NHANVIEN
1

HOSO
2
=
MANV,NHIEMVU,TID
(HOSO)

>< NHANVIEN
2

HOSO
3
=
MADA,THOIGIAN,TID
(HOSO)

>< DUAN
1

HOSO
4
=
MADA,THOIGIAN,TID
(HOSO)

>< DUAN
2



54
V d v nh v d liu:
TLUONG
1
=
LUONGs2500
(TLUONG) -site 1,3
TLUONG
2
=
LUONG>2500
(TLUONG) -site 2,4,5
NHANVIEN
1
= NHANVIEN

>< TLUONG
1
-site 1,3

NHANVIEN
2
= NHANVIEN

>< TLUONG
2
-site 2,4,5

DUAN
1
=
NGANSACHs20000
(DUAN) -site 1,2,5

DUAN
2
=
NGANSACH>20000
(DUAN) -site 3,4

HOSO
1
=
MANV,NHIEMVU,TID
(HOSO)

>< NHANVIEN
1
-site 1,3
HOSO
2
=
MANV,NHIEMVU,TID
(HOSO) >< NHANVIEN
2
-site 2,4,5
HOSO
3
=
MADA,THOIGIAN,TID
(HOSO)

>< DUAN
1
-site 1,2,5
HOSO
4
=
MADA,THOIGIAN,TID
(HOSO)

>< DUAN
2
-site 3,4


55
Ni dung
Tng quan v cc h CSDLPT
Phn on d liu
Biu din cc yu cu vi cc mc trong
sut khc nhau
Thit k CSDLPT
Ti u ha CSDL phn tn
Qun tr giao dch v iu khin tng
tranh
56
8/25/2012
15
Biu din cc yu cu vi cc mc
trong sut khc nhau
Ngn ng lm vic:
Cc lnh thao tc d liu: SQL
Cc lnh lp trnh: s dng ngn ng lp trnh ta
Pascal:
Read(terminal, var): c d liu t terminal
Write(terminal, var): ghi KQ ti terminal
Send DL from site <i> to site <j>: Truyn d liu t trm i
n trm j
Bin trao i gia SQL v Pascal: $<tn-bin>
Bin truyn thng tin KQ ca lnh truy vn SQL: bin logic
FOUND

57
Biu din cc yu cu vi cc mc
trong sut khc nhau
ng dng ch c: cc ng dng ch tra cu d
liu m khng lm thay i d liu trong CSDL
nn la chn bn sao on tt nht gim
chi ph truyn thng
ng dng cp nht: cc ng dng lm thay i
d liu trong CSDL (thm, xa, sa)phi cp
nht tt c cc bn sao on m bo tnh
nht qun d liu

58
ng dng ch c
V d ch c:
MADA c c vo t terminal, hy tra TENDA v
hin th ti terminal ti trm 2
ng dng ny thc hin trn quan h
DUAN(MADA, TENDA, NGANSACH)
vi thng tin phn on v sp ch:
DUAN
1
=
NGANSACHs20000
(DUAN) -site 1,2,5

DUAN
2
=
NGANSACH>20000
(DUAN) -site 3,4


59
ng dng ch c
Mc trong sut phn on:
read (terminal, $MaDA );
select TENDA into $TenDA
from DUAN
where MADA= $MaDA;
write (terminal, $TenDA );
60
Yu cu
DDBMS
Yu cu
DUAN
1
- site 1

DUAN
1
- site 2


DUAN
1
- site 5


DUAN
2
- site 3


DUAN
2
- site 4


8/25/2012
16
ng dng ch c
Mc trong sut nh v:
read (terminal, $MaDA );
select TENDA into $TenDA
from DUAN
1

where MADA= $MaDA;
if not FOUND then
select TENDA into $TenDA
from DUAN
2

where MADA= $MaDA;
write (terminal, $TenDA );
61
Yu cu
1

Yu cu
2


ng dng ch c


62
DDBMS
Yu cu
1

DUAN
1
- site 1

DUAN
1
- site 2


DUAN
1
- site 5


DUAN
2
- site 3


DUAN
2
- site 4


Yu cu
2


ng dng ch c
Mc trong sut nh x a phng:
read (terminal, $MaDA );
select TENDA into $TenDA
from DUAN
1
at site 2
where MADA= $MaDA;
if not FOUND then
select TENDA into $TenDA
from DUAN
2
at site 3
where MADA= $MaDA;
send $TenDA from site 3 to site 2;
write (terminal, $TenDA );
63
Yu cu
1

Yu cu
2


ng dng ch c


64
DDBMS
Yu cu
1

DUAN
1
- site 1

DUAN
1
- site 2


DUAN
1
- site 5


DUAN
2
- site 3


DUAN
2
- site 4


Yu cu
2


8/25/2012
17
ng dng cp nht
V d cp nht:
D n c MADA l DA01 c tng NGANSACH t 19000
ln 22000. Hy thc hin tt c cc cp nht cn thit.
ng dng ny thc hin cp nht trn quan h DUAN(MADA,
TENDA, NGANSACH)
vi thng tin phn on v sp ch:
DUAN
1
=
NGANSACHs20000
(DUAN) -site 1,2,5

DUAN
2
=
NGANSACH>20000
(DUAN) -site 3,4
Vic cp nht quan h DUAN nh hng n 2 on ca quan
h HOSO c phn on ngang suy din t s phn on
nganh i vi DUAN :
HOSO
3
=
MADA,THOIGIAN,TID
(HOSO)

>< DUAN
1
-site 1,2,5
HOSO
4
=
MADA,THOIGIAN,TID
(HOSO) >< DUAN
2
-site 3,4

ng dng cp nht
Mc trong sut phn on:
update DUAN
set NGANSACH = 22000
where MADA = DA01
66
ng dng cp nht
67
ng dng cp nht
Mc trong sut nh v:
select TENDA into $TEN
from DUAN
1

where MADA = DA01;
select THOIGIAN,TID into $TG, $ID
From HOSO
3
where MADA = DA01;
delete HOSO
3
where MADA = DA01;
delete DUAN
1
where MADA = DA01;
insert into DUAN
2
: (DA01, $TEN, 22000)
insert into HOSO
4
: (DA01, $TG, $ID);


68
8/25/2012
18
ng dng cp nht
Mc trong sut nh x a phng:
select TENDA into $TEN from DUAN
1
at site 1

where MADA=DA01;
select THOIGIAN,TID into $TG, $ID from HOSO
3
at site 1

where MADA = DA01;
delete HOSO
3
at site 1 where MADA = DA01;
delete HOSO
3
at site 2 where MADA = DA01;
delete HOSO
3
at site 5 where MADA = DA01;
delete DUAN
1
at site 1 where MADA = DA01;
delete DUAN
1
at site 2 where MADA = DA01;
delete DUAN
1
at site 5 where MADA = DA01;
insert into DUAN
2
at site 3: (DA01, $TEN, 22000);
insert into DUAN
2
at site 4: (DA01, $TEN, 22000);
insert into HOSO
4
at site 3: (DA01, $TG, $ID);
insert into HOSO
4
at site 4: (DA01, $TG, $ID);


69 70

You might also like