Transcription of An Introduction to Object-Oriented Databases and Database ...
1 'PittsburghPA15213 AcknowledgmentstoInternationalBusinessMa chines, ,especiallyintheareasofCAD/CAMandmultime dia, ,suchsystemsprovidesupportforconcurrency control,atomicityofmultipleupdates,recov erability,authorization,versioning,andse arch( ).Sophisticatededitingapplications,howev er,requirebetterdatamodelingcapabilities thanthosenormallyprovidedbyexistingdatab asesystems( ).Thus, :objectidentity,directaccess,dataabstrac tionextensibility,inheritance,polymorphi sm,genericity,encapsulation,embeddedsema ntics, :objectcomposition,propertypropagation,c yclicqueries,indexingextensibility,relat ionshipsupport,databaseself-containment, :inparticular,MichaelMclnerny,DavidAnder son,JohnHoward, ' ' ,databasesprovidethemeanstostoredatabetw eeninvocationsofanapplication( ).
2 Databasesystems,however,provideadditiona lservicesnotsupportedbymost,ifnotall, ,adatabasesystemtypicallyprovidesfacilit iestocoordinatecooperativeworkonthesamed ata( ,authorization,anddistribution)andassura ncesconcerningtheintegrityofthedatainthe presenceofvariouskindsoffailures( ).Inaddition,databasesallowapplicationst omanagelargeamountsofdata,providingbuffe ringservicesandsearchingcapabilities( ).Finally,databasespresentauniformdatamo delindependentofanyspecificapplication, ,includinghierarchical,network, , , ,inturn,isanaggregationoftaggedvalues( ;theattributesarecommontoalltuplesinarel ationandaredefinedbytherelation'sschema) .
3 Eachtuplerepresentsanentityorpartofanent ityinanapplication' 'sattribute-valuepairsthatuniquelyidenti fiesthetargetwithinaspecifieddatabaserel ation( ).Thispaperpresentsasummary, [Ullman82]. , ,however, ( )nowrequiretheservicesnormallyassociated withdatabasesystems:persistence,transact ions,authorization,distribution,versioni ng,datastability,buffering, ,let' ,orrelational, ,anairplanerequiresmanyduplicateparts, ,therelationsrepresentingsetsofdifferent partsthataremostlysimilarwouldrequiresep arate, , ,however, , 'sworkplace, ,somepeopleshouldnotbeallowedtotalaccess tocertainaspectsofthedesign( ).
4 Finally,acompleteddesigncaninvolvehundre dsofthousandsofpartsanddirectaccesstoeac hpartbecomesimpractical:thus, , ,then,areanattempttosolvetheproblemsment ioned(aswellasothers) ,therefore, , 'spersistentdataintoaformmanipulablebyth eunderlyingstoragesubsystem[Cockshott84] .Inmanysystems,aprogrammercanalsoincorpo ratetotallynew,variable-sizeddatatypes( ).Finally, object -orienteddatabasesallowe mbeddedsemanticsbyassociatingprocedurali nformationwithobjects[Smith87].Woelk,Kim ,andLuther[Woelk86]summarizethefeaturest heyfeelobject-orienteddatabasesshouldpro videformultimediadocumentmanagementappli cations:-aggregationsupport,includingmod elingis-part-ofIrelationshipsandmaintain ingknowledgeconcerningtheorderingofsubpa rts; ;-supportfordefaultvaluesforattributes;- supportforembeddedsemanticsbywhichobject propertiesmaybecomputedinsteadofstored;- supportforpolymorphismsothatanattributem ayrepresentanyofseveraltypesthataxeonlyw eaklyrelated( ,adrawing,animage,acompositionofthese,et c.)
5 ;-generalentity-relationshipsupport( );-supportforschemaevolution,inwhichthet ypesofexistingdatabaseentitiesaremodifie d;-controloverobjectversioningandconfigu rationsofversionsets;-supportforconcurre ntaccess;-supportformultimediadatatypes; -supportforsharingsubcomponentsamongsepa ratedatabaseobjects( );-associativeaccess,asopposedtodirectac cessviateachabilityfromarootobjectasinpu rehypertextsystems; :persistence,distribution,accesscontrol, associativeaccess, ,suchasIntermedia[Smith87], ,however,cannotdealwiththequantifiesofon -lineinformationthatwillbecomeavailable, evenifadatabaseisusedastheunderlyingstor agesubsystem(asinIntermedia).
6 (ITC)ofCarnegieMellonUniversity(CMU) [Palay90]:l)Performance-Thesystemmustpro videsimple,fastaccesstolargeamountsofinf ormationfrommultiple, )Flexibleaccess-Thesystemmustsupportaspe ctrumofaccesstechniquesfrombrowsingtasin ahypenextsystem)tosearch(asinadatabasesy stem).3) ,itisnotsufficientjusttoprovideaccesstoi nformation;theusershouldbeabletoimposepe rsonalizedstructurethathelpsorganizethei nformationforlateraccessor,moreimportant ly,forfurtheringtheuser' ,sincesuchstructurecanbecomeunwieldy, )Datat_peexrensibili_.
7 ' ,graphic,audio,orvideodata, ) 'sviewdoesnotremainstatic;oftenasmoreinf ormationbecomesavailable,theuserwillwant tochangetheformofhisstructure, ) , ,however, ) ( ,electronicbulletinboards).-5-8)Integrat ion-Finally,thesystemshouldbeintegratedf ullyintotheuser' ,allapplicationsshouldbeabletotakeadvant ageofthesystem' , , , ,forinstance, ,determiningwhathaschangedthatisofintere st(asdefinedbytheuser) , , ,assignaccountability, , , , ,thedevelopmentofobject-orienteddatabase srepresentsanattempttointegratethecomple xdatamodelingandsoftwareengineeringprinc iplesofrecentprogramminglanguagedesignsw iththcpersistence,coordination.
8 TheLanguageanditsImplementationbyAdeleGo ldbergandDavidRobson[Goldberg83]andObjec t-OrientedSoftwareConstructionbyBertrand Meyer[Meyer88]. ,objectsconstituteanaturalunitforlocking ,authorization,storageclustering,version ing, ,, ; ; ; ; ; ,agoodintroductiontoobject-orienteddatab asescanbefoundinthechaptertitled"Fundame ntalsofObject-OrientedDatabases"inReadin gsinObject-OrientedDatabaseSystemsedited byStanleyZdonikandDavidMaier[Zdonik90].T hispresentationinvolvesafewmoreconceptsa nddefinitions, , ,authorization,distribution,datapersiste nceandstability,versioning, , ,transactions,triggers,dismbution, ,ingeneral, , , , ,acheckisperformedtoseev, , , ;somesystemsdoemployit( [Maier86]andtsl[Caplinger87]).
9 Pessimisticconcurrenc)',ontheotherhand,a ssumesthatconflictsatthetimeofupdateeith eroccurtoooftenorwastetoomuchwork(incomp utingtheupdateddata). (orsetofentities), 'saccesstothedataandthecurrentlockonthed ata, ,itisimportanttoconsiderthegranularityof locking;thatis, ( ) ( [Merrow87]andORION[Kim89b]). , ( ). ( ).Atransaction,therefore, ,databasesystemsuseshadowing(asinPOMS[Co ckshott84]) (asinEXODUS[Carey86]).Byusingtransaction sandlogging[Carey86],databasessystemscan alsoprovidemechanismsforrecover), ,ifafailureoccursduringatransactioncommi t,thedatabasesystemcandetectwhetherornot thecommitcompleted,and,ifnot, [Zdonik90]:processfailuresoccurwhentheap plicationterminatesabnormallyinthemiddle ofatransaction;mediafailuresoccurwhenthe storagemediumfails( ).
10 Andsystemfailuresoccurwhenthedatabasesys temfails,eitherbecauseofabuginitsprogram ,themachineitrunsoncrashes, (asintheE[Richardson89b]andCO2[Bancilhon 88]programminglanguages)ormayprovidelang uageconstructstoallowmultipletransaction sandmultiplesave-points3withineachtransa ction(asinembeddedOSQLinIris[Fishman87]) .Clearly, [Merrow871,forinstance, ,all"transactions" , ,therefore,providemechanismsthatperformu ser-levelactionsautomaticallywhenspecifi edeventsoccur( ).Bysupportingthesemechanismsinternally, , ( )orthetransitionofanarbitrary2 Notethisalsoallowsonetoabortatransaction , , (asinVBase[Andrews87]andPOSTGRES[Stonebr aker86a]).]