Client Server Architecture of ORACLE
Client Server Architecture of ORACLE
Client/ServerArchitecture
Oracle7ServerConceptsManual
LibraryProductContentsIndex
Client/ServerArchitecture
TheOracleClient/ServerArchitecture
SQL*Net
Wemusttrytotrustoneanother.Stayandcooperate.
JomoKenyatta
ThischapterdefinesdistributedprocessingandhowtheOracleServeranddatabase
applicationsworkinadistributedprocessingenvironment.Thismaterialappliesto
almosteverytypeofOracledatabasesystemenvironment.Thischapterincludes:
TheOracleClient/ServerArchitecture
SQL*Net
TheOracleClient/ServerArchitecture
IntheOracleclient/serverarchitecture,thedatabaseapplicationandthedatabaseare
separatedintotwoparts:afrontendorclientportion,andabackendorserver
portion.Theclientexecutesthedatabaseapplicationthataccessesdatabase
informationandinteractswithauserthroughthekeyboard,screen,andpointing
devicesuchasamouse.TheserverexecutestheOraclesoftwareandhandlesthe
functionsrequiredforconcurrent,shareddataaccesstoanOracledatabase.
AlthoughtheclientapplicationandOraclecanbeexecutedonthesamecomputer,it
maybemoreefficientandeffectivewhentheclientportion(s)andserverportionare
executedbydifferentcomputersconnectedviaanetwork.Thefollowingsections
http://docs.oracle.com/cd/A57673_01/DOC/server/doc/SCN73/ch20.htm
1/6
1/31/2015
Client/ServerArchitecture
discusspossiblevariantsintheOracleclient/serverarchitecture.
Note:Inadistributeddatabase,oneserver(Oracle)mayneedtoaccessadatabase
onanotherserver.Inthiscase,theserverrequestingtheinformationisaclient.See
Chapter21,"DistributedDatabases",formoreinformationaboutclientsandservers
indistributeddatabases.
DistributedProcessing
Distributedprocessingistheuseofmorethanoneprocessortodividethe
processingforanindividualtask.Thefollowingareexamplesofdistributed
processinginOracledatabasesystems:
Theclientandserverarelocatedondifferentcomputersthesecomputersare
connectedviaanetwork(seeFigure201,PartA).
Asinglecomputerhasmorethanoneprocessor,anddifferentprocessors
separatetheexecutionoftheclientapplicationfromOracle(seeFigure201,
PartB).
http://docs.oracle.com/cd/A57673_01/DOC/server/doc/SCN73/ch20.htm
2/6
1/31/2015
Client/ServerArchitecture
Figure201.TheClient/ServerArchitectureandDistributedProcessing
BenefitsoftheOracleclient/serverarchitectureinadistributedprocessing
environmentincludethefollowing:
Clientapplicationsarenotresponsibleforperforminganydataprocessing.
Clientapplicationscanconcentrateonrequestinginputfromusers,requesting
desireddatafromtheserver,andthenanalyzingandpresentingthisdatausing
thedisplaycapabilitiesoftheclientworkstationortheterminal(forexample,
usinggraphicsorspreadsheets).
Clientapplicationscanbedesignedwithnodependenceonthephysical
http://docs.oracle.com/cd/A57673_01/DOC/server/doc/SCN73/ch20.htm
3/6
1/31/2015
Client/ServerArchitecture
locationofthedata.Ifthedataismovedordistributedtootherdatabase
servers,theapplicationcontinuestofunctionwithlittleornomodification.
Oracleexploitsthemultitaskingandsharedmemoryfacilitiesofitsunderlying
operatingsystem.Asaresult,itdeliversthehighestpossibledegreeof
concurrency,dataintegrity,andperformancetoitsclientapplications.
Clientworkstationsorterminalscanbeoptimizedforthepresentationofdata
(forexample,byprovidinggraphicsandmousesupport)andtheservercanbe
optimizedfortheprocessingandstorageofdata(forexample,byhavinglarge
amountsofmemoryanddiskspace).
Ifnecessary,Oraclecanbescaled.Asyoursystemgrows,youcanadd
multipleserverstodistributethedatabaseprocessingloadthroughoutthe
network(horizontallyscaled).Alternatively,youcanreplaceOracleonaless
powerfulcomputer,suchasamicrocomputer,withOraclerunningona
minicomputerormainframe,totakeadvantageofalargersystem's
performance(verticallyscaled).Ineithercase,alldataandapplicationsare
maintainedwithlittleornomodification,sinceOracleisportablebetween
systems.
Innetworkedenvironments,shareddataisstoredontheservers,ratherthanon
allcomputersinthesystem.Thismakesiteasierandmoreefficienttomanage
concurrentaccess.
Innetworkedenvironments,inexpensive,lowendclientworkstationscanbe
usedtoaccesstheremotedataoftheservereffectively.
Innetworkedenvironments,clientapplicationssubmitdatabaserequeststothe
serverusingSQLstatements.Oncereceived,theSQLstatementisprocessed
bytheserver,andtheresultsarereturnedtotheclientapplication.Network
trafficiskepttoaminimumbecauseonlytherequestsandtheresultsare
shippedoverthenetwork.
SQL*Net
SQL*NetistheOraclenetworkinterfacethatallowsOracletoolsrunningon
networkworkstationsandserverstoaccess,modify,share,andstoredataonother
servers.SQL*Netisconsideredpartoftheprograminterfaceinnetwork
http://docs.oracle.com/cd/A57673_01/DOC/server/doc/SCN73/ch20.htm
4/6
1/31/2015
Client/ServerArchitecture
communications.SeeChapter9,"MemoryStructuresandProcesses",.formore
informationabouttheprograminterface.
SQL*Netusesthecommunicationprotocolsorapplicationprogrammaticinterfaces
(APIs)supportedbyawiderangeofnetworkstoprovideadistributeddatabaseand
distributedprocessingforOracle.Acommunicationsprotocolisasetofstandards,
implementedinsoftware,thatgovernthetransmissionofdataacrossanetwork.An
APIisasetofsubroutinesthatprovide,inthecaseofnetworks,ameanstoestablish
remoteprocesstoprocesscommunicationviaacommunicationprotocol.
Communicationprotocolsdefinethewaythatdataistransmittedandreceivedona
network.Inanetworkedenvironment,anOracleservercommunicateswithclient
workstationsandotherOracleserversusingSQL*Net.SQL*Netsupports
communicationsonallmajornetworkprotocols,rangingfromthosesupportedby
PCLANstothoseusedbythelargestmainframecomputersystems.
WithouttheuseofSQL*Net,anapplicationdevelopermustmanuallycodeall
communicationsinanapplicationthatoperatesinanetworkeddistributed
processingenvironment.Ifthenetworkhardware,topology,orprotocolchanges,
theapplicationhastobemodifiedaccordingly.
However,byusingSQL*Net,theapplicationdeveloperdoesnothavetobe
concernedwithsupportingnetworkcommunicationsinadatabaseapplication.Ifthe
underlyingprotocolchanges,thedatabaseadministratormakessomeminor
changes,whiletheapplicationrequiresnomodificationsandwillcontinueto
function.
HowSQL*NetWorks
SQL*NetdriversprovideaninterfacebetweenOracleprocessesrunningonthe
databaseserverandtheuserprocessesofOracletoolsrunningonothercomputers
ofthenetwork.
TheSQL*NetdriverstakeSQLstatementsfromtheinterfaceoftheOracletools
andpackagethemfortransmissiontoOracleviaoneofthesupportedindustry
standardhigherlevelprotocolsorprogrammaticinterfaces.Thedriversalsotake
repliesfromOracleandpackagethemfortransmissiontothetoolsviathesame
higherlevelcommunicationsmechanism.Thisisalldoneindependentlyofthe
networkoperatingsystem.
http://docs.oracle.com/cd/A57673_01/DOC/server/doc/SCN73/ch20.htm
5/6
1/31/2015
Client/ServerArchitecture
AdditionalInformation:DependingontheoperatingsystemthatexecutesOracle,
theSQL*Netsoftwareofthedatabaseservermayincludethedriversoftwareand
startanadditionalOraclebackgroundprocessseeyourOracleoperatingsystem
specificdocumentationfordetails.
ForadditionalinformationonSQL*Net,refertoUnderstandingSQL*Netorthe
appropriateSQL*Netdocumentation.
PrevNext
Copyright1996OracleCorporation.
AllRightsReserved.
http://docs.oracle.com/cd/A57673_01/DOC/server/doc/SCN73/ch20.htm
LibraryProductContentsIndex
6/6