bai giang he csdl doi tuong 31-5-2012 phan a

83
 CƠ SDLIU hướ ng  ĐI TƯỢNG (OODB) Phm ThXuân Lc 5/2012  Đại hc Cn thơ Khoa CNTT-TT

Upload: ttdungcmm

Post on 22-Jul-2015

213 views

Category:

Documents


1 download

TRANSCRIPT

i hc Cn th Khoa CNTT-TT

C S D LIU hng I TNG(OODB)

Phm Th Xun Lc5/2012

MC LC A. H qun tr c s d liu hng i tng B. Oracle 11g release 2 (11.2) C. ng dng mu, dng Oracle 11g release 2 (11.2)

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

2

A. H qun tr c s d liu (HQTCSDL ) hng i tng(OODBMS: Object-Oriented DataBase Management System)

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

3

A. HQTCSDL hng i tng (OODBMS) I. Gii thiu II. Cc khi nim trong OODBMS III. Cc chun v cc h thng IV. H qun tr CSDL quan h hng i tng (ORDBMS)

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

4

A.I Gii thiu Cng ngh CSDL thin v kha cnh tnh ca lu tr d liu, trong khi cng ngh phn mm tin n lp m hnh cho kha cnh ng ca phn mm. Th h th III ca DBMS, gm 2 loi OODBMS v ORDBMS cho php m hnh ho c d liu ln cc qu trnh trn d liu.CSDLHT- Pham T Xuan Loc 5/2012 Phn A 5

A.I Gii thiu (2) Tuy nhin, thnh cng ca cc HQTCSDL quan h (RDBMS: Relational DBMS) trong 2 thp k qua l qu r. Do , c nhng tranh lun v RDBMS ln cc DBMS mi.CSDLHT- Pham T Xuan Loc 5/2012 Phn A 6

A.I Gii thiu 1. Cc trnh ng dng CSDL chuyn su 2. u- nhc im ca RDBMS 3. Cc khi nim ca hng i tng 4. Lu tr i tng trong mt CSDL quan h 5. Cc DBMS th h miCSDLHT- Pham T Xuan Loc 5/2012 Phn A 7

A.I.1 Cc trnh ng dng CSDL chuyn su Thit k nh my tnh (CAD: Computer-Aided Design) Sn xut nh my tnh (CAM: Computer-Aided Manufactoring) H thng qun tr mng H thng tin hc vn phng (OIS: Office Information System) v h thng a phng tin Xut bn s H thng thng tin a l (GIS: Geographical Information System) Cc Web site tng tc v ngCSDLHT- Pham T Xuan Loc 5/2012 Phn A 8

A.I Gii thiu 1. Cc trnh ng dng CSDL chuyn su 2. u- nhc im ca RDBMS 3. Nhu cu c DBMS kiu mi 4. Cc khi nim ca hng i tng 5. Lu tr i tng trong mt CSDL quan h 6. Cc DBMS th h miCSDLHT- Pham T Xuan Loc 5/2012 Phn A 9

A.I.2 u- nhc im ca RDBMS (CSDL quan h)u im: C c s l thuyt vng chc C s ny h tr pht trin SQL, mt ngn ng khai bo tr thnh ngn ng chun nh ngha v s dng cc CSDL quan h. n gin Ph hp vi vic x l giao dch trc tuyn (OLTP: OnLine Transaction Processing) H tr tnh c lp d liuCSDLHT- Pham T Xuan Loc 5/2012 Phn A 10

A.I.2 u- nhc im ca DBMS quan h (RDBMS) (2)Nhc im: Biu din cc thc th ca th gii thc khng phong ph. Qu ti v ng ngha: quan h (relation) va c th c to ra t thc th (entity) , va c th c to ra t lin kt (relationship) trong m hnh thc thlin kt (ERD: Entity-Relationship Diagram). t h tr cho cc rng buc ton vn v rng buc ca x nghip: Cc trnh ng dng phi t bo m ly, nh vo chun cho SQL.CSDLHT- Pham T Xuan Loc 5/2012 Phn A 11

