外文翻译--数据库管理系统介绍.doc
原文:DatabaseManagementSystemsAdatabase(sometimesspelleddatabase)isalsocalledanelectronicdatabase,referringtoanycollectionofdata,orinformation,thatisspeciallyorganizedforrapidsearchandretrievalbyacomputer.Databasesarestructuredtofacilitatethestorage,retrieval,modification,anddeletionofdatainconjunctionwithvariousdata-processingoperations.Databasescanbestoredonmagneticdiskortape,opticaldisk,orsomeothersecondarystoragedevice.Adatabaseconsistsofafileorasetoffiles.Theinformationinthesefilesmaybebrokendownintorecords,eachofwhichconsistsofoneormorefields.Fieldsarethebasicunitsofdatastorage,andeachfieldtypicallycontainsinformationpertainingtooneaspectorattributeoftheentitydescribedbythedatabase.Usingkeywordsandvarioussortingcommands,userscanrapidlysearch,rearrange,group,andselectthefieldsinmanyrecordstoretrieveorcreatereportsonparticularaggregateofdata.Complexdatarelationshipsandlinkagesmaybefoundinallbutthesimplestdatabases.Thesystemsoftwarepackagethathandlesthedifficulttasksassociatedwithcreating,accessing,andmaintainingdatabaserecordsiscalledadatabasemanagementsystem(DBMS).TheprogramsinaDBMSpackageestablishaninterfacebetweenthedatabaseitselfandtheusersofthedatabase.(Theseusersmaybeapplicationsprogrammers,managersandotherswithinformationneeds,andvariousOSprograms.)ADBMScanorganize,process,andpresentselecteddataelementsformthedatabase.Thiscapabilityenablesdecisionmakerstosearch,probe,andquerydatabasecontentsinordertoextractanswerstononrecurringandunplannedquestionsthatarentavailableinregularreports.Thesequestionsmightinitiallybevagueand/orpoorlydefined,butpeoplecan“browse”throughthedatabaseuntiltheyhavetheneededinformation.Inshort,theDBMSwill“manage”thestoreddataitemsandassembletheneededitemsfromthecommondatabaseinresponsetothequeriesofthosewhoarentprogrammers.Adatabasemanagementsystem(DBMS)iscomposedofthreemajorparts:(1)astoragesubsystemthatstoresandretrievesdatainfiles;(2)amodelingandmanipulationsubsystemthatprovidesthemeanswithwhichtoorganizethedataandtoadd,delete,maintain,andupdatethedata;(3)andaninterfacebetweentheDBMSanditsusers.Severalmajortrendsareemergingthatenhancethevalueandusefulnessofdatabasemanagementsystems;Managers:whorequiremoreup-to-datainformationtomakeeffectivedecisionCustomers:whodemandincreasinglysophisticatedinformationservicesandmorecurrentinformationaboutthestatusoftheirorders,invoices,andaccounts.Users:whofindthattheycandevelopcustomapplicationswithdatabasesystemsinafractionofthetimeittakestousetraditionalprogramminglanguages.Organizations:thatdiscoverinformationhasastrategicvalue;theyutilizetheirdatabasesystemstogainanedgeovertheircompetitors.TheDatabaseModelAdatamodeldescribesawaytostructureandmanipulatethedatainadatabase.Thestructuralpartofthemodelspecifieshowdatashouldberepresented(suchastree,tables,andsoon).Themanipulativepartofthemodelspecifiestheoperationwithwhichtoadd,delete,display,maintain,print,search,select,sortandupdatethedata.HierarchicalModelThefirstdatabasemanagementsystemsusedahierarchicalmodel-thatis-theyarrangedrecordsintoatreestructure.Somerecordsarerootrecordsandallothershaveuniqueparentrecords.Thestructureofthetreeisdesignedtoreflecttheorderinwhichthedatawillbeusedthatis,therecordattherootofatreewillbeaccessedfirst,thenrecordsonelevelbelowtheroot,andsoon.Thehierarchicalmodelwasdevelopedbecausehierarchicalrelationshipsarecommonlyfoundinbusinessapplications.Asyouhaveknown,anorganizationcharoftendescribesahierarchicalrelationship:topmanagementisatthehighestlevel,middlemanagementatlowerlevels,andoperationalemployeesatthelowestlevels.Notethatwithinastricthierarchy,eachlevelofmanagementmayhavemanyemployeesorlevelsofemployeesbeneathit,buteachemployeehasonlyonemanager.Hierarchicaldataarecharacterizedbythisone-to-manyrelationshipamongdata.Inthehierarchicalapproach,eachrelationshipmustbeexplicitlydefinedwhenthedatabaseiscreated.Eachrecordinahierarchicaldatabasecancontainonlyonekeyfieldandonlyonerelationshipisallowedbetweenanytwofields.Thiscancreateaproblembecausedatadonotalwaysconformtosuchastricthierarchy.RelationalModelAmajorbreakthroughindatabaseresearchoccurredin1970whenE.F.Coddproposedafundamentallydifferentapproachtodatabasemanagementcalledrelationalmodel,whichusesatableasitsdatastructure.Therelationaldatabaseisthemostwidelyuseddatabasestructure.Dataisorganizedintorelatedtables.Eachtableismadeupofrowscalledandcolumnscalledfields.Eachrecordcontainsfieldsofdataaboutsomespecificitem.Forexample,inatablecontaininginformationonemployees,arecordwouldcontainfieldsofdatasuchasapersonslastname,firstname,andstreetaddress.Structuredquerylanguage(SQL)isaquerylanguageformanipulatingdatainarelationaldatabase.Itisnonproceduralordeclarative,inwhichtheuserneedonlyspecifyanEnglish-likedescriptionthatspecifiestheoperationandthedescribedrecordorcombinationofrecords.Aqueryoptimizertranslatesthedescriptionintoaproceduretoperformthedatabasemanipulation.NetworkModelThenetworkmodelcreatesrelationshipsamongdatathroughalinked-liststructureinwhichsubordinaterecordscanbelinkedtomorethanoneparentrecord.Thisapproachcombinesrecordswithlinks,whicharecalledpointers.Thepointersareaddressesthatindicatethelocationofarecord.Withthenetworkapproach,asubordinaterecordcanbelinkedtoakeyrecordandatthesametimeitselfbeakeyrecordlinkedtoothersetsofsubordinaterecords.Thenetworkmodehistoricallyhashadaperformanceadvantageoverotherdatabasemodels.Today,suchperformancecharacteristicsareonlyimportantinhigh-volume,high-speedtransactionprocessingsuchasautomatictellermachinenetworksorairlinereservationsystem.Bothhierarchicalandnetworkdatabasesareapplicationspecific.Ifanewapplicationisdeveloped,maintainingtheconsistencyofdatabasesindifferentapplicationscanbeverydifficult.Forexample,supposeanewpensionapplicationisdeveloped.Thedataarethesame,butanewdatabasemustbecreated.ObjectModelThenewestapproachtodatabasemanagementusesanobjectmodel,inwhichrecordsarerepresentedbyentitiescalledobjectsthatcanbothstoredataandprovidemethodsorprocedurestoperformspecifictasks.Thequerylanguageusedfortheobjectmodelisthesameobject-orientedprogramminglanguageusedtodevelopthedatabaseapplication.Thiscancreateproblemsbecausethereisnosimple,uniformquerylanguagesuchasSQL.Theobjectmodelisrelativelynew,andonlyafewexamplesofobject-orienteddatabaseexist.Ithasattractedattentionbecausedeveloperswhochooseanobject-orientedprogramminglanguagewantadatabasebasedonanobject-orientedmodel.DistributedDatabaseSimilarly,adistributeddatabaseisoneinwhichdifferentpartsofthedatabaseresideonphysicallyseparatedcomputers.Onegoalofdistributeddatabasesistheaccessofinformationwithoutregardtowherethedatamightbestored.Keepinginmindthatoncetheusersandtheirdataareseparated,thecommunicationandnetworkingconceptscomeintoplay.Distributeddatabasesrequiresoftwarethatresidespartiallyinthelargercomputer.Thissoftwarebridgesthegapbetweenpersonalandlargecomputersandresolvestheproblemsofincompatibledataformats.Ideally,itwouldmakethemainframedatabasesappeartobelargelibrariesofinformation,withmostoftheprocessingaccomplishedonthepersonalcomputer.Adrawbacktosomedistributedsystemsisthattheyareoftenbasedonwhatiscalledamainframe-entiremodel,inwhichthelargerhostcomputerisseenasthemasterandtheterminalorpersonalcomputerisseenasaslave.Therearesomeadvantagestothisapproach.Withdatabasesundercentralizedcontrol,manyoftheproblemsofdataintegritythatwementionedearlieraresolved.Buttodayspersonalcomputers,departmentalcomputers,anddistributedprocessingrequirecomputersandtheirapplicationstocommunicatewitheachotheronamoreequalorpeer-to-peerbasis.Inadatabase,theclient/servermodelprovidestheframeworkfordistributingdatabases.Onewaytotakeadvantageofmanyconnectedcomputersrunningdatabaseapplicationsistodistributetheapplicationintocooperatingpartsthatareindependentofoneanther.Aclientisanenduserorcomputerprogramthatrequestsresourcesacrossanetwork.Aserverisacomputerrunningsoftwarethatfulfillsthoserequestsacrossanetwork.Whentheresourcesaredatainadatabase,theclient/servermodelprovidestheframeworkfordistributingdatabase.Afileserveissoftwarethatprovidesaccesstofilesacrossanetwork.Adedicatedfileserverisasinglecomputerdedicatedtobeingafileserver.Thisisuseful,forexample,ifthefilesarelargeandrequirefastaccess.Insuchcases,aminicomputerormainframewouldbeusedasafileserver.Adistributedfileserverspreadsthefilesaroundonindividualcomputersinsteadofplacingthemononededicatedcomputer.Advantagesofthelatterserverincludetheabilitytostoreandretrievefilesonothercomputersandtheeliminationofduplicatefilesoneachcomputer.Amajordisadvantage,however,isthatindividualread/writerequestsarebeingmovedacrossthenetworkandproblemscanarisewhenupdatingfiles.Supposeauserrequestsarecordfromafileandchangesitwhileanotheruserrequeststhesamerecordandchangesittoo.Thesolutiontothisproblemscalledrecordlocking,whichmeansthatthefirstrequestmakesothersrequestswaituntilthefirstrequestissatisfied.Otherusersmaybeabletoreadtherecord,buttheywillnotbeabletochangeit.Adatabaseserverissoftwarethatservicesrequeststoadatabaseacrossanetwork.Forexample,supposeausertypesinaqueryfordataonhisorherpersonalcomputer.Iftheapplicationisdesignedwiththeclient/servermodelinmind,thequerylanguagepartonthepersonalcomputersimplesendsthequeryacrossthenetworktothedatabaseserverandrequeststobenotifiedwhenthedataarefound.Examplesofdistributeddatabasesystemscanbefoundintheengineeringworld.SunsNetworkFilingSystem(NFS),forexample,isusedincomputer-aidedengineeringapplicationstodistributedataamongtheharddisksinanetworkofSunworkstation.Distributingdatabasesisanevolutionarystepbecauseitislogicalthatdatashouldexistatthelocationwheretheyarebeingused.Departmentalcomputerswithinalargecorporation,forexample,shouldhavedataresidelocally,yetthosedatashouldbeaccessiblebyauthorizedcorporatemanagementwhentheywanttoconsolidatedepartmentaldata.DBMSsoftwarewillprotectthesecurityandintegrityofthedatabase,andthedistributeddatabasewillappeartoitsusersasnodifferentfromthenon-distributeddatabase.Inthisinformationage,thedataserverhasbecometheheartofacompany.Thisonepieceofsoftwarecontrolstherhythmofmostorganizationsandisusedtopumpinformationlifebloodthroughthearteriesofthenetwork.Becauseofthecriticalnatureofthisapplication,thedataserverisalsotheoneofthemostpopulartargetsforhackers.Ifahackerownsthis