Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
article
Free access

A weighted voting algorithm for replicated directories

Published: 01 October 1987 Publication History

Abstract

Weighted voting is used as the basis for a replication technique for directories. This technique affords arbitrarily high data availability as well as high concurrency. Efficient algorithms are presented for all of the standard directory operations. A structural property of the replicated directory that permits the construction of an efficient algorithm for deletion is proven. Simulation results are presented and the system is modeled and analyzed. The analysis agrees well with the simulation, and the space and time performance are shown to be good for all configurations of the system.

References

[1]
ALLCHIN, J. E. An architecture for reliable distributed systems. Ph.D. dissertation, Georgia Institute of Technology, Atlanta, Ca., September 1983.
[2]
ALLCmN, J. E., AND McKENDRY, M.S. Synchronization and recovery of actions. In Proceedings of the 2nd Annual Symposium on Principles of Distributed Computing (Montreal, Quebec, Canada, Aug. 17-19). ACM, New York, 1983, pp. 31-44.
[3]
ALSBERG, P. A., AND DAY, j. D. A principle for resilient sharing of distributed resources. In Proceedings of the 2nd International Conference on Software Engineering. IEEE Computer Society Press, Silver Spring, Md., Oct. 1976, pp. 562-570.
[4]
BARTL~'rr, J. A NonStopTM kernel. In Proceedings of the 8th Symposium on Operating System Principles (Pacific Grove, Calif., Dec. 14-16). ACM, New York, 198 l, pp. 22-29.
[5]
BEI~NSTEIN, P. A., AND GOODMAN, N. An algorithm for concurrency control and recovery in replicated distributed databases./ICM Trans. Database Syst. 9, 4 (Dec. 1984), 596-615.
[6]
BmMAN, K. P., SKEEN, D., EL ABBADI, A., DIETRICH, W. C., AND RAEUCHLE, T. Isis: An environment for constructing fault-tolerant distributed systems. Res. Rep. 83-552, Cornell Univ., Ithaca, N.Y., 1983.
[7]
BIRRELL, A. D., AND NELSON, J. Implementing remote procedure calls. ACM Trans. Comput. Syst. 2, l (Feb. 1984), 39-59.
[8]
COMER, D. The ubiquitous B-tree. ACM Cornput. Surv. 11, 2 (June 1979), 121-137.
[9]
DANIELS, D. S., AND SPECTOR, A.Z. An algorithm for replicated directories. Oper. Syst. Rev. 20, I (Jan. 1986), 24-43.
[10]
EL ABBADI, A., AND TOUEG, S. Availability in partitioned replicated databases. In Proceedings of the 5th .4CM SIGACT-SIGMOD Symposium on Principles of Database Systems (Cambridge, Mass., Mar. 24-26). ACM, New York, 1986, pp. 240-25 i.
[11]
EL ABBADI, A., SKEEN, D., AND CRISTIAN, F. An efficient, fault-tolerant algorithm for replicated data management. In Proceedings of the 4th ACM SIGACT-SIGMOD Symposium on Principles of Database Systems (Portland, Oreg., Mar. 25-27). ACM, New York, 1985, pp. 215-229.
[12]
GIFFORD, D. K. Weighted voting for replicated data. In Proceedings of the 7th Symposium on Operating System Principles (Pacific Grove, Calif., Dec. 10-12). ACM, New York, 1979, pp. 150-162.
[13]
GIFFORD, D.K. Information storage in a decentralized computer system. Res. Rep. CSL-81-8, Xerox Research Center, Palo Alto, Calif., March 1982.
[14]
GRAY, J.N. A transaction model. Res. Rep. RJ2895, IBM Research Laboratory, San Jose, Calif., Aug. 1980.
[15]
GRAY, J. N., MCJONES, P., BLASGEN, M., LINDSAY, B., LORIE, R., PRICE, T., PUTZOLU, S., AND TRAIGER, I. The recovery manager of the system R database manager. ACM Con,put. Surv. 13, 2 (June 1981), 223-242.
[16]
HERLIHY, M.P. Availability vs. atomicity: Concurrency control for replicated data. Res. Rep. CMU-CS-85-108, Carnegie-Mellon Univ., Pittsburgh, Pa., Feb. 1985.
[17]
HERLIHY, M.P. A quorum-consensus replication method for abstract data types. ACM Trans. Comput. Syst. 4, 1 (Feb. 1986), 32-53.
[18]
IBM CORPORATION. ACP system: Concept and facilities. GH20-1473-I edition, IBM, White Plains, New York, 1975.
[19]
KEMENY, J. G., AND SNELL, J.L. FinRe Markov Chains. Van Nostrand, New York, 1960.
[20]
KORTH, H.F. Locking primitives in a database system. 7. ACM 30, 1 (Jan. 1983), 55-79.
[21]
LINDSAY, B. G., SELINGER, P. S., GALTIERI, C., GRAY, J. N., LORIE, R. A., PRICE, T. G., PUTZOLU, F., TRAIGER, I. L., AND WADE, B. W. Notes on distributed databases. In Distributed Databases, I. W. Draffan and F. Poole, Eds. Cambridge University Press, Cambridge, England, 1980, pp. 247-284.
[22]
LISKOV, B. H., AND SCHEIFLER, R. Guardians and actions: Linguistic support for robust, distributed programs. ACM Trans. Program. Lang. Syst. 5, 3 (July 1983), 381-404.
[23]
POPEK, G., WALKER, B., CHOW, J., EDWARDS, D., KLINE, C., RUDISIN, G., AND THIEL, G. LOCUS: A network transparent, high reliability distributed system. In Proceedings of the 8th Symposium on Operating System Principles (Pacific Grove, Calif., Dec. 14-16). ACM, New York, 1981, pp. 169-177.
[24]
ROTHmE, J. B., Ca~OMAN, N., AND BERNSTEIN, P.A. The redundant update methodology of SDD-I: A system for distributed databases (the fully redundant case). Tech. Rep. CCA-77-02, Computer Corporation of America, Cambridge, Mass., 1977.
[25]
SCnWARZ, P. M. Transactions on typed objects. Ph.D. dissertation, Carnegie-Mellon Univ., Pittsburgh, Pa., Dec. 1984.
[26]
SChwArtZ, P. M., AND SPECrOR, A.Z. Synchronizing shared abstract types. ACM Trans. Comput.{ Syst. 2, 3 (Aug. 1984), 223-250.
[27]
SPEC'rOR, A. Z., ANt> SCHWARZ, P.M. Transactions: A construct for reliable distributed computing. Oper. Syst. Rev. 17, 2 (Apr. 1983), 18-35.
[28]
SPECTOR, A. Z., BUTCHER, J., DANIEL.% D. S., DUCHAMP, D. j., EPPINGER, J. L., "FINEMAN, C. E., HEODAYA, A., AND SCHWARZ, P.M. Support for distributed transactions in the TABS prototype. IEEE Trans. Softw. Eng. SE-11, 6 (June 1985), 520-530.
[29]
SPECTOR, A., DANIELS, n., DUCHAMP, n., EPPINGER, J. AND PAUSCH, R. Distributed transactions for reliable systems. In Proceedings of the 10th Symposium on Operating System Principles (Orcas island, Wash., Dec. 1--4). ACM, New York, 1985, pp. 127-146.
[30]
TRAIGER, I. L., GRAY, J., GALTIERI, C. A., ANn LINDSAY, B.G. Transactions and consistency in distributed database systems. ACM Trans. Database Syst. 7, 3 (Sept. 1982), 323-342.
[31]
WEIHL, W. E. Data-dependent concurrency control and recovery. In Proceedings of the 2nd Annual Symposium on Principles of Distributed Computing (Montreal, Quebec, Canada, Aug. 17- 19). ACM, New York, 1983, pp. 63-75.
[32]
WEIHL, W., AND LISKOV, B. Specification and implementation of resilient, atomic data types. In Symposium on Programming Language Issues in Software Systems. ACM, New York, June 1983, pp. 53-64.

Cited By

View all
  • (2014)Improving System Reliability Against Rational Attacks Under Given ResourcesIEEE Transactions on Systems, Man, and Cybernetics: Systems10.1109/TSMC.2013.226312644:4(446-456)Online publication date: Apr-2014
  • (2011)Optimal voting strategy against rational attackersProceedings of the 2011 6th International Conference on Risks and Security of Internet and Systems (CRiSIS)10.1109/CRiSIS.2011.6061841(1-8)Online publication date: 26-Sep-2011
  • (2008)TiComProceedings of the 2008 ISECS International Colloquium on Computing, Communication, Control, and Management - Volume 0210.1109/CCCM.2008.363(667-671)Online publication date: 3-Aug-2008
  • Show More Cited By

Recommendations

Reviews

Armin B. Cremers

The research reported here was done as part of the TABS (transaction-based systems) project, whose aim was to construct a distributed transaction facility that supports operations on shared data objects. A directory is defined as a shared data object that maps keys (constants from some totally ordered domain) to values and is accessed and modified with the operations insert, update, delete, and lookup. These operations execute as part of distributed transactions, which provide uniform synchronization and recovery for operations on arbitrary shared abstract data types. A replicated directory is an example of a distributed abstract data type, constructed with the goals of increased parallelism, reduced communication costs, and increased resilience in the presence of failures. However, it is semantically identical to a directory stored on a single node and accessed serially. The paper surveys the related work on replication and presents in detail a directory replication algorithm that is based on weighted voting and can be used with version numbers associated with each possible key at every replica or with transaction-consistent time stamps. This permits concurrent operations on different keys and solves certain problems in the implementation of the delete operation. Concurrency can be increased by relaxing the synchronization requirements for the directory replicas. The scheme affords arbitrarily high availability, measured in the number of node failures that a directory can tolerate while still guaranteeing that an operation can be performed. Efficient Pascal implementations of each directory operation are provided, along with performance data obtained by simulation. The latter are compared with analysis results for a mathematical model of the system. The analyses agree in showing that the space and time performance are good for all configurations. It is noted that the implementation was videotaped to demonstrate the operation of the system.

Access critical reviews of Computing literature here

Become a reviewer for Computing Reviews.

Comments

Information & Contributors

Information

Published In

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 October 1987
Published in JACM Volume 34, Issue 4

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)54
  • Downloads (Last 6 weeks)12