A.I.2 Nhc im ca DBMS quan h (RDBMS) (3) Cu trc d liu ng nht: theo chiu dc v chiu ngang: Cc b c cc thuc tnh ging nhau Cc gi tr trong cng thuc tnh phi cng min gi tr Giao ti mt dng v mt ct phi l mt tr nguyn t (khng chia nh ra c n) Nhiu DBMS cho php lu tr v hin th BLOB (Binary Large Object: cha thng tin nh phn, biu din nh, phim, mt i tng bt k khng cu trc) nhng khng cho s dng hoc hin th mt phn ca n. BLOB khng c tnh qui v khng biu din c kha cnh hnh x (behaviour aspect) ca i tng.

qu hn ch i vi cc i tng trong th gii thc, vn c cu trc phc.CSDLHT- Pham T Xuan Loc 5/2012 Phn A 12

A.I.2 Nhc im ca DBMS quan h (RDBMS) (4) Cc thao tc (operation) b hn ch: Ch c cc thao tc trn tp hp v trn cc b Khng cho php thm mi php ton

Kh kim sot cc cu hi qui: Khng th ch dng SQL thc hin cc cu hi qui Chnh l nh ngn ng ch trong trnh ng dng h tr cu hi quiCSDLHT- Pham T Xuan Loc 5/2012 Phn A 13

A.I.2 Nhc im ca DBMS quan h (RDBMS) (5) Khng tng ng gia ngn ng SQL v ngn ng ch: SQL: ngn ng khai bo, s dng cng lc nhiu dng d liu Ngn ng ch: ngn ng th tc, ch c th s dng 1 dng d liu/ thi im Hai loi ngn ng ny c cch biu din d liu khc nhau trnh ng dng phi chuyn i qua li 2 cch biu din ny khng hiu qu

Cc vn khc v tnh cnh tranh, s thay i cc s v truy cp ngho nn trong RDBMSCSDLHT- Pham T Xuan Loc 5/2012 Phn A 14

A.I.2 Nhc im ca DBMS quan h (RDBMS) (6) Cc vn khc (a, b xy ra khng ch trn RDBMS) a. Kim sot cnh tranh khng cn hp thi vi cc giao dch ko di trn cc i tng phc hp. b. Kh thay i cc s : DBA phi can thip vo thay di cu trc CSDL, v trnh ng dng phi i thch nghi vi cc cu trc mi chm, lm cn tr cng ngh mi hu ht cc HTTT x nghip nh t tri mnh vi cu trc CSDL c c. Truy cp ngho nn: RDBMS dng cc truy cp kt hp (associative access: da trn s kt hp cc tn t chn) m t dng cc truy cp thng thng (navigational access: da trn s chuyn ng gia cc b)CSDLHT- Pham T Xuan Loc 5/2012 Phn A 15

A.I Gii thiu 1. Cc trnh ng dng CSDL chuyn su 2. u- nhc im ca RDBMS 3. Nhu cu c DBMS kiu mi 4. Cc khi nim ca hng i tng 5. Lu tr i tng trong mt CSDL quan h 6. Cc DBMS th h miCSDLHT- Pham T Xuan Loc 5/2012 Phn A 16

A.I.3. Nhu cu c DBMS kiu mi Cn c nhng ng dng mi: i tng phc tp Tch hp va d liu, va cc hnh vi S dng d liu thng qua cc cu thnh (composition)

Tch hp vi cc khi nim v i tng: mi giai on: phn tch, thit k, pht trin, to CSDL, s dng CSDL, Lu tr bn vng d liu trong mi trng i tng

Nhu cu: Cc m hnh d liu p ng cc khi nim trn Cc h thng h tr cc m hnh nyCSDLHT- Pham T Xuan Loc 5/2012 Phn A 17

A.I Gii thiu 1. Cc trnh ng dng CSDL chuyn su 2. u- nhc im ca RDBMS 3. Nhu cu c DBMS kiu mi 4. Cc khi nim ca hng i tng 5. Lu tr i tng trong mt CSDL quan h 6. Cc DBMS th h miCSDLHT- Pham T Xuan Loc 5/2012 Phn A 18

A.I.4 Cc khi nim ca hng i tng nh danh i tng (OID) Overriding Overloading Polymorphism Dynamic binding i tng phc (complex object)

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

19

