r*: an overview of the architecture by r. williams et al. presented by d. kontos instructor : dr....
Post on 19-Jan-2016
214 Views
Preview:
TRANSCRIPT
R*: An overview of the R*: An overview of the ArchitectureArchitecture
By R. Williams et al.By R. Williams et al.
Presented by D. KontosPresented by D. Kontos
Instructor : Dr. MegalooikonomouInstructor : Dr. Megalooikonomou
OverviewOverview
DistributedDistributed Database Systems. Database Systems.
R*R* : an experimental DDMS developed at : an experimental DDMS developed at IBMIBM
Almaden ResearchAlmaden Research Center in 1981. Center in 1981.
Overview of the Overview of the architecturearchitecture:: Transaction managementTransaction management
ObjectObject naming, naming, cataloguecatalogue management management
AuthorizationAuthorization, , communicationcommunication etc. etc.
Conclusions on the issues arising in a DDBMS Conclusions on the issues arising in a DDBMS
Distributed DBMS (DDBMS)Distributed DBMS (DDBMS)
Need for Need for sharing resourcessharing resources, data., data.
Preserve Preserve transparency of networktransparency of network
communication and data organization.communication and data organization.
Maximum independence – “Maximum independence – “site autonomysite autonomy”.”.
R*: DDBMS consisting of a confederation of R*: DDBMS consisting of a confederation of
voluntarily voluntarily co-operating sitesco-operating sites, each supporting , each supporting
RelationalRelational data model communicating via IBM’s data model communicating via IBM’s
CICS.CICS.
Architecture aspectsArchitecture aspects
EnvironmentEnvironment and Data Definitions. and Data Definitions.
ObjectObject Naming. Naming.
Distributed Distributed CatalogsCatalogs..
TransactionTransaction management, management, commitcommit protocols. protocols.
Query preparationQuery preparation..
Query executionQuery execution..
SQLSQL additions and changes. additions and changes.
EnvironmentEnvironment and Data Definitions and Data Definitions
Several Several database sitesdatabase sites communicating via communicating via
networknetwork topology (CICS). topology (CICS).
Data stored in relationsData stored in relations disperseddispersed
replicatedreplicated
partitionedpartitioned
End userEnd user not awarenot aware of the data distribution, of the data distribution,
organized by the DDBMS.organized by the DDBMS.
ObjectObject Naming Naming
Site autonomySite autonomy – not a global naming system. – not a global naming system.
NetworkNetwork details details transparencytransparency to the user, programming to the user, programming
as simple as possible.as simple as possible.
MappingMapping end user name end user name “print names” “print names”
internal System Wide Namesinternal System Wide Names (SWN) (SWN)
USER @ USER_SITE.OBJECT_NAME @ BIRTH_SITEUSER @ USER_SITE.OBJECT_NAME @ BIRTH_SITE
e.g.e.g. BRUCE at SAN_JOSE accesses table TBRUCE at SAN_JOSE accesses table T
BRUCE @ SAN_JOSE.T @ SAN_JOSEBRUCE @ SAN_JOSE.T @ SAN_JOSE
Distributed Distributed CatalogsCatalogs
Distributed Catalog ArchitectureDistributed Catalog Architecture
Each siteEach site keeps and maintains catalogs regarding the keeps and maintains catalogs regarding the objects at the databaseobjects at the database, replicas, fragments stored at the , replicas, fragments stored at the particular particular sitesite..
The “The “birthbirth” site of each object ” site of each object keeps informationkeeps information about about where it is where it is currently storedcurrently stored..
Object located through its Object located through its SWNSWN, catalogs store access , catalogs store access paths.paths.
Search path:Search path:
local catalog local catalog birth site catalog birth site catalog indicated current site indicated current site
TransactionTransaction management management commitcommit protocols protocols
UniqueUnique sequence transaction sequence transaction numbernumber..
StartsStarts from the site it was from the site it was enteredentered SynchronousSynchronous & & asynchronousasynchronous execution. execution.
CommitCommit UNIFORMUNIFORM (all abort OR all commit) (all abort OR all commit)
Two phaseTwo phase commit protocol commit protocol CoordinatorCoordinator makes the makes the final decisionfinal decision
Other sites Other sites prepared to commitprepared to commit awaitingawaiting
LostLost commit commit messagesmessages detected by detected by time-outtime-out..
Query preparationQuery preparation
Name resolutionName resolution
AuthorizationAuthorization : Each site checks authorization on it’s own : Each site checks authorization on it’s own local datalocal data trusts the remote sites. trusts the remote sites.
GlobalGlobal compilationcompilation planplan by the by the mastermaster, access , access strategies.strategies.
Plan distributionPlan distribution, , local compilationlocal compilation of parts. of parts.
Final Final codecode generated at the generated at the mastermaster, two phase , two phase compilation.compilation.
OptimizationOptimization of access paths included of access paths included minimizationminimization of of query execution timequery execution time..
Query executionQuery execution
Code Code loaded locallyloaded locally, , parallelparallel execution execution messagesmessages for for
communication.communication.
Concurrency controlConcurrency control Distributed deadlock detectionDistributed deadlock detection by periodically checking at each by periodically checking at each
site site wait-for informationwait-for information gathered locally or from other sites. gathered locally or from other sites.
Deadlock cycle breakerDeadlock cycle breaker abort transaction. abort transaction.
Logging and recovery:Logging and recovery: Resources Resources held onlyheld only if a transaction if a transaction failsfails after entering the after entering the
second phasesecond phase of the of the commit protocolcommit protocol..
SQLSQL additions and changes additions and changes
SQL SQL extendedextended to include the to include the distributed capabilitiesdistributed capabilities..
ConclusionsConclusions
November 1981 R*November 1981 R* experimental prototype system. experimental prototype system.
Key ingredient Key ingredient autonomy of the sitesautonomy of the sites..
Distributed data authorizationDistributed data authorization, , compilationcompilation, , commitcommit etc. etc.
Based on a Based on a master – apprenticesmaster – apprentices approach, approach, two phase two phase
protocolsprotocols..
TransparentTransparent networknetwork topology, topology, data definitiondata definition and and
managementmanagement..
A promising step towards a A promising step towards a REAL DISTRIBUTED REAL DISTRIBUTED
DBMSDBMS..
THANK YOU!!THANK YOU!!
Questions??Questions??
top related