ACM Transactions on Database Systems · 1982 · 156 citations · 8 references
EngineeringComputer ArchitectureConcurrency ControlFormal VerificationData ConsistencyLocation TransparencyDistributed DatabaseData SynchronizationParallel ComputingDatabase ConsistencyData ManagementFile SystemsDistributed SystemsDistributed Database SystemsDistributed TransactionConsistency TechnologyFormal MethodsParallel ProgrammingConcurrent Data StructureSystem Software
Transactions and data consistency in distributed systems are defined, with partitioned and replicated data discussed, and the authors argue for transparent location, replica, concurrency, and failure interfaces that can be modeled as a single sequential execution across nodes. The authors abstract techniques for achieving these transparencies, using a single sequential execution model to illustrate simple implementation methods.
The concepts of transaction and of data consistency are defined for a distributed system. The cases of partitioned data, where fragments of a file are stored at multiple nodes, and replicated data, where a file is replicated at several nodes, are discussed. It is argued that the distribution and replication of data should be transparent to the programs which use the data. That is, the programming interface should provide location transparency, replica transparency, concurrency transparency, and failure transparency. Techniques for providing such transparencies are abstracted and discussed. By extending the notions of system schedule and system clock to handle multiple nodes, it is shown that a distributed system can be modeled as a single sequential execution sequence. This model is then used to discuss simple techniques for implementing the various forms of transparency.
8
Weighted voting for replicated data
David K. Gifford · 1979 · 1.3K citations · Full text
Operating systems — an advanced course
Computer-Aided Design · 1978 · 379 citations · Full text