A.I.4 Cc khi nim ca hng i tng- nh danh i tng(OID: Object Identifier): Trong RDBMS: OID= kha chnh Trong OODBMS: kho chnh khng dng lm OID, v: kho chnh ch duy nht trong 1 quan h, khng phi trn ton h thng kho chnh c chn t cc thuc tnh ph thuc vo trng thi ca i tngCSDLHT- Pham T Xuan Loc 5/2012 Phn A 20

A.I.4 Cc khi nim ca hng i tng- nh danh i tng (2) Cn phi c cc OID lun hp l vi mi dung lng lu tr, c th c vi cc my tnh trn DDBMS: khng th dng tn bin hoc con tr nh trong mt s ngn ng lp trnh (v khng gian a ch qu nh v con tr c th ch n i tng sai sau khi i tng c b xo v thay bi i tng khc). Cn c mt OID c lp vi c trng thi ln v tr ca i tng.CSDLHT- Pham T Xuan Loc 5/2012 Phn A 21

A.I.4 Cc khi nim ca hng i tng- nh danh i tng (3) Cn phn bit 2 trng hp: 2 i tng l mt (identical): cng OID 2 i tng bng nhau (equal): khc OID, nhng tr cc thuc tnh bng nhau: Bng cn (shallow equality): khi loi b ht cc tham chiu (kho ngoi) n cc i tng khc Bng su (deep equality): khi tt c cc i tng c tham chiu n cng bng nhauCSDLHT- Pham T Xuan Loc 5/2012 Phn A 22

A.I.4 Cc khi nim ca hng i tng- Overriding nh ngha li mt c tnh (thuc tnh/ phng thc) trong lp con (subclass). nh ngha mi ny mi thc s c dng trong lp con ang xt, ch khng phi nh ngha c trong lp cha.

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

23

A.I.4 Cc khi nim ca hng i tng- Overloading L khi nim tng qut hn overriding Cho php tn mt phng thc c dng li trong mt hoc nhiu nh ngha cho lp. C th thay i trong nh ngha phng thc: Cc tham s: v s lng tham s, kiu tham s, Kiu tr v

Lm n gin ho trnh ng dng: cho php ng cnh c xc nh ngha no thch ng nht tai mt thi im.CSDLHT- Pham T Xuan Loc 5/2012 Phn A 24

A.I.4 Cc khi nim ca hng i tng- Polymorphism L khi nim tng qut hn overloading C 3 dng a hnh: V tc t (operation polymorphism)= overloading V s bao hm (inclusion polymorphism): mt phng thc trong lp cha c tha k trong lp con. V tham s, hay cn gi v khun dng chung (parametric polymorphism/ genericity): dng cc kiu nh cc tham s, nh ra cc template.

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

25

A.I.4 Cc khi nim ca hng i tng- Dynamic binding Gn kt (binding)= qu trnh chn phng thc thch hp, da trn kiu ca i tng Qu trnh gn kt ng/ gn kt tr (dynamic binding /late binding): vic xc nh kiu i tng c tr hon n lc khai thc chng trnh, ch khng phi ngay khi bin dch.CSDLHT- Pham T Xuan Loc 5/2012 Phn A 26

A.I.4 Cc khi nim ca hng i tng- i tng phc L i tng gm cc i tng con, hoc cc thnh t khc. i tng c cha s c kim sot theo 2 cch: c bao gi bn trong i tng phc, l mt thnh phn ca i tng phc, ch c truy cp thng qua phng thc ca i tng phc. Hc, tn ti clp ngoi i tng phc, v ch c OID ca n c t trong i tng phc.CSDLHT- Pham T Xuan Loc 5/2012 Phn A 27

A.I Gii thiu 1. Cc trnh ng dng CSDL chuyn su 2. u- nhc im ca RDBMS 3. Nhu cu c DBMS kiu mi 4. Cc khi nim ca hng i tng 5. Lu tr i tng trong mt CSDL quan h 6. Cc DBMS th h miCSDLHT- Pham T Xuan Loc 5/2012 Phn A 28