Reflects downloads up to 03 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2014)Improving System Reliability Against Rational Attacks Under Given ResourcesIEEE Transactions on Systems, Man, and Cybernetics: Systems10.1109/TSMC.2013.226312644:4(446-456)Online publication date: Apr-2014
  • (2011)Optimal voting strategy against rational attackersProceedings of the 2011 6th International Conference on Risks and Security of Internet and Systems (CRiSIS)10.1109/CRiSIS.2011.6061841(1-8)Online publication date: 26-Sep-2011
  • (2008)TiComProceedings of the 2008 ISECS International Colloquium on Computing, Communication, Control, and Management - Volume 0210.1109/CCCM.2008.363(667-671)Online publication date: 3-Aug-2008
  • (2005)A general stability analysis on regional and national voting schemes against noiseArtificial Intelligence10.5555/1062094.1062096163:1(47-66)Online publication date: 1-Mar-2005
  • (2005)A general stability analysis on regional and national voting schemes against noise—why is an electoral college more stable than a direct popular election?Artificial Intelligence10.1016/j.artint.2004.09.004163:1(47-66)Online publication date: Mar-2005
  • (2003)Stability Analysis of Regional and National Voting Schemes by a Continuous ModelIEEE Transactions on Knowledge and Data Engineering10.1109/TKDE.2003.120901915:4(1037-1042)Online publication date: 1-Jul-2003
  • (2003)Application-based dynamic primary views in asynchronous distributed systemsJournal of Parallel and Distributed Computing10.1016/S0743-7315(03)00016-963:4(410-433)Online publication date: 1-Apr-2003
  • (2002)An Efficient Dynamic and Distributed Cryptographic AccumulatorProceedings of the 5th International Conference on Information Security10.5555/648026.744658(372-388)Online publication date: 30-Sep-2002
  • (2002)An Efficient Dynamic and Distributed Cryptographic Accumulator*Information Security10.1007/3-540-45811-5_29(372-388)Online publication date: 5-Sep-2002
  • (2001)Improving energy saving in hard real time systems via a modified dual priority schedulingACM SIGARCH Computer Architecture News10.1145/563647.56365329:5(19-24)Online publication date: 1-Dec-2001
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Full Access

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media