A.I.5 Lu tr i tng trong mt CSDL quan ha. nh x cc lp sang cc quan h: C cc chin lc: i. nh x mi lp hoc mi lp con sang mt quan h lm mt ng ngha: khng bit quan h no biu din lp cha, quan h no biu din lp con phi trnh by li kin thc ny trong mi trnh ng dng lp li code, v c th thiu nht qun ii. nh x mi lp con sang mt quan h cng nh trn, v phi lm php hp c tt c cc i tng ca lp cha. iii. nh x ton b cy phn cp ( inheritance hierarchy) sang mt quan h cng mt ng ngha, v sinh ra tr null khng mong mun cho mt s thuc tnh khng thc s c tr trong mt s b.CSDLHT- Pham T Xuan Loc 5/2012 Phn A 29

A.I.5 Lu tr i tng trong mt CSDL quan h (2)V d: i.MN_HNG (M_MN, M_L, GI_MUA) HNG_BN (M_MN, GI_BN) HNG_KM (M_MN, CHT_LG)

ii.HNG_BN (M_MN, M_L, GI_MUA, GI_BN) HNG_KM (M_MN, M_L, GI_MUA, CHT_LG)

iii.MN_HNG (M_MN, M_L, GI_MUA, GI_BN, CHT_LG)CSDLHT- Pham T Xuan Loc 5/2012 Phn A 30

A.I.5 Lu tr i tng trong mt CSDL quan h (4)b. Truy cp i tng trong mt RDBMS: Cn phi: Thm i tng vo CSDL c, sa, xo i tng

Kh phc tp Bao hm vic nh x mt ngn ng hng i tng vo CSDL quan hCSDLHT- Pham T Xuan Loc 5/2012 Phn A 31

A.I Gii thiu 1. Cc trnh ng dng CSDL chuyn su 2. u- nhc im ca RDBMS 3. Nhu cu c DBMS kiu mi 4. Cc khi nim ca hng i tng 5. Lu tr i tng trong mt CSDL quan h 6. Cc DBMS th h miCSDLHT- Pham T Xuan Loc 5/2012 Phn A 32

A.I.6 Cc DBMS th h mi Cc DBMS tun theo cc m hnh d liu M hnh d liu: Cho php biu din th gii thc Bao gm: Mt tp cc khi nim Mt tp cc qui tc qun l cc khi nim ny

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

33

A.I.6 Cc DBMS th h miCui thp k 60u thp k 70 1970 1976 1981-1983 M hnh phn cp Th h th 1 M hnh mng M hnh quan h M hnh thc th- kt hp M hnh ng ngha Th h th 2 Th h th 3

M hnh quan h hng i tng

M hnh hng i tng34

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

A. HQTCSDL hng i tng (OODBMS: Object-Oriented DataBase Management System) I. Gii thiu II. Cc khi nim trong OODBMS III. Cc chun v cc h thng III. H qun tr CSDL quan h hng i tngCSDLHT- Pham T Xuan Loc 5/2012 Phn A 35

A.II Cc khi nim trong OODBMS 1. Gii thiu OODM v OODBMS 2. Hng pht trin ca OODBMS 3. Li v bt li ca OODBMS

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

36

A.II.1 Gii thiu OODM v OODBMSnh ngha OODBMS Cc m hnh d liu chc nng Ngn ng lp trnh bn (persistent programming languages) iu l (manifesto) v OODBMS Cc chin lc pht trin mt OODBMSCSDLHT- Pham T Xuan Loc 5/2012 Phn A 37

A.II.1 Gii thiunh ngha OODBMS OODM (Object-Oriented Data Model): Mt m hnh lun l ca d liu biu din ng ngha ca cc d liu dng trong mt ngn ng lp trnh hng i tng. OODB (Object-Oriented Database): Mt tp (collection) cc i tng bn vng v chia s c, nh ngha bi mt OODM. Thut ng OODB ln u tin xut hin vo khong nm 1985. [3]CSDLHT- Pham T Xuan Loc 5/2012 Phn A 38

A.II.1 Gii thiunh ngha OODBMS(2) OODBMS (Object-Oriented DataBase Management System): H thng qun tr mt OODB. Khng c m hnh d liu hng i tng no tng ng vi m hnh d liu nn ca h CSDL quan h. Mi h thng cung cp nh ngha ring v OODBMS.CSDLHT- Pham T Xuan Loc 5/2012 Phn A 39

A.II.1 Gii thiunh ngha OODBMS (3)Nm 1988 OODBMS Nh sn xut Versant Corporation bt u hot ng Objectivity Inc. c thnh lp Gemstone System Inc. Graphael Ontologic O2 TechnologyCSDLHT- Pham T Xuan Loc 5/2012 Phn A 40

u Gemstone thp k GBase 1990 VBase O2

A.II.1 Gii thiunh ngha OODBMS (4)Nm u thp k 1990 Gia thp k 1990 OODBMS ONTOS Objectivity/ DB Versant Object Database Object Store Poet (nay l FastObjects) ODABA Nh sn xut Ontos (i tn t Ontologic) Objectivity Inc. Versant Corporation Progress Software Corporation Poet Software Corporation

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

41

A.II.1 Gii thiunh ngha OODBMS (5)Nm Gia thp k 1990 2000 OODBMS Jade ZODB InterSystems CACH db4o ObjectDB Nh sn xut Jade Software Corporation

Bt u bi Carl Rosenberger ObjectDB Software

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

42

A.II.1 Gii thiunh ngha OODBMS (6)Nm 2001 2004 2008 2011 2012 OODBMS DB2 db4o db40 Wakanda VelocityDB Nh sn xut Informix, IBM db40bjects, Inc Versant Corporation To ra bi Laurent Ribardiere

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

43

A.II.1 Gii thiunh ngha OODBMS (7)

So snh cc OODBMS: ..\CSDL NC\Comparison of OODBMS.xls

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

44

A.II.1 Gii thiunh ngha OODBMS (8) Nhng m hnh ca ODMG c chp nhn nhiu nht, v: c t m hnh chun v ng ngha cho cc i tng CSDL H tr tnh tng thch (interoperability) gia cc OODBMS

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

45

H CSDL truyn thng Tnh bn vng Chia s C giao dich Kim sot cnh tranh Kim sot phc hi An ton Tnh ton vn t cu hi

M hnh d liu ng ngha Tng qut ha Tnh kt tp

Lp trnh hng i tng nh danh d liu Tnh bao gi Tnh tha k Kiu v lp Phng thc i tng phc Tnh a hnh Tnh m rng c

Cc yu cu c bit Chia phin bn Tin trin v s

M hnh d liu hng i tng

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

46

A.II.1 Gii thiuNgn ng lp trnh CSDL L ngn ng tch hp mt s tng t m hnh lp trnh CSDL vi cc tin ch ca ngn ng lp trnh. C: Qun tr giao dich Kim sot cnh tranh Kim sot phc hi

C th c nhng trong ngn ng lp trnh.CSDLHT- Pham T Xuan Loc 5/2012 Phn A 47

A.II.1 Gii thiuCc qui tc v OODBMS Mt OODBMS phi tho cc qui tc 1-8 v hng i tng, ngoi vic phi tha cc qui tc cho bt k mt DBMS no (cc qui tc 9-13).

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

48

A.II.1 Gii thiuCc qui tc v OODBMS (2)Cc c tnh thuc hng i tng: phi h tr 1. i tng phc 5. Tnh tha k 2. nh danh d liu 3. Tnh bao gi 4. Kiu v lp 6. Gn kt ng (dynamic bind) 7. DML phi y v tnh ton 8. Tp cc kiu d liu phi m rng cCSDLHT- Pham T Xuan Loc 5/2012 Phn A 49

A.II.1 Gii thiuCc qui tc v OODBMS (3)Cc c tnh ca mt DBMS bt k: phi 9. C tnh bn vng d liu 12. Phi phc hi c t cc s c phn cng v phn mm 10. Phi kim sot c 13. Phi cung cp cch n CSDL rt ln gin truy vn d liu 11. Phi h tr cc ngi dng cnh tranh nhauCSDLHT- Pham T Xuan Loc 5/2012 Phn A 50

A.II.1 Gii thiu- Cc chin lc pht trin mt OODBMS 1. M rng mt ngn ng lp trnh hng i tng (C++, Java, Smalltalk) vi cc kh nng v CSDL: nh trong Gemstone. 2. Cung cp th vin DBMS hng i tng: h tr tnh bn vng, tnh kt tp, kiu d liu, giao dch, cnh tranh, an ton d liu, phc hi d liu (Ontos, Versant, ObjectStore) 3. Nhng cc yu t (construct) ca ngn ng lp trnh CSDL vo mt ngn ng ch thng dng: v d nhng SQL vo C#, Java.CSDLHT- Pham T Xuan Loc 5/2012 Phn A 51

A.II.1 Gii thiu- Cc chin lc pht trin mt OODBMS (2) 4. M rng mt ngn ng CSDL, c th l SQL, hin c bng cc kh nng ca hng i tng: SQL:1999 Object Database Standard ca ODMG c t chun cho Object SQL Ontos, Versant cung cp mt phin bn ca Object SQLCSDLHT- Pham T Xuan Loc 5/2012 Phn A 52

A.II.1 Gii thiu- Cc chin lc pht trin mt OODBMS (3) 5. Pht trin mt m hnh d liu CSDL mi, hoc mt ngn ng d liu: y l cch tip cn i t gc, Pht trin mt ngn ng CSDL v mt DBMS hon ton mi vi cc kh nng ca hng i tng.CSDLHT- Pham T Xuan Loc 5/2012 Phn A 53

A.II Cc khi nim trong OODBMS 1. Gii thiu OODM v OODBMS 2. Hng pht trin ca OODBMS 3. Li v bt li ca OODBMS

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

54

A.II.2 Hng pht trin ca

OODBMS V hiu sut V tnh d s dng V tnh tch hp kho lo gia ngn ng lp trnh v ngn ng CSDL. 2 k thut:i. Chuyn i qua li gia OID v con tr trong b nh chnh (pointer swizzling) ii. Truy xut i tngCSDLHT- Pham T Xuan Loc 5/2012 Phn A 55

A.II.2 Hng pht trin ca

OODBMS- Cc m hnh lu tr C 2 m hnh: 2 cp (thng l cho RDBMS) 1 cp (cho cc DBMS mi)

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

56

A.II.2 Hng pht trin ca

OODBMS- M hnh lu tr 2 cpB nh chnh hoc b nh o

Kim tra s chuyn i v kim tra kiu SQL B nh ngoi

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

57

A.II.2 Hng pht trin ca

OODBMS- M hnh lu tr 1 cpB nh chnh hoc b nh o

B nh ngoi

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

58

A.II.2 Hng pht trin ca OODBMSTruy xut i tngTruy xut i tng Trang nh i tng Chuyn i thnh con tr

tr n vng nh Vng nh trnh D Lu trang

c trang

Trang nh i tngCSDLHT- Pham T Xuan Loc 5/2012 Phn A 59

B nh ngoi

A.II Cc khi nim trong OODBMS 1. Gii thiu OODM v OODBMS 2. Hng pht trin ca OODBMS 3. Li v bt li ca OODBMS

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

60

A.II.3 Li ca OODBMS Kh nng m hnh ho phong ph C kh nng m rng Khng cn thiu tng ng gia ngn ng lp trnh v ngn ng CSDL Ngn ng hi c tnh biu hin cao hn H tr s tin trin ca s H tr cc giao dch ko di C kh nng p dng cc trnh ng dng chuyn su v CSDL Ci tin hiu sutCSDLHT- Pham T Xuan Loc 5/2012 Phn A 61

A.II.3 Bt li ca OODBMSThiu m hnh d liu ton th Thiu c s l thuyt Thiu chun Cnh tranh cao Ti u ho cu hi lin quan tnh bao gi Cht mc i tng c th lm nh hng hiu sut Phc tp Thiu h tr v khung nhn Thiu h tr v an ton bo mtCSDLHT- Pham T Xuan Loc 5/2012 Phn A 62

A. HQTCSDL hng i tng (OODBMS: Object-Oriented DataBase Management System) I. Gii thiu II. Cc khi nim trong OODBMS III. Cc chun v cc h thng IV. H qun tr CSDL quan h hng i tngCSDLHT- Pham T Xuan Loc 5/2012 Phn A 63

A.III Cc chun v cc h thng 1. OMG (Object Management Group) 2. Object Data Standard ODMG 3.0, 1999CSDLHT- Pham T Xuan Loc 5/2012 Phn A 64

A.III.1 OMG (Object Management Group) C s hnh thnh OMA CORBA Cc c t khc ca OMG Kin trc hng v m hnhCSDLHT- Pham T Xuan Loc 5/2012 Phn A 65

A.III.1 OMG- C s hnh thnh OMG (Object Management Group) l mt consortium phi li nhun v k ngh Thnh lp nm 1989 C hn 400 t chc thnh vin, bao gm cc nh cung cp phn mm / platform (Sun Microsystems, Borland, AT&T/NCR, HP, Hitatchi, Oracle, CSDLHT- Pham T Xuan Loc 5/2012 Phn A 66

A.III.1 OMG- C s hnh thnh (2) Mc ch chnh: pht trin cch tip cn hng i tng cho cng ngh phn mm pht trin cc chun, sao cho v tr, mi trng, ngn ng, ca i tng ny hon ton trong sut i vi i tng khc.CSDLHT- Pham T Xuan Loc 5/2012 Phn A 67

A.III.1 OMG- C s hnh thnh (3) Vai tr: Khng l mt nhm t ra chun c chnh thc tha nhn (nh ISO, ANSI, IEEE) Nhm pht trin cc chun trn thc t nhm chng c ISO/ ANSI chp nhn. Hin khng pht trin hoc phn phi sn phm, m ch chng nhn chng tho chun ca OMG.CSDLHT- Pham T Xuan Loc 5/2012 Phn A 68

A.III.1 OMG- OMA (ObjectManagement Architecture)

OMA Guide: L ti liu hng dn u tin ca OMG, Cng b nm 1990, Sau c chnh l nhiu ln (1990, 1992, 1995)

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

69

A.III.1 OMG- OMA (2) c t: Thut ng thng nht cho cc ngn ng, h thng, CSDL, hng i tng Mt framework tru tng cho cc h thng hng i tng Tp cc mc tiu v k thut v kin trc Mt m hnh tham chiu cho cc trnh ng dng phn tn c s dng cc k thut hng i tng (c 4 lnh vc v chun: OM, ORB, Object Services v Common Facilities)CSDLHT- Pham T Xuan Loc 5/2012 Phn A 70

M hnh tham chiu i tng Cc i tng ca trnh ng dng WP Bng tnh CAD

Common Facilities Help Email Browser

Object Request Broker

Kho cha

Qun tr Cu hi giao dch

Versioning

An ton d liu

Object Services

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

71

A.III.1 OMG- OMA (3) OM (Object Model): L mt m hnh tru tng, linh ng theo thit k (design-portable) L mt tp con ca OM t ODMGproviders requester ORB request messageCSDLHT- Pham T Xuan Loc 5/2012 Phn A 72

A.III.1 OMG- OMA (3) ORB (Object Request Broker: b phn mi gii cho cc cu hi v i tng): iu khin vic phn phi cc thng bo gia cc i tng ca trnh ung dng L mt knh (bus) cho php cc i tng requester to v nhn cu hi v cu tr li t i tng provider. Khi nhn tr li t provider, ORB dch n sang dng m requester c th hiu c Nhm cung cp tnh tng thch nhau (interoperability) gia cc ng dng trong mi trng phn tn bt ng v nhm kt ni mt cch trong sut nhiu h thng hng i tng.CSDLHT- Pham T Xuan Loc 5/2012 Phn A 73

A.III.1 OMG- OMA (4) Object Services: Cung cp cc chc nng chnh hng v CSDL.Dch v Collection M t To v s dng tp hp, stack, hng i, danh sch, cy nh phn, ... Cung cp mt qun tr cht cc client chia s ti nguynn cc bin c c bit no

Kim sot cnh tranh

Qun tr bin c Cho php cc thnh t quan tm/ ht quan tm Externalization Ghi trng thi ca mt i tng nh mt dng d liu internalization= to ra mt i tng mi t dng d liu CSDLHT- Pham T Xuan Loc 5/2012 Phn A 74

A.III.1 OMG- OMA (5) Object Services (tt):Bn quyn Chu trnh sng Cc thao tc to ra, sao chp, di chuyn, xo mt nhm cc i tng lin quan nhau Gn mt tn cho mt i tng, trong mt ng cnh no Cung cp cc giao din lu v qun tr mt cch bn vng cc i tng

t tn

Tnh bn vng

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

75

A.III.1 OMG- OMA (6) Object Services (tt)c tnh (property) Cu hi Kt hp cc c tnh vi mt thnh t (component) Cung cp cc cu lnh vi cc tn t, thc hin cc php ton v cc dch v khc v i tng To mi kt hp ng (dynamic association) gia cc i tng khng bit g v nhau Cung cp cc dch v nh nh danh, chng thc, cp quyn v kim sot truy cp, an ton cho truyn thng, qun tr,

Lin kt (relationship)

An ton

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

76

A.III.1 OMG- OMA (7) Object Services (tt)Thi gian Rao bn (trader) Duy tr mt khi nim duy nht v thi gian cho cc my tnh khc nhau Cho php cc i tng c qung co mt cch ng cc dch v ca n v cho php cc i tng khc c ng k mt dch v trong s Cung cp c ch bn giao 2 giai on (2 phase commit: 2PC) gia cc thnh t kh phc hi, bng cch dng cc giao dch phng hoc lng nhau

Giao dch

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

77

A.III.1 OMG- OMA (8) Cc tin ch chung (Common Facilities): Gm mt tp cc nhm v m nhiu trfnh ng dng phi thc hin, nh in, gi th in t, Trong m hnh ca OMA, chng c cung cp qua cc giao din lp. Hin c chia thnh: 4 tin ch chung: Printing, Secure Time, Internationalization, Mobile Agent v cc tin ch theo lnh vc: l cc giao din cho cc lnh vc ng dng nh ti chnh, y t, sn xut, vin thng. Thng mi in t v vn tiCSDLHT- Pham T Xuan Loc 5/2012 Phn A 78

A.III.1 OMG- CORBA CORBA= Common Request Broker Architecture nh ngha kin trc ca cc mi trng da trn ORB, vn l nn c bn cho bt k thnh t no ca OMG, xc nh cc phn to thnh ORB v cc cu trc km theo n. Dng cc nghi thc GIOP v IIOP, mt chng trnh da trn CORBA c th cng hot ng vi bt k chng trnh no khc cng da trn CORBA, khng k nh sn xut, platform, h iu hnh, ngn ng lp trnh, mng, c th khc nhau.CSDLHT- Pham T Xuan Loc 5/2012 Phn A 79

A.III.1 OMG- CORBA (2) Cc phin bn: CORBA 1.1 (u tin): 1990 nh ngha IDL v API cho php tng tc gia client v server. Sau , c cc phin bn 2.0 (1994), 2.1 (1997), 2.2 (1998), 2.3 (1999).

CSDLHT- Pham T Xuan Loc 5/2012 Phn A

80

A.III.1 OMG- CORBA (3) Mt s thnh phn ca CORBA: IDL (Interface Definition Language): cho php m t cc gioa din lp c lp vi cc DBMS v ngn ng lp trnh. Interface Repository lu cc nh ngha IDL v tr li cc cu hi ca mt client v cc giao din, cc phng thc chng h tr, cc tham s, cc ngoi l c th c. Cc phng thc ly giao din v cc c t ca i tng Cc phng thc bin i qua li gia cc OID v cc chui k t.CSDLHT- Pham T Xuan Loc 5/2012 Phn A 81

A.III.1 OMG- CORBA (4)Client Target object

IDL stubs

DII

Giao din ORB

IDL skeleton

DSI

Object adapter

Object Request Broker GIOP/ IIOP DII: Dynamic Invocation Interface, DSI: Dynamic Skeleton Interface GIOP: Genera Inter-Object Protocol, IIOP: Internet Inter-Object Protocol= GIOP xy trn TCP/IPCSDLHT- Pham T Xuan Loc 5/2012 Phn A 82

A.III.2 Object Data Standard ODMG 3.0, 1999 ODMG (Object Data Management Group) OM (Object Model: M hnh i tng) ODL (Object Definition Language: Ngn ng nh ngha i tng) OQL (Object Query Language: Ngn ng hi v i tng)CSDLHT- Pham T Xuan Loc 5/2012 Phn A